ライブラリucs-cmds.el
が役立ちます。
これは、Unicode文字を挿入する一連のコマンドucsc-make-commands
をすばやく作成するためのマクロを提供します。正規表現を指定すると、すべてのUnicode文字名(内ucs-names
)と照合されます。名前が一致する文字ごとに挿入コマンドが作成されます。(コマンド名は基本的に文字名と同じです-以下を参照してください。)
コマンド作成の例:
(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\\)")
これはドキュメント文字列です:
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.
作成したコマンドを体系的な方法でキーにバインドしたい場合は、そのコードに基づいてマクロを簡単に作成し、必要なコマンドを作成してバインドすることができますucsc-make-commands
。マクロucsc-make-commands
は、すべてのUnicode車を反復処理し、名前がREGEXP
引数と一致するコマンドを作成します。
イテレーション中、キャラクター名とそのコードポイントにアクセスできます。コードポイントまたは文字名のキーへの便利な通常のマッピングを理解し、マクロdefine-key
はコマンドdefun
s に加えて適切なsを追加できます。
ライブラリは、ucsc-insert
vanillaコマンドを置き換えることができる
コマンドも提供しますinsert-char
。の動作とコードは、負の接頭引数を使用したときに何が起こるかucsc-insert
をinsert-char
除いて、それらと同じです
。
prefix-arg値が正であるかのように機能します。したがって、値-3は、3と同様に、文字の3つのコピーを挿入します。
文字を挿入するだけでなく、後でその文字を挿入するために使用できるコマンドを定義します。そのコマンドで前置引数を使用して、指定した文字の複数のコピーを挿入できます。
これにより、特定のUnicode文字を挿入するためにカスタマイズされたコマンドが提供されます。次に、コマンドをキーシーケンスにバインドして、キーボードにUnicode文字を効果的に追加できます。
insert-char
何かを行うときは常に(負の接頭引数に対しては何もしません)、ucsc-insert
同じことを行います。このため、あなたはバインドできるucsc-insert
までC-x 8 RET
の代替としてinsert-char
:
(define-key global-map [remap insert-char] 'ucsc-insert)
特定のUnicode文字を挿入するためにそのようなコマンドが少しだけ必要な場合は、を使用ucsc-insert
してそれらを定義すると十分便利です。あなたがそのようなコマンドをたくさん必要とするなら、マクロucsc-make-commands
はあなたの友達です。