バージョン 4.2.5
 —  エディタ  —

マップの編集

このセクションでは、マップの編集に使用できる画面モードおよびコマンドについて説明します。


画面モード

マップエディタでは、編集セッションは常に画面分割モードで開始されます。 画面分割モードでは、マップエディタ画面の上半分に他の Natural オブジェクト(「データ定義の選択」を参照)のデータ定義か現在のデリミタ設定、またはその両方が表示されます。画面の下半分には、次の例に示すように編集エリアが表示されます。

  Ob _                                    Ob D CLS ATR DEL     CLS ATR DEL     
   .                                       .     T  D    Blnk    T  I    ?      
   .                                       .     A  D    _       A  I    )      
   .                                       .     A  N    ¬       M  D    &      
   .                                       .     M  I    :       O  D    +      
   .                                       .     O  I    (                      
   .                                       .                                    
   001   --010---+----+----+---030---+----+----+---050---+----+----+---070---+- 
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
  Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
        Help  Mset  Exit  Test  Edit  --    -     +     Full  <     >     Let

PF9 キーを使用すると、全画面モードと画面分割モードを切り替えることができます。

PF3 キーを押すか、または画面の上部セクションにある[Ob]入力フィールドにピリオド(.)を入力すると、マップ編集エリアを終了できます。

Top of page

配置のための PF キーとコマンド

次の PF キーおよびコマンドを使用すると、エディタ機能の呼び出しまたはマップ編集エリアへの移動を行うことができます。マップ行の先頭で次のコマンドを入力します。

PF キー コマンド 説明
PF1   マップエディタのヘルプ機能を呼び出します。
PF2   現在のマップ設定を表示/変更します。
PF3 .Q マップ編集を終了して[Edit Map]メニューに戻ります。
PF4   マップ定義をテストします。
PF5   カーソルが現在位置するフィールドについて、拡張フィールド編集機能(関連するセクションを参照)を起動します。
PF6 .-- マップの最上部に移動します。
PF7 .- 上方向にウィンドウ半ページ分移動します。
.-nnn 上方向に nnn 行移動します。
PF8 .+ 下方向にウィンドウ半ページ分移動します。
.+nnn 下方向に nnn 行移動します。
.++ マップの最下部に移動します。
PF9 ./ 画面分割モードと全画面モードを切り替えます。
PF10 .< 左にウィンドウ半ページ分移動します。
.<nnn 左に nnn 列移動します。
.<< マップの左の境界に移動します。
PF11 .> 右にウィンドウ半ページ分移動します。
.>nnn 右に nnn 列移動します。
.>> マップの右の境界に移動します。
PF12   最後に Enter キーを使用したとき以降の画面への変更を無視します。
.* 左上角をカーソル位置に移動します。
PF13 ..X Natural for MBCS がインストールされている場合のみ適用されます。

マップエディタとアウトラインエディタの編集エリアを切り替えます。

Top of page

行コマンド

行コマンドは次の形式で入力する必要があります。

..line-command

ここで、2 つのピリオド(..)は、マップ定義で有効な制御文字を 2 文字入力することを示しています。

各行コマンドの末尾には空白を 1 文字入力することをお勧めします。 これにより、エディタがその行に存在する情報を行コマンドの一部として解釈するのを防ぐことができます。

次の行コマンドを使用できます。

コマンド 説明
..A 配列テーブル定義(「配列とテーブルの定義」セクションを参照)
..An オカレンス n 回の配列テーブル定義。

このコマンドを使用すると、現在の行で指定されたすべてのフィールドに、垂直方向のオカレンスが n 回のテーブルを作成できます。

..C 1 行(つまり、コマンドが入力された行)を中央に配置します。

同じ画面で ..C コマンドを 2 回入力すると、先頭行が中央に配置され、選択した残りの行も調整されます。

..Cn 1 行およびその下の n-1 行を中央に配置します。
..C* 1 行およびその下のすべての行を中央に配置します。
..D 1 行(つまり、コマンドが入力された行)を削除します。

同じ画面で ..D コマンドを 2 回入力すると、そのコマンドで区切られた行のブロックが削除されます。

..Dn 1 行およびその下の n-1 行を削除します。
..D* 1 行およびその下のすべての行を削除します。

削除処理が配列要素に影響する場合は、その配列もすべて削除されます。

..E 行に含まれるすべてのフィールドについて、[Field and Variable Definitions]機能の[Field and Variable Definitions - Summary]画面を呼び出します(「[Edit Map]メニューの機能」を参照)。

同じ画面で ..E コマンドを 2 回入力すると、これらのコマンドで区切られた行の範囲にあるすべてのフィールドが表示され、拡張フィールド編集を行うことができます。

..En この行およびその下の n-1 行について、[Field and Variable Definitions]機能の[Field and Variable Definitions - Summary]画面を呼び出します(「[Edit Map]メニューの機能」を参照)。
..E* この行およびその下のすべての行について、[Field and Variable Definitions]機能の[Field and Variable Definitions - Summary]画面を呼び出します(「[Edit Map]メニューの機能」を参照)。

..E コマンドを実行すると、要求されたフィールドの名前および Natural データフォーマット/長さを表示する画面が開きます。 表示されたフィールド名は変更できます。 [Cmd]列を使用すると、必要な機能(拡張フィールド編集配列定義、および処理ルール編集)を選択できます。

..Fc 文字 c を使用して行の空白を埋めます。
..I 1 行を挿入します。

行を挿入できるようにするために、画面の最後の空行は削除されます。

..In コマンドが入力された行の下に n 行挿入します。
..I* コマンド行の下にできる限り多くの行を挿入します。
..J コマンドが入力された行をその下の行と連結します。

同じ画面で ..J コマンドを 2 回入力すると、そのコマンドで区切られた行の範囲が連結されます。

..Jn コマンドが入力された行をその下の n-1 行と連結します。
..J* 行をその下のすべての行と連結します。

連結処理の結果、行が長くなりすぎる場合は、下方にある行ができる限り右端の位置で分割され、左側部分が前の行と連結されます。 分割された行の右側部分は左に移動し、コマンドが入力された行に整列されます。

..L [Modify INCDIR Statements of Map]画面が表示されます。この画面では、DDM(データ定義モジュール)からコピーされたマップフィールドに対して生成された INCDIR ステートメントをリストおよび更新できます。 手順の詳細については、「DDM への参照のチェックおよび修正」を参照してください。
..M コマンドが入力された行をカーソル行の下に移動します。

同じ画面で ..M コマンドを 2 回入力すると、そのコマンドで区切られた行のブロックがカーソルでマークされた行の下に移動されます。

..Mn 行およびその下の n-1 行をカーソルでマークされた行の下に移動します。
..M* コマンドが入力された行およびその下のすべての行をカーソルでマークされた行の下の行に移動します。

このコマンドは、カーソルでマークされた行が、コマンドが入力された行より上にある場合にのみ効果があります。

..P PF キー処理ルール編集を呼び出します。

PF キー処理ルールとは、プログラム依存の PF キーに割り当てられた動作を定義する特別な処理ルールのことです。

..Pn ランクレベル n の PF キー処理ルール編集を呼び出します。
..Q マップ編集を終了して[Edit Map]メニューに戻ります。
..R コマンドが入力された行のすべてのリテラル文字列を 1 回繰り返します。 対象行の指定にはカーソル位置を使用します。

同じ画面で ..R コマンドを 2 回入力すると、そのコマンドで区切られた行のブロック内にあるリテラル文字列が繰り返されます。

..Rn この行および次の n-1 行のすべてのリテラル文字列を繰り返します。 カーソルがコマンド行より下にある場合は、同じテキストが n 回繰り返されます。
..S カーソル位置で行を分割します。

同じ画面で ..S コマンドを 2 回入力すると、そのコマンドで区切られた行のブロックが分割されます。

..Sn コマンドが入力された行およびその行の下の n-1 行をカーソル位置で分割します。
..X Natural for MBCS がインストールされている場合のみ適用されます。

マップエディタとアウトラインエディタの編集エリアを切り替えます。 この行コマンドの代わりに、PF13 キーを使用できます。

Top of page

フィールドコマンド

フィールドコマンドは次の形式で入力する必要があります。

.field-command

ここで、ピリオド(.)は、マップ定義で有効な制御文字です。 各コマンドは、テキストフィールドまたはデータフィールドの最初の位置で開始する必要があります。

フィールドコマンドは、フィールドまたは定数の範囲に適用できます。 その範囲は、次のいずれかの方法で指定できます。

各フィールドコマンドの末尾には空白を 1 文字入力することをお勧めします。 空白を入力すると、フィールド部分をエディタがフィールドコマンドの一部として解釈するのを防ぐことができます。

次のフィールドコマンドを使用できます。

コマンド 説明
.A 配列を定義します。 このコマンドは単一のフィールドにのみ適用できます。フィールドの範囲には適用できません。

配列定義(「配列とテーブルの定義」を参照)は、表示された画面で指定します。 その結果生成される配列は、このコマンドが入力された位置の左上角に配置されます。

配列は、.A コマンドをその要素の 1 つに適用すると再定義できます。

.An 別の画面を使用することなく 1 次元配列(空白なし、オフセットなし)を定義するには、.A コマンドに繰り返し数 n を指定します。
.C フィールド、または隣接するフィールド間のフィールド範囲を中央に配置します。

単一のフィールドを中央に配置するには、中央に配置するフィールドで .C を入力します。

フィールドの範囲を中央に配置するには、中央に配置する最初と最後のフィールドで .C を入力するか、または最初のフィールドで .C を入力し、中央に配置する最後のフィールドにカーソルを置きます。

隣接するフィールドが存在しない場合は、マップ定義の有効な列境界が代わりに使用されます。

.D フィールドまたはフィールドの範囲を削除します。

単一のフィールドを削除するには、削除するフィールドで .D を入力します。

フィールドの範囲を削除するには、削除する範囲の最初と最後のフィールドで .D を入力します。 削除するフィールドの範囲は 1 行を超える場合があります。 配列要素を削除した場合は、配列全体が削除されます。

.E カーソルが現在位置するフィールドについて、拡張フィールド編集機能(関連するセクションを参照)を起動します。 このコマンドは単一のフィールドにのみ適用できます。フィールドの範囲には適用できません。

また、選択したフィールドにカーソルを置き、PF5 キーを押すと、拡張フィールド編集を起動することができます。

.J 連続する行に配置されたフィールドを連結します。

連結処理の左の境界は、.J コマンドが入力された位置に対応し、右の境界はカーソル位置に対応します。

.M フィールドまたはフィールドの範囲を移動します。

単一のフィールドを移動するには、移動するフィールドで .M を入力し、目的の位置にカーソルを置きます。

フィールドの範囲を移動するには、移動する最初と最後のフィールドで .M を入力し、目的の位置にカーソルを置きます。

.P[n] フィールドの処理ルール(関連するセクションを参照)を編集します。

編集する処理ルールのプライオリティ(ランク)を指定するには、.P コマンドにパラメータ n を指定します。 n に指定する値は、必要に応じてカッコ(())で囲むことができます。

.R フィールドまたはフィールドの範囲を繰り返し(コピーし)ます。

単一のフィールドをコピーするには、コピーするフィールドで .R を入力し、目的の位置にカーソルを置きます。

フィールドの範囲をコピーするには、コピーする最初と最後のフィールドで .R を入力し、目的の位置にカーソルを置きます。

繰り返しは常に左から右へ下向きに実行されます。 このコマンドで生成されたフィールドには、ダミーの名前が割り当てられます。 このようなフィールドには、事後割り当て機能または拡張フィールド編集機能(関連するセクションを参照)を使用して、それぞれ有効な名前を定義する必要があります。

注意:
配列はコピーできません。

.S 行または行の範囲を分割(移動)します。

分割を開始するフィールドで .S を入力し、目的の位置にカーソルを置きます。 .S コマンドが入力された位置で行が分割されます。 その後、右側部分がカーソル位置に移動します。

.T フィールドまたはフィールドの範囲を行から切り捨て(削除し)ます。

切り捨てを開始するフィールドで .T を入力します。 このコマンドを使用して配列要素を切り捨てる(削除する)と、配列全体が削除されます。

Top of page