次: Mouse Events, 前: Keyboard Events, 上: Input Events
ほとんどのキーボードには、ファンクションキー(function key)、
つまり、文字ではない名前や記号のキーがあります。
Emacs Lispでは、ファンクションキーはシンボルで表現されます。
シンボルの(小文字の)名前がファンクションキーのラベルです。
たとえば、<F1>というラベルのキーを押すと、
入力ストリームにはシンボルf1が置かれます。
ファンクションキーイベントのイベント型は、イベントシンボルそれ自身です。 See Classifying Events。
ファンクションキーに対するシンボル命名慣習の特例を以下に示します。
backspace, tab, newline, return, deleteASCIIでは、C-iと<TAB>は同じ文字である。
これらを区別できる端末では、前者を整数9、後者をシンボルtabと
表現することで、EmacsはLispプログラムに区別を伝える。
ほとんどの場面では、これら2つを区別しても有用ではない。
そのため、通常、function-key-map(see Translating Input)は、
tabを9に対応付けるようには設定してある。
したがって、文字コード9(文字C-i)に対するキーバインディングは
tabにも適用される。
この種の他のシンボルについても同様である。
関数read-charも同様にこれらのイベントを文字に変換する。
ASCIIでは、<BS>は実際にはC-hである。
しかし、backspaceは文字コード127(<DEL>)に変換され、
文字コード8(<BS>)には変換されない。
ほとんどのユーザーはこれを好む。
left, up, right, downkp-add, kp-decimal, kp-divide, ...kp-0, kp-1, ...kp-f1, kp-f2, kp-f3, kp-f4kp-home, kp-left, kp-up, kp-right, kp-downhome、left、...のキーに変換する。
kp-prior, kp-next, kp-end, kp-begin, kp-insert, kp-deleteファンクションキーにも<ALT>、<CTRL>、<HYPER>、 <META>、<SHIFT>、<SUPER>の修飾キーを使えます。 それらを表現するには、シンボル名に接頭辞を付けます。
したがって、<META>を押し下げた<F3>キーのシンボルはM-f3です。
複数の接頭辞を使うときには、アルファベット順に書くことを勧めますが、
キーバインディングの探索関数や修飾関数の引数では関係ありません。