Next: , Up: EmacsとMS-DOS   [Contents][Index]


H.12.1 MS-DOSでのキーボードの使用方法

EmacsでDELと呼ばれるキー(ほとんどのワークステーションでそれが指定されているのが由来です)は、PCではBS(バックスペース)として知られています。PC固有の端末の初期化で、BSDELとして動作するよう再マップされるのは、これが理由です。同じ理由により、DeleteキーはC-dとして動作するように、再マップされます。

MS-DOSにたいしてビルドされたEmacsは、C-BreakC-gのような、中止(quit)文字として認識します。新たな入力にたいして準備ができるまで、C-gをタイプしてもEmacsが検知できないのは、これが理由です。そのため、実行中のコマンドを停止させるために、C-gを使用することはできません (中止と中断を参照してください)。 対照的にC-Breakは、(他のシステムでのC-gのように)、タイプされるとすぐに検知されるので、実行中のコマンドを停止したり、緊急エスケープのために使用されます (緊急エスケープを参照してください)。

PCのキーボードマップは、左AltキーをMetaキーとして使用します。SUPERキーとHyperキーをエミュレートするために、2つの選択肢があります。変数dos-hyper-keyおよびdos-super-keyに、1または2をセットすることにより、右Ctrlキーと右Altキーのどちらかを選択します。dos-super-keydos-hyper-keyがどちらも1以外の場合、デフォルトにより右AltキーもMetaキーにマップされます。しかしMSーDOSの国際化キーボードサポートプログラムKEYB.COMがインストールされている場合、非US配列のキーボードでは右Alt~@のような文字を入力するために使用されるので、Emacsは右AltMetaにマップしません。この場合、左AltキーだけをMetaキーとして使用することになるでしょう。

変数dos-keypad-modeは、テンキーにより返されるキーコードを制御するフラグ変数です。以下の行を_emacsファイルに記述して、テンキーのENTERキーを、C-jのように定義することもできます:

;; テンキーのENTERキーをC-jとして動作させる
(keymap-set function-key-map "<kp-enter>" "C-j")