以下の関数はイベント、キーシーケンス、文字をテキスト表記(textual descriptions)に変換します。これらの変換された表記は、メッセージ内に任意のテキスト文字やキーシーケンスを含める場合に有用です。なぜなら非プリント文字や空白文字はプリント文字シーケンスに変換されるからです。空白文字以外のプリント文字はその文字自身が表記になります。
この関数はsequence内の入力イベントにたいしてEmacsの標準表記を含んだ文字列をリターンする。prefixが非nil
なら、それはsequenceに前置される入力イベントシーケンスであり、リターン値にも含まれる。引数には文字列、ベクター、またはリストを指定できる。有効なイベントに関する詳細は入力イベントを参照のこと。
(key-description [?\M-3 delete]) ⇒ "M-3 <delete>"
(key-description [delete] "\M-3") ⇒ "M-3 <delete>"
以下のsingle-key-description
の例も参照のこと。
この関数はキーボード入力にたいするEmacsの標準表記としてeventを表記する文字列をリターンする。通常のプリント文字はその文字自身で表れるが、コントロール文字は‘C-’で始まる文字列、メタ文字は‘M-’で始まる文字列、スペースやタブ等は‘SPC’や‘TAB’のように変換される。ファンクションキーのシンボルは‘<…>’のように角カッコ(angle brackets)の内側に表れる。リストであるようなイベントは、そのリストのCAR内のシンボル名が角カッコの内側に表れる。
オプション引数no-anglesが非nil
なら、ファンクションキーやイベントシンボルを括る角カッコは省略される。これは角カッコを使用しない古いバージョンのEmacsとの互換性のため。
(single-key-description ?\C-x) ⇒ "C-x"
(key-description "\C-x \M-y \n \t \r \f123") ⇒ "C-x SPC M-y SPC C-j SPC TAB SPC RET SPC C-l 1 2 3"
(single-key-description 'delete) ⇒ "<delete>"
(single-key-description 'C-mouse-1) ⇒ "C-<mouse-1>"
(single-key-description 'C-mouse-1 t) ⇒ "C-mouse-1"
この関数はテキスト内に出現し得る文字にたいするEmacsの標準表記としてcharacterを記述する文字列をリターンする。これはsingle-key-description
と似ているが、引数がcharacterp
によるテスト(文字コードを参照)をパスする有効な文字コードでなければならない点が異なる。この関数は先頭のカレットによりコントロール文字の記述を生成する(Emacsがバッファー内にコントロール文字を表示する通常の方法)。修飾ビットをもつ文字にたいして、この関数はエラーをシグナルする(コントロール修飾されたASCII文字は例外であり、これらはコントロール文字として表現される)。
(text-char-description ?\C-c) ⇒ "^C"
(text-char-description ?\M-m) error→ Wrong type argument: characterp, 134217837