Wie schreibe ich ein Unicode-Zeichen nach seiner Nummer in Emacs?

18

Wie man ein Unicode-Zeichen anhand seiner Nummer eingibt, z. 0x2E3B für Unicode-Zeichen U+2E3B (THREE-EM DASH) in Emacs?

qazwsx
quelle

Antworten:

19

Geben Sie in Emacs 23 die Tastenkombination Strg + X 8 und anschließend die Nummer ein, gefolgt von der Eingabetaste. Das habe ich gelernt von Emacs und Unicode-Tipps , das auch andere Methoden beschreibt (Strg + X 8 Enter kann auch von Unicode-Namen gefolgt werden).

Beachten Sie, dass U + 2E38 wahrscheinlich nur angezeigt wird, wenn Sie Symbola oder Everson Mono installiert und eine davon als von Emacs zu verwendende Schriftart definiert haben. Möglicherweise gibt es andere Schriftarten, die das Zeichen enthalten, aber die Unterstützungsseite für die Schriftart fileformat.info erwähnt nur diese beiden.

Jukka K. Korpela
quelle
⁺¹ für den Link: Aus irgendeinem Grund musste ich Zeichen mit einem Dezimalwert eingeben und wollte diese nicht alle hexadezimal neu berechnen. (Ich habe eine Ausgabe von Visual Studio erhalten, die aus seltsamen Gründen eine Dezimalnotation verwendet.) In dem Link wird der Weg genannt.
Hi-Angel
Diese Methode scheint nicht zu funktionieren, wenn Sie das Zeichen in den Minipuffer eingeben müssen (mein Ziel ist es, ein globales Ersetzen durchzuführen). Ich werde "versucht, den Minibuffer im Minibuffer zu verwenden". Die verlinkte Seite scheint diesen Fall nicht anzusprechen ...
Silvio Levy
4

Die folgende Methode (gefunden bei http://www.emacswiki.org/emacs/QuotedInsert ) funktioniert auch dann, wenn die C-x 8-Methode nicht funktioniert (z. B. um ein Zeichen in den Minipuffer einzufügen). Wenn Sie den Hex-Code kennen, setzen Sie zunächst read-quoted-char-radix auf 16. Sie können beispielsweise Folgendes eingeben (setq read-quoted-char-radix 16) platziere den Punkt nach den rechten Klammern und drücke C-x C-e. Wenn Sie stattdessen den Dezimalwert kennen, verwenden Sie 10 anstelle von 16. Wenn Sie den Oktalwert kennen, können Sie diesen Schritt überspringen.

Um das Zeichen einzufügen, geben Sie einfach C-q gefolgt von der Zahl ein. (Jedes nicht-numerische Zeichen beendet die Nummer. Wenn das Pech hat, muss dem Zeichen sofort eine Ziffer folgen, die Nummer mit einem Leerzeichen beenden und das Leerzeichen löschen, bevor Sie fortfahren.)

Silvio Levy
quelle