ほとんどのキーボードにはファンクションキー――文字ではない名称や記号を持つキー――も搭載されています。ファンクションキーはEmacs
Lispではシンボルとして表現され、そのシンボル名がファンクションキーのラベル(小文字)となります。例えば、F1というラベルのキーを押すと、シンボルf1で表される入力イベントが生成されます。
ファンクションキーイベントのイベントタイプは、イベントシンボルそのものです。イベントの分類を参照してください。
ファンクションキーの記号命名規則における、いくつかの特殊なケースを以下に挙げます。
backspace, tab, newline, return, deleteこれらのキーは、ほとんどのキーボードに専用キーが割り当てられている一般的なASCII制御文字に対応しています。
ASCIIでは、C-iとTABは同じ文字です。端末がこれらを区別できる場合、Emacsは前者を整数9として、後者をシンボルtabとして表現することで、その区別をLispプログラムに伝えます。
多くの場合、両者を区別しても意味はありません。そのため、通常は local-function-key-map(イベントシーケンス翻訳用のキーマップを参照)を用いて 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 を使用できます。表記方法は、シンボル名にプレフィックスを付ける形式です:
Alt修飾キー。
制御修飾子。
ハイパー修飾語。
メタ修飾子。
シフト修飾子。
スーパー修飾子。
したがって、META を押したままのキー F3 のシンボルは
M-f3
となります。複数のプレフィックスを使用する場合は、アルファベット順に記述することを推奨しますが、キーバインドの参照および変更関数への引数においては、その順序は問いません。