Next: Mouse Events, Previous: Keyboard Events, Up: Input Events [Contents][Index]
ほとんどのキーボードにはファンクションキー(function
keys)があります。これは名前、または文字以外のシンボルをもつキーです。Emacs
Lispではファンクションキーはシンボルとして表現されます。そのシンボル名はファンクションキーのラベルの小文字です。たとえばF1とラベルされたキーを押下すると、シンボルf1
で表される入力イベントが生成されます。
ファンクションキーのイベント型は、イベントシンボルそれ自身です。Classifying Eventsを参照してください。
ファンクションキーにたいするシンボルネーミングの慣習には、以下のような特別なケースがいくつかあります:
backspace
、tab
、newline
、return
、delete
これらのキーは、ほとんどのキーボードにおいて特別にキーをもつ、一般的なASCIIコントロール文字に対応する。
ASCIIではC-iとTABは同じ文字である。端末がこれらを区別できる場合、Emacsは前者を整数の9、後者をシンボルtab
で表現することにより、Lispプログラムにこれらの違いを伝える。
ほとんどの場合、これら2つを区別するのは役に立たない。そのためlocal-function-key-map
(Translation Keymapsを参照)はtab
を9にマップするようセットアップされている。したがって文字コード9(文字C-i)へのキーバインディングはtab
にも適用される。このグループ内の他のシンボルも同様である。関数read-char
が、これらのイベントを文字に変換する場合も同様である。
ASCIIでは、BSは実際はC-hである。しかしbackspace
は文字コード8(BS)ではなく、文字コード127(DEL)に変換される。ほとんどのユーザーにとって、これは好ましいだろう。
left
、up
、right
、down
矢印カーソルキー
kp-add
、kp-decimal
、kp-divide
、…キーパッドキー(標準的なキーボードにおいては右側にある)。
kp-0
、kp-1
、…キーパッド数字キー。
kp-f1
、kp-f2
、kp-f3
、kp-f4
キーパッドPFキー。
kp-home
、kp-left
、kp-up
、kp-right
、kp-down
キーパッド矢印キー。Emacsは通常これらを非キーパッドのキーhome
、left
、…に変換する。
kp-prior
、kp-next
、kp-end
、kp-begin
、kp-insert
、kp-delete
通常は他の箇所にあるキーと重複するキーパッド追加キー。Emacsは通常これらを同じような名前の非キーパッドキーに変換する。
ファンクションキーにたいしても修飾キーALT、CTRL、HYPER、META、SHIFT、SUPERを使用できます。シンボル名のプレフィクスとしてこれらを表します:
アルト修飾。
コントロール修飾。
ハイパー修飾。
メタ修飾。
シフト修飾。
スーパー修飾。
したがって、METAを押下した場合のF3キーにたいするシンボルはM-f3
になります。複雑のプレフィクスを使用する場合は、アルファベット順に記述することを推奨します。とはいえ、キーバインディングが修飾されたファンクションキーを探す際、引数の順序は関係ありません。