Habituellement, après avoir inséré des signes de ponctuation comme .
,
:
je fais un espace avant d'insérer le caractère suivant. Est-il possible qu'Emacs fasse automatiquement ce comportement? Par exemple, l'insertion de quelque chose comme cela revient .x
à taper . x
où x
est un caractère arbitraire (sauf pour certains cas particuliers exclus par l'utilisateur, par exemple le cas où x
est un space
lui-même).
Parfois, cela peut aider à accélérer la frappe.
Réponses:
Un opérateur intelligent semble prometteur, mais je ne l'ai pas essayé, je ne peux donc pas en parler. Une solution préconfigurée serait idéale, mais si aucune n'est suffisante, il serait très facile d'encapsuler cette fonctionnalité et de l'encapsuler dans un mode mineur.
Voici mon tour:
Vous pouvez simplement l'ajouter à votre init et l'activer automatiquement quand vous le souhaitez
Chaque fois que vous insérez un caractère, la fonction
auto-punc-maybe-do
s'exécute, lisez la docstring pour vous assurer que c'est le comportement que vous souhaitez. Fondamentalement, si vous tapez la ponctuation, puis tout ce qui n'est pas de la ponctuation ou des espaces, un espace sera inséré automatiquement.la source
Vous pourriez être intéressé par l'opérateur électrique , c'est un mode mineur assez général pour ajouter un espacement autour des opérateurs (principalement pour les modes de programmation, mais il fonctionne également dans les modes texte).
Cependant, il ne regarde pas ce que vous avez tapé après l'opérateur, il ne peut donc pas gérer la partie "ajouter un espace uniquement si je n'en ai pas déjà tapé une".
la source