追加読書

追加読書

~によるとこの端末エミュレータと対応するキーコードテーブル、XTermの新しいバージョンでは、F1、F2、F3 ...からF63までのファンクションキーを認識できます。ほとんどのキーボードには、F1〜F12の範囲の物理ファンクションキーのみがあります。追加の鍵は何ですか?物理キーまたはマウス押下からこれらのファンクションキー番号へのいくつかの(半)標準マッピングはありますか?そうでない場合、どのようにトリガーされますか?

私の考えでは、伝統的なターミナル用語で、矢印キー、home / endなどを含むすべての特殊キーをファンクションキーと呼ぶようです(一方、PCで育った人はF1..F12をファンクションキーとしてのみ考えます)キー)。ただし、XTermはこれらの名前付きキーを個別に説明します(たとえば、kUPこの表の上矢印キー)。

ベストアンサー1

DEC VTはファンクションキーとさまざまなカーソルと編集キーを表し、制御シーケンスはDECFNKと呼ばれ、CSIの後に1つまたは2つのパラメータが続きます~。最初のパラメータはファンクションキー番号です。 2番目のパラメータはアクティブな修飾キーの状態を示します。

DECFNKの場合、ファンクションキーは最大20個まで可能です。ファンクションキー1〜20のDECFNKコードは、明確に定義され文書化されています。結局のところ、LKキーボードには実際に20のファンクションキーがあります。 (機能キーが複数あっても通常いいえ、できます。潜在的にどちらも DECFNK シーケンスを生成し、そのシーケンスは DEC doco にあります。 )これはDEC VT420用のLK401キーボードです。

LK401キーボード

表に示すように、元のDECFNKシーケンスを生成するシミュレータは、これら20個のキーに対してDECFNK 11からDECFNK 34まで放出します。 (一部のDECFNK番号はスキップされました。興味深いことに、スキップされた番号はキーボードのファンクションキー行のキーグループ間の物理スペースに対応します。)

状況が複雑になったのは、PCとXENIXの導入でした。 IBM PC(特にPC 3270)の世界には、F型キーボードに24のファンクションキーがあります。 PC/ATの高級キーボードには12個のファンクションキーがあり、そのうち半分しかありません。 3270 Fタイプキーボードです。

122キーIBM F型キーボード

F13修飾子の組み合わせを使用して、PC / ATキーボードからからのファンクションキーにアクセスできる端末エミュレーションルールが登場しました。との4つの組み合わせを通じてF24⎈ Control⇧ Level 2 Shiftただ拡張キーボードの12個のファンクションキーは、48個のファンクションキーをシミュレートできます。これは、48の異なる制御シーケンスを生成するXENIXコンソールの場合です。

テーブルの他の列で何が起こっているのかを観察できます。 (例えば)、、F6の制御シーケンスはすべてDECFNK 17であり、2番目のパラメータの修飾子ビットフラグは異なる値を持ちます。F18F30F42

さらに、同じ列では、F1toF5はDECFNK制御シーケンスではありません。これは、PCキーボードのエミュレータの規則によって異なります。 DEC LKキーボードF1ではF5 したDECFNKシーケンスが割り当てられており、できる生成されますが、通常はホストへの入力を生成しない「ローカル」モードで実行されます。シミュレータはこれらのDECFNKシーケンスを生成してシミュレーションする必要はありませんF1F5なぜなら、これらのキーに依存するアプリケーションがほとんどまたはまったくないからです。しかし、シミュレータはその逆です。したPF1電卓キーボードのキーセットは実際のDECキーボードでエミュレートする必要がありますPF4が、PCキーボードにはそのような機能はありません。 これらキーは DECFNK シーケンスを生成せず、実際のファンクションキーではありません。他の電卓キーと同様に、SS3制御シーケンスを生成します。

(一部のSS3シーケンスの形式が正しくありません。「SS」は「シングルシフト」を意味し、これらのシフトは単一の後続の文字に適用されます。SS3に修飾子引数を追加するXTerm制御シーケンスは、実際に正しく設定されたSS3シーケンスです。いいえ。

これは、アナログ端末に設定されているファンクションキー制御シーケンスが最大48のファンクションキーになることができる方法を示しています。 64個の制御シーケンスを解釈するには、DECFNKシーケンスの修飾子パラメータを参照してください。追加の12個の制御シーケンスの場合は、修飾子として3表示されます⎇ Alt

実際、VT制御シーケンスプロトコルで認識される3つの修飾子には、合計8つの可能な組み合わせがあります⎈ Control。したがって、これらの端末エミュレータ規則に基づいて、PC / AT強化キーボードは96個の異なるDECFNK制御シーケンスを持つことができ、DEC LKキーボードは160個の異なるDECFNK制御シーケンスを持つことができます。⇧ Level 2 Shift⎇ Alt

追加読書

おすすめ記事