TCP/IP の map3270 ファイル・フォーマット

目的

tn3270 コマンドのキーボード・マッピングと色を定義します。

説明

/etc/map3270 ファイルは、tn3270 コマンド用のキーボード・マップとカラーを定義します。 3270 端末をエミュレートする場合、ユーザーの (ASCII) キーボードで入力されたキー・シーケンスと、3270 エミュレーターで使用可能なキーとの間でマッピングを実行する必要があります。

例えば、3270 エミュレーター・キー EEOF (メッセージ) は、カーソルの位置からフィールドの終わりまで、現行フィールドの内容を消去します。 この機能を実行するには、端末ユーザーと 3270 エミュレーターをエミュレートするプログラムは、 EEOF (メッセージ) 機能を呼び出すキーに関して互換性がなければなりません。

これらのシーケンスの要件は以下のとおりです。

  • シーケンスの先頭文字が標準 ASCII 印刷可能文字の外側にあります。
  • 1 つのシーケンスが別のシーケンスの最初の部分になることはありません (ただし、シーケンスは最初の部分を共用できます)。
/etc/map3270 ファイルは、さまざまな端末のエントリーで構成されます。 項目の最初の部分には、その項目を使用する端末の名前がリストされます。 これらの名前は、 /usr/share/lib/terminfo/*.ti ファイルの名前と同じでなければなりません。
注: 多くの場合、異なる /usr/share/lib/terminfo/*.ti エントリーからの複数の端末は、同じ /etc/map3270 ファイル・エントリーを使用します。 例えば、以下のようになります。925および925vb(ビジュアル・ベル付きの 925 の場合) 同じ map3270 ファイル項目を使用できます。 それぞれの名前は、| (縦線) をクリックすると、次の文字が表示されます。{(左中括弧)、定義、そして最後に、}(右中括弧)。

フォーマット

定義は、3270 機能を識別する予約キーワードで始まります。 キーワードの後に = (等号) が続き、その後にさまざまなストリング・シーケンスが続き、特定の関数が生成されます。 定義は; (セミコロン) で終わります。 ストリング・シーケンスは、'' で囲まれた印刷可能な ASCII 文字です。 (単一引用符) で囲み、| (縦線) で区切ります。

特殊文字は '' 内で使用できます (単一引用符)。 ^ (脱字記号) は制御文字を示します。 例えば次のようなストリングがあるとします。'^a'Ctrl-A を表します。つまり、16 進数の 1 (ストリング'^A'同じコードが生成されます)。 生成対象deleteまたはrubout, 入力'^d' '^?'(Ctrl-D または Ctrl-?)。 /etc/map3270 ファイルで制御文字を表すには、キャレットを使用する必要があります。 TypingControl-AまたはCtrl-Aは機能しません。
注: Ctrl-^ キー・シーケンス (16 進数を生成する) 1Eは、次のように表されます。'^^'('^\^').

特殊文字 ¥ (バックスラッシュ) は、その意味を変更するために他の文字の前に置かれます。 これはほとんどの文字にはほとんど影響しないため、使用することはお勧めしません。 円記号 (¥) は、単一引用符がストリング (例えば、ストリング) を終了するのを防ぎます。'^\''Ctrl-' を表します。 円記号をストリングの一部にするには、2 つの円記号 ('\\') ストリング内にあります。

さらに、以下の文字は特殊文字です。

'\e'   Specifies an escape character.
'\n'   Specifies a new line.
'\t'   Specifies a tab.
'\r'   Specifies a carriage return.

ストリング内の各文字を単一引用符で囲む必要はありません。 このストリングについては以下の条件があります。'\e\e\e'3 つのエスケープ文字を意味します

コメントは、行のどこにあっても構いませんが、# (ポンド記号) で始まり、その行の終わりで終わります。 ただし、引用符付きストリング内でコメントを開始することはできません。 引用符付きストリング内のポンド記号には、特別な意味はありません。

サポートされる 3270 キー

注: 3270 エミュレーターには、以下のキーの一部が存在しません。 * (アスタリスク) 付きでリストされている機能は、 tn3270 コマンドではサポートされていません。 サポートされない機能を使用すると、 tn3270 コマンドはユーザーの端末にベル・シーケンスを送信します。

/etc/map3270 ファイルは、以下の 3270 キー名のリストをサポートします。

鍵の名前 機能説明
アルトク* 代替キーボードドボラク配列
アプレンド* 入力を ASCII として扱う
アプロフ* APL OFF
アプロン* APL ON
アテンション アテンション・キー。 アテンションキーは、VMまたは MVS システム上のTELNETサーバーにIAC BREAK TELNETプロトコルシーケンスを送信します。 TELNET サーバーは、アテンション・キーのインプリメントを担当します。
タブ フィールド・タブ戻る
clear 3270 画面のローカル・クリア
ClrTab すべての列タブをクリア
コルバク 「列を戻す」タブ
列タブ 「列」タブ
カーゼル* カーソル選択
削除 文字削除
削除タブ 列タブの削除
ディスク 切断 (中断)
Down 下カーソル
dp 重複文字
イオイオー フィールドの終わりを消去
EINP 入力消去
Enter Enterキー
erase 最後の文字を消去
エスケープ TELNET コマンド・モードに入ります。
フェラーゼ ERASE フィールド
フィールドエンド 現在または次の無保護 (書き込み可能) フィールドの最後の非ブランクまで Tab キーで移動
フリンプ 入力のフラッシュ
fm フィールド・マーク文字
home カーソルのホーム
インデント 1 つのタブ・ストップをインデント
初期化* 新規端末タイプ
インシュルト 挿入モードの切り替え
項目 説明
LEFT 左カーソル
LPRT* ローカル印刷
マスター・リセット リセット、アンロック、および再表示
nl 改行
pa1 プログラム・アテンション 1
pa2 プログラム・アテンション 2
pa3 プログラム・アテンション 3
pfk1 プログラム・ファンクション・キー 1
pfk2 プログラム機能キー 2
. .
. .
. .
pfk36 プログラム・ファンクション・キー 36。
PCOFF* XON/XOFF
PCON* XON/XOFF ON
リセット リセット・キー-キーボードのアンロック
再表示 画面の再表示
右カーソル
セトム ホーム・ポジションの設定
SetMRG 左マージンを設定する
設定タブ 列タブの設定
synch ユーザーと同期しています
タブ 「フィールド」タブ
トレック テスト要求
無デント 1 つのタブ停止位置のインデント解除
UP 上カーソル
werase 最後のワードの消去
ワードバックタブ 現在の単語または最後の単語の先頭まで Tab キーで移動
配当 現在の単語または次の単語の末尾まで Tab キーで移動
ワードタブ 次の単語の先頭まで Tab キーで移動
XOFF* 出力の保留
クソン* 出力の解放

サンプル・エントリー

以下のデフォルト・エントリーは、 tn3270 コマンド内に組み込まれ、ユーザーの環境または /etc/map3270 ファイルでバージョンを見つけることができない場合に使用されます。

name {                       # actual name comes from TERM variable
clear = '^z';
flinp = '^x';
enter = '^m';
delete = '^d' | '^?';        # note that '^?' is delete (rubout)
synch = '^r';
reshow = '^v';
eeof = '^e';
tab = '^i';
btab = '^b';
    
nl = '^n';
left = '^h';
right = '^l';
up = '^k';
down = '^j';
einp = '^w';
reset = '^t';
xoff = '^s';
xon = '^q';
escape = '^c';
ferase = '^u';
insrt = ' ';
# program attention keys
pa1 = '^p1'; pa2 = '^p2'; pa3 = '^p3';
# program function keys
pfk1 = '1'; pfk2 = '2'; pfk3 = '3'; pfk4 = '4';
pfk5 = '5'; pfk6 = '6'; pfk7 = '7'; pfk8 = '8';
pfk9 = '9'; pfk10 = '  '; pfk11 = '-'; pfk12 = '=';
pfk13 = ''; pfk14 = '@'; pfk15 = '0;
pfk17 = ''; pfk18 = ''; pfk19 = ''; pfk20 = ';
pfk21 = ' pfk22 = ')'; pfk23 = '_'; pfk24 = ' ';
}

3270 キー定義

以下の表は、 tn3270 コマンドで提供されるデフォルトのキー・マッピングを使用する場合に、各 3270 機能をエミュレートするための適切なキーを示しています。

表 1. 3270 キー定義
FUNCTION 3270 キー デフォルト・キー (Default Key (s))
コマンド・キー 実行 RETURN
  クリア Ctrl-Z
  重要 Ctrl-F12
カーソル移動キー 改行 Ctrl-n または Home
  タブ Ctrl-I
  「戻る」タブ Ctrl-B
  カーソル左 Ctrl-H
  カーソル右 Ctrl-L
  カーソル上移動 Ctrl-K
  カーソル下移動 Ctrl-j または LINE FEED
制御キーの編集 文字の削除 Ctrl-d または RUB
  EOF 消去 Ctrl-E
  入力消去 Ctrl-W
  挿入モード ESC スペース
  挿入の終了 ESC スペース
項目 説明
PF キー PF1 ESC 1 形
  PF2 ESC 2
  ... ...
  PF10 ESC 0 (E)
  PF11 ESC (E)-
  PF12 ESC (ESC) =
  PF13 ESC!
  PF14 ESC @ (E)
  ... ...
  PF24 ESC + (E)
プログラム・アテンション・キー PA1 [Ctrl]-[p] 1
  PA2 [Ctrl]-[p] 2
  PA3 Ctrl-p 3
ローカル制御キー エラー後にリセット Ctrl-R
  入力バッファーのパージ Ctrl-X
  キーボード・アンロック Ctrl-T
  再表示画面 Ctrl-V
その他のキー 現行フィールドの消去 Ctrl-U

ファイル

項目 説明
/etc/3270.keys デフォルトのキーボード・マッピングが入っています。
/usr/share/lib/terminfo/*.ti 端末情報を含むファイル。