Vous dites: Il y a un sous-ensemble relativement petit de caractères Unicode (je suppose 10-20) que j'insère tout le temps.
Dans ce cas, comme @Tobias l'a indiqué, vous pouvez simplement lier, pour chacun d'eux, une simple séquence de touches à (a) une commande qui insère ce caractère ou (b) une chaîne de caractères unique avec ce caractère (cela agit comme une macro clavier, pour insérer le caractère).
La bibliothèque ucs-cmds.el
peut vous aider à définir de telles commandes. Les commandes résultantes ont les mêmes noms que les caractères. Vous pouvez utiliser une macro ucsc-make-commands
pour définir un ensemble complet de commandes qui insèrent un caractère d'un certain type.
Par exemple, vous pouvez mettre ceci dans votre fichier init pour définir des commandes qui insèrent tous les symboles mathématiques Unicode:
(require 'ucs-cmds) ; Load the library
(ucsc-make-commands "^math") ; Use the macro to create commands
Cela vous donne des commandes dont les noms sont les mêmes que les caractères mathématiques. Liez n'importe lequel d'entre eux que vous utilisez beaucoup à des touches faciles à utiliser. Par exemple:
(global-set-key (kbd "C-c S") 'mathematical-bold-capital-sigma)
(Ou liez une clé à une telle commande uniquement en mode Tex, en utilisant define-key
avec son clavier.)
Avec aussi simple que cela, (ucsc-make-commands "^math")
vous disposez de toutes les commandes d'insertion de caractères répertoriées ci-dessous.
Il existe également d'autres caractères Unicode, dont les noms ne commencent pas par math
mais qui sont utilisés en mathématiques - par exemple, caractère PARTIAL DIFFERENTIAL
. Vous pouvez facilement créer des commandes qui insèrent également l'un de ces caractères. (Et notez que les caractères dont les noms commencent par math
pourraient bien nécessiter l'utilisation d'une police spéciale - de nombreuses polices ne les prennent pas en charge.)
Vous pouvez bien sûr utiliser une expression régulière plus stricte que ^math
si vous souhaitez définir uniquement des caractères correspondant à un tel modèle. Par exemple, cela définit les commandes pour tous les caractères différentiels partiels:
(ucsc-make-commands "^math.*partial differential")
Cela vous donne ces commandes:
mathematical-bold-italic-partial-differential
mathematical-bold-partial-differential
mathematical-italic-partial-differential
mathematical-sans-serif-bold-italic-partial-differential
mathematical-sans-serif-bold-partial-differential
Notez que les noms de caractères Unicode séparent les mots par des espaces et que les noms sont en majuscules. Les commandes d'insertion correspondantes utilisent des tirets au lieu d'espaces et des minuscules au lieu de majuscules.
Un avantage d'avoir des commandes nommées d'après les caractères qu'ils insèrent, au lieu, disons, de simplement lier des clés aux chaînes singleton des caractères, est que vous pouvez utiliser M-x
pour entrer des caractères que vous utilisez moins souvent, par nom en utilisant la complétion. Au lieu de compléter par rapport à l'ensemble complet des noms de caractères Unicode, vous complétez par les noms des commandes d'insertion de caractères que vous avez définies.
Ce sont les commandes qui insèrent des caractères dont les noms commencent par math
. C'est ce que vous obtenez en évaluant (ucsc-make-commands "^math")
.
mathematical-bold-capital-a
mathematical-bold-capital-alpha
mathematical-bold-capital-b
mathematical-bold-capital-beta
mathematical-bold-capital-c
mathematical-bold-capital-chi
mathematical-bold-capital-d
mathematical-bold-capital-delta
...
mathematical-bold-digit-eight
mathematical-bold-digit-five
mathematical-bold-digit-four
...
mathematical-bold-epsilon-symbol
mathematical-bold-fraktur-capital-a
mathematical-bold-fraktur-capital-b
...
mathematical-bold-fraktur-small-a
mathematical-bold-fraktur-small-b
...
mathematical-bold-italic-capital-a
mathematical-bold-italic-capital-alpha
mathematical-bold-italic-capital-b
mathematical-bold-italic-capital-beta
...
mathematical-bold-italic-nabla
mathematical-bold-italic-partial-differential
mathematical-bold-italic-phi-symbol
mathematical-bold-italic-pi-symbol
mathematical-bold-italic-rho-symbol
mathematical-bold-italic-small-a
mathematical-bold-italic-small-alpha
mathematical-bold-italic-small-b
mathematical-bold-italic-small-beta
...
mathematical-bold-nabla
mathematical-bold-partial-differential
mathematical-bold-phi-symbol
mathematical-bold-pi-symbol
mathematical-bold-rho-symbol
mathematical-bold-script-capital-a
mathematical-bold-script-capital-b
...
mathematical-bold-script-small-a
mathematical-bold-script-small-b
...
mathematical-bold-small-a
mathematical-bold-small-alpha
mathematical-bold-small-b
mathematical-bold-small-beta
...
mathematical-double-struck-capital-a
mathematical-double-struck-capital-b
...
mathematical-double-struck-digit-eight
mathematical-double-struck-digit-five
mathematical-double-struck-digit-four
mathematical-double-struck-digit-nine
mathematical-double-struck-digit-one
mathematical-double-struck-digit-seven
mathematical-double-struck-digit-six
mathematical-double-struck-digit-three
mathematical-double-struck-digit-two
mathematical-double-struck-digit-zero
mathematical-double-struck-small-a
mathematical-double-struck-small-b
...
mathematical-falling-diagonal
mathematical-fraktur-capital-a
mathematical-fraktur-capital-b
...
mathematical-fraktur-small-a
mathematical-fraktur-small-b
...
mathematical-italic-capital-a
mathematical-italic-capital-alpha
mathematical-italic-capital-b
mathematical-italic-capital-beta
...
mathematical-italic-nabla
mathematical-italic-partial-differential
mathematical-italic-phi-symbol
mathematical-italic-pi-symbol
mathematical-italic-rho-symbol
mathematical-italic-small-a
mathematical-italic-small-alpha
...
mathematical-italic-small-dotless-i
mathematical-italic-small-dotless-j
mathematical-italic-small-e
mathematical-italic-small-epsilon
...
mathematical-italic-small-final-sigma
...
mathematical-left-angle-bracket
mathematical-left-double-angle-bracket
mathematical-left-flattened-parenthesis
mathematical-left-white-square-bracket
mathematical-left-white-tortoise-shell-bracket
mathematical-monospace-capital-a
mathematical-monospace-capital-b
...
mathematical-monospace-digit-eight
mathematical-monospace-digit-five
mathematical-monospace-digit-four
...
mathematical-monospace-small-a
mathematical-monospace-small-b
...
mathematical-right-angle-bracket
mathematical-right-double-angle-bracket
mathematical-right-flattened-parenthesis
mathematical-right-white-square-bracket
mathematical-right-white-tortoise-shell-bracket
mathematical-rising-diagonal
mathematical-sans-serif-bold-capital-a
mathematical-sans-serif-bold-capital-alpha
mathematical-sans-serif-bold-capital-b
mathematical-sans-serif-bold-capital-beta
...
mathematical-sans-serif-bold-digit-eight
mathematical-sans-serif-bold-digit-five
mathematical-sans-serif-bold-digit-four
...
mathematical-sans-serif-bold-italic-capital-a
mathematical-sans-serif-bold-italic-capital-alpha
mathematical-sans-serif-bold-italic-capital-b
mathematical-sans-serif-bold-italic-capital-beta
...
mathematical-sans-serif-bold-italic-nabla
mathematical-sans-serif-bold-italic-partial-differential
...
mathematical-sans-serif-bold-italic-small-a
mathematical-sans-serif-bold-italic-small-alpha
mathematical-sans-serif-bold-italic-small-b
mathematical-sans-serif-bold-italic-small-beta
...
mathematical-sans-serif-bold-italic-small-final-sigma
...
mathematical-sans-serif-bold-nabla
mathematical-sans-serif-bold-partial-differential
...
mathematical-sans-serif-bold-small-a
mathematical-sans-serif-bold-small-alpha
mathematical-sans-serif-bold-small-b
mathematical-sans-serif-bold-small-beta
...
mathematical-sans-serif-bold-small-final-sigma
...
mathematical-sans-serif-capital-a
mathematical-sans-serif-capital-b
...
mathematical-sans-serif-digit-eight
mathematical-sans-serif-digit-five
mathematical-sans-serif-digit-four
...
mathematical-sans-serif-italic-capital-a
mathematical-sans-serif-italic-capital-b
...
mathematical-sans-serif-italic-small-a
mathematical-sans-serif-italic-small-b
...
mathematical-sans-serif-small-a
mathematical-sans-serif-small-b
...
mathematical-script-capital-a
...
mathematical-script-small-a
mathematical-script-small-b
...