Next: , Previous: , Up: Input Events   [Contents][Index]


20.7.2 Function Keys

ほとんどのキーボードにはファンクションキー(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を使用できます。シンボル名のプレフィクスとしてこれらを表します:

‘A-’

アルト修飾。

‘C-’

コントロール修飾。

‘H-’

ハイパー修飾。

‘M-’

メタ修飾。

‘S-’

シフト修飾。

‘s-’

スーパー修飾。

したがって、METAを押下した場合のF3キーにたいするシンボルはM-f3になります。複雑のプレフィクスを使用する場合は、アルファベット順に記述することを推奨します。とはいえ、キーバインディングが修飾されたファンクションキーを探す際、引数の順序は関係ありません。