Bibliothek ucs-cmds.el
kann helfen.
Es bietet ein Makro ucsc-make-commands
zum schnellen Erstellen einer Reihe von Befehlen zum Einfügen von Unicode-Zeichen. Sie geben einen regulären Ausdruck an, der mit allen Unicode-Zeichennamen (in ucs-names
) abgeglichen wird . Für jedes Zeichen, dessen Name übereinstimmt, wird ein Einfügebefehl erstellt. (Die Befehlsnamen sind im Wesentlichen dieselben wie die Char-Namen - siehe unten.)
Beispiel für Befehlskreationen:
(ucsc-make-commands "^math") ; Math symbols
(ucsc-make-commands "latin") ; Latin alphabet characters
(ucsc-make-commands "arabic")
(ucsc-make-commands "^cjk") ; Chinese, Japanese, Korean characters
(ucsc-make-commands "^box drawings ")
(ucsc-make-commands "^greek [a-z]+ letter") ; Greek characters
(ucsc-make-commands "\\(^hangul\\|^circled hangul\\|^parenthesized hangul\\)")
Dies ist die Dokumentzeichenfolge:
ucsc-make-commands is a Lisp macro in `ucs-cmds.el'.
(ucsc-make-commands REGEXP)
Create commands to insert Unicode characters whose names match REGEXP.
Letter case is ignored for matching.
The set of char names used is taken from `ucs-names'. There are
*many* such chars, so consider using a tighter regexp to limit the
number of commands created.
The commands created have the same names as the chars they insert,
except that `SPC' chars in the character names are replaced by
hyphens (`-'), and the command names are lowercase.
Wenn Sie die von Ihnen erstellten Befehle systematisch an Schlüssel binden ucsc-make-commands
möchten , können Sie auf einfache Weise ein Makro erstellen, das auf dem Code basiert, mit dem die gewünschten Befehle erstellt und gebunden werden. Das Makro ucsc-make-commands
durchläuft nur alle Unicode-Fahrzeuge und erstellt Befehle für diejenigen, deren Namen mit dem REGEXP
Argument übereinstimmen .
Während einer Iteration haben Sie Zugriff auf den Zeichennamen und dessen Codepunkt. Finden Sie eine bequeme regelmäßige Zuordnung von Codepunkten oder Zeichennamen zu Schlüsseln heraus, und Ihr Makro kann zusätzlich zu den Befehlen define-key
s die entsprechenden s hinzufügen defun
.
Die Bibliothek bietet auch einen Befehl, der ucsc-insert
den Vanilla-Befehl ersetzen kann
insert-char
. Das Verhalten und der Code von ucsc-insert
sind identisch mit denen von,
insert-char
außer was passiert, wenn Sie ein negatives Präfixargument verwenden:
Es verhält sich so, als ob der Präfix-Arg-Wert positiv wäre. Ein Wert von -3 fügt also drei Kopien des Zeichens ein, genau wie 3.
Zusätzlich zum Einfügen des Zeichens wird ein Befehl definiert, mit dem Sie das Zeichen anschließend einfügen können. Mit diesem Befehl können Sie ein Präfixargument verwenden, um mehrere Kopien des angegebenen Zeichens einzufügen.
Dies gibt Ihnen einen Befehl, der maßgeschneidert ist, um ein bestimmtes Unicode-Zeichen einzufügen. Anschließend können Sie den Befehl an eine Tastenfolge binden und Ihrer Tastatur effektiv Unicode-Zeichen hinzufügen.
Wann immer insert-char
etwas ucsc-insert
getan wird (es tut nichts für ein negatives Präfix arg), tut es dasselbe. Aus diesem Grund können Sie binden ucsc-insert
an C-x 8 RET
als Ersatz für insert-char
:
(define-key global-map [remap insert-char] 'ucsc-insert)
Wenn Sie nur wenige solcher Befehle zum Einfügen bestimmter Unicode-Zeichen benötigen, ist die Verwendung ucsc-insert
zum Definieren dieser Befehle ausreichend praktisch. Wenn Sie viele solcher Befehle benötigen, ucsc-make-commands
ist das Makro Ihr Freund.