Insertion manuelle d'espace fine insécable
Suite à ma [précédente question](http://texnique.fr/osqa/questions/1781/insertion-automatique-de-lespace-fine-insecable-et-guillemets) relative à l'insertion automatique de l'espace fine insécable avec des guillemets, je tombe sur un nouveau problème.
Pour insérer une citation dans une citation, j'utilise, à la mode suisse, des guillemets simples : « ‹ … › ». Je constate que LaTeX n'insère pas automatiquement des espaces fines insécables ; ces caractères étant rares, cela ne m'étonne pas. Du coup je les insère à la main, par un copier-coller depuis [wikipédia](https://fr.wikipedia.org/wiki/Espace_fine_ins%C3%A9cable) car l'ordinateur que j'utilise ne possède pas ce caractère (connu chez Unicode sous le doux sobriquet de U+202F) :
\documentclass[12pt, francais, a4paper, BCOR = 0pt, DIV = 15]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[oldstyle, largesmallcaps, light]{kpfonts}
\usepackage{microtype}
\usepackage{babel}
\begin{document}
Blabla : « blabla ‹ blabla › blabla » blibli: hem!
\end{document}
Et là, catastrophe, ça ne compile pas. Ou plutôt si :
! Package ucs Error: Unknown Unicode character 8239 = U+202F,
(ucs) possibly declared in uni-32.def.
(ucs) Type H to see if it is available with options.
See the ucs package documentation for explanation.
Type H <return> for immediate help.
...
l.57 ‹
Je tape `H`, un retour chariot et j'obtiens :
? H
Unicode character 8239 = U+202F:
NARROW NO-BREAK SPACE
Character available with following options:
autogenerated.
Enter I!<RET> to define the glyph.
Je tape donc `I!`, un retour chariot et j'obtiens :
? I!
Please enter definition for unicode character 8239
\definition=
Je colle donc là le glyphe copié (` `)et le (` `) et la compilation continue, avec ce message préliminaire :
Tip:
(ucs) You may include
(ucs) \DeclareUnicodeCharacter {8239}{}
(ucs) into your document source.
... et je constate que la compilation s'est en fait arrêtée à ce caractère !
Quant à inclure `\DeclareUnicodeCharacter {8239}{ }` dans le code-source, cela ne fonctionne pas : la compilation s'arrête.
! TeX capacity exceeded, sorry [parameter stack size=10000].
\uc@checkopt@error #1#2#3#4#5->
\ifx \@nil #5\uc@errordrawopt {#1}{#2, #3}{#4...
l.57 ‹
Texte à composer
! ==> Fatal error occurred, no output PDF file produced!
Me voici donc arrêté. Pourquoi diantre LaTeX est-il capable de composer automatiquement des espaces fines insécables mais pas de les compiler copiées-collées ?
D'autre part, je constate que les typographies francophones supportées par l'extension `babel` sont `french, francais, canadien, acadian` (et `frenchle`). Je m'étonne de ne pas y voir listés les français de Belgique et de Suisse, pays à l'imprimerie de longue tradition. Ç'aurait été tellement plus simple de déclarer `\usepackage[suisse, main = francais]{babel}` et d'utiliser `\begin{otherlanguage}{suisse}` pour obtenir les guillemets de deuxième niveau désirés !
Enfin, je dois me tromper, mais je n'ai pas été foutu d'ouvrir la doc de `frenchb` autrement qu'en… anglais ! Existe-t-elle en français ? De plus, le lien renvoyé par le moteur de recherche de la `CTAN` est [rompu](http://ctan.org/pkg/frenchb) !