Qu’est-ce qu’une espace insécable ? Comment l’insérer sous Linux, Open Office ou en HTML ?

Si vous avez déjà lu quelque chose sur les règles typographiques françaises, vous savez qu’il faut insérer une espace avant les signes de ponctuation doubles ( ! ? ; : ) et après d’autres caractères, comme les guillemets français : « ».

Le souci, c’est que dans la pratique, il arrive qu’un mot ou un caractère revienne à la ligne quand il est précédé par une espace, ce qui ne fait pas très « beau » (en plus d’être incompatible avec les règles typographiques).

Par exemple, supposons qu’on soit limité à 20 caractères par ligne et que la phrase « Oui, Salut le monde ! » se trouve dans une seule et même ligne :

--------------------
Oui, Salut le monde
!
--------------------

Le point d’exclamation a été automatiquement mis dans la deuxième ligne alors que « monde » est resté dans la première. Le mieux aurait été d’avoir ce résultat (automatiquement, sans faire descendre « monde » manuellement !) :

--------------------
Oui, Salut le
monde !
--------------------

Même chose pour « Mac OS X » :

--------------------
La pub de l'OS Mac
OS X est toute
blanche !
--------------------

Il aurait été préférable d’avoir un « Mac OS X » complet dans la même ligne (ou un Mac OS X qui descendrait entièrement à la ligne suivante, s’il n’y avait pas assez de place pour qu’il tienne dans la première), comme ceci :

--------------------
La pub de l'OS
Mac OS X est toute
blanche !
--------------------

La solution à cela sera d’utiliser ce qu’on appelle une espace insécable. C’est une espace comme les autres, sauf qu’elle empêche le retour à la ligne quand elle est mise entre deux mots (ou entre un mot et un signe, etc.).

Comment insérer une espace insécable ?

En général, vous pouvez l’insérer en appuyant simultanément sur les touches Ctrl et Espace, sous GNU/Linux.

Sous OpenOffice.org Writer, vous remarquerez que ces espaces sont en gris :

espace insecable open office Qu’est ce qu’une espace insécable ? Comment l’insérer sous Linux, Open Office ou en HTML ?

Si vous développez vos sites en HTML, vous pouvez insérer une espace insécable avec le code (non-breaking space, pour les curieux icon smile Qu’est ce qu’une espace insécable ? Comment l’insérer sous Linux, Open Office ou en HTML ? ).

Comment désactiver l’espace insécable ?

Pourquoi ?

Il se pourrait que le raccourci clavier permettant d’entrer cette espace soit plus une contrainte qu’un avantage (l’espace est mal interprétée par certains langages de programmation, shells, etc.).

En ce qui me concerne, malgré cela, je n’ai pas désactivé ce raccourci clavier, j’ai préféré faire attention ! Mais à vous de choisir ce qui vous convient le mieux !

Un exemple concret ?

Dans le passé, j’avais souhaité lancer cette commande :

$ cat /var/log/messages | grep kernel
grep : commande introuvable

Pourtant, grep existait bien ! Cette erreur venait du fait qu’une espace insécable avait été insérée après le « | » (pipe), ce qui n’avait pas été interprété comme une vraie espace par mon shell. Pourquoi, me demandez-vous ? Car d’ALT-GR a été pressée par erreur avec la touche Espace (« par erreur » car ALT-GR a été utilisée pour entrer « | » et n’a pas été lâchée avant la pression de la touche Espace !).

Comment désactiver le raccourci de cette espace sous GNU/Linux (serveur X) ?

Ouvrez le fichier /home/<votreutilisateur>/.Xmodmap et mettez-y :

keycode 65 = space space space NoSymbol space

Après cela, lancez la commande suivante pour appliquer les changements :

xmodmap $HOME/.Xmodmap
Vus : 1112
Publié par Asher256 : 51