ここでは、本エディタ関連の リレー型関数 について、詳しく説明します。
関数名 | 概要説明 |
---|---|
'LineNo | 「行番号」属性の設定/現値取得 |
'LLi | 「論理行インデックス」属性の設定/現値取得 |
'VLi | 「表示行インデックス」属性の設定/現値取得 |
'FLi | 「外見行インデックス」属性の設定/現値取得 |
'LLn | 「相対論理行数」属性の設定 |
'VLn | 「相対表示行数」属性の設定 |
'FLn | 「相対外見行数」属性の設定 |
'Column | 「桁番号」属性の設定/現値取得 |
'Xc | 「X座標」属性の設定/現値取得 |
'Xd | 「相対X座標」属性の設定 |
'Ci | 「文字コードインデックス」属性の設定/現値取得 |
'DCn | 「相対文字コード数」属性の設定 |
'DKn | 「相対文字数」属性の設定 |
'DWn | 「相対単語数」属性の設定 |
'LCn | 「現行頭からの文字コード数」属性の設定/現値取得 |
'LKn | 「現行頭からの文字数」属性の設定/現値取得 |
'LWn | 「現行頭からの単語数」属性の設定 |
'TextTop | 「テキスト先頭」属性の付いた数値を返す(無対象) |
'TextEnd | 「テキスト末尾」属性の付いた数値を返す(無対象) |
'LineTop | 「行頭」属性の付いた数値を返す(無対象) |
'LineEnd | 「行末」属性の付いた数値を返す(無対象) |
'LineLim | 「行終端」属性の付いた数値を返す(無対象) |
'WordTop | 「単語先頭」属性の付いた数値を返す(無対象) |
'WordEnd | 「単語末尾」属性の付いた数値を返す(無対象) |
'SLn | 「画面最上行からの行位置」属性の設定/現値取得 |
説明: | 「行番号」を示す属性を、対象の数値に設定して返します。 対象がなければ、現カーソル位置の「行番号」に、この属性を設定して返します。 この「行番号」の種別が、論理行か表示行かは、 「現位置」の行種別に依存します。 「行番号」の値は、1, 2, 3, ... で、それぞれ、第1、第2、第3、...番目の行に 対応します。 |
補説: |
「現位置」の行は、
本「行番号」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別と桁は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 100'LineNo ); これを実行すると、カーソルが 100 行目に移動します。 この行番号が論理行か表示行かは、現環境設定に依存します。 |
説明: | 「論理行インデックス」を示す属性を、 対象の数値に設定して返します。 対象がなければ、現カーソル位置の「論理行インデックス」に、 この属性を設定して返します。 |
補説: |
「現位置」の行は、
本「論理行インデックス」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、論理行に更新されます。 「現位置」の桁は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 200'LLi ); これを実行すると、「論理行インデックス」が 200 の行にカーソルが移動します。 |
説明: | 「表示行インデックス」を示す属性を、 対象の数値に設定して返します。 対象がなければ、現カーソル位置の「表示行インデックス」に、 この属性を設定して返します。 |
補説: |
「現位置」の行は、
本「表示行インデックス」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、表示行に更新されます。 「現位置」の桁は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 200'VLi ); これを実行すると、「表示行インデックス」が 200 の行にカーソルが移動します。 |
説明: | 「外見行インデックス」を示す属性を、 対象の数値に設定して返します。 対象がなければ、現カーソル位置の「外見行インデックス」に、 この属性を設定して返します。 |
補説: |
「現位置」の行は、
本「外見行インデックス」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 「現位置」の桁も、現状のままです。 ちなみに、外見行インデックスは、折り畳みが現編集テキスト内に無ければ、 表示行インデックスと同じになります。 |
用例: |
::Apsaly.MoveTo( 120'FLi ); これを実行すると、「外見行インデックス」が 120 の行にカーソルが移動します。 |
説明: | 「(現位置からの)相対論理行数」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 |
補説: |
「現位置」の行は、
本「(現位置からの)相対論理行数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、論理行に更新されます。 「現位置」の桁は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 5'LLn ); これを実行すると、現論理行よりも5行先の論理行へカーソルが移動します。 |
説明: | 「(現位置からの)相対表示行数」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 |
補説: |
「現位置」の行は、
本「(現位置からの)相対表示行数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、表示行に更新されます。 「現位置」の桁は、現状のままです。 |
用例: |
::Apsaly.MoveTo( -3'VLn ); これを実行すると、現表示行よりも3行前の表示行へカーソルが移動します。 |
説明: | 「(現位置からの)相対外見行数」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 |
補説: |
「現位置」の行は、
本「(現位置からの)相対外見行数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 「現位置」の桁も、現状のままです。 ちなみに、相対外見行数は、折り畳みが現編集テキスト内に無ければ、 相対表示行数と同じになります。 |
用例: |
::Apsaly.MoveTo( +10'FLn ); これを実行すると、現外見行よりも10行先の外見行へカーソルが移動します。 |
説明: |
「桁番号」を示す属性を、対象の数値に設定して返します。
対象がなければ、現カーソル位置の「桁番号」に、この属性を設定して返します。 「桁番号」の起点は、環境設定の「桁目盛り」で、「桁番号の基点を0にする」の 指定が、ON なら 0 に、OFF なら 1 になります。 |
補説: |
「現位置」の桁は、
本「桁番号」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 40'Column ); これを実行すると、カーソルが 40 桁目に移動します。 この桁番号の基点が 0 か 1 かは、現環境設定に依存します。 |
説明: |
「(表示行の左端からの)X座標」を示す属性を、対象の数値に設定して返します。
対象がなければ、現カーソル位置の「表示行の左端からのX座標」に、
この属性を設定して返します。 このX座標の単位は画素数で、起点(表示行の先頭桁の左端位置)は 0 になります。 非等幅フォント(プロポーショナルフォント)使用時、各文字の位置は、 必ずしも桁位置に一致していません。そのような場合、 X座標を使うと、各文字の位置を厳密に規定できます。 |
補説: |
「現位置」の桁は、
本「X座標」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 320'Xc ); これを実行すると、カーソルは、移動可能な範囲内で、そのX座標が 320 に最も近くなる 位置へ移動します。 |
説明: | 「相対X座標」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 X座標に関しては、'Xc で説明している通りです。 |
補説: |
「現位置」の桁は、
本「相対X座標」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 80'Xd ); これを実行すると、カーソルは、移動可能な範囲内で、X座標が現位置よりも 80 だけ 右の位置に最も近い位置へ移動します。 |
説明: | 「文字コードインデックス」を示す属性を、 対象の数値に設定して返します。対象がなければ、 現カーソル位置の「文字コードインデックス」に、 この属性を設定して返します。 |
補説: |
「現位置」の行と桁は、
本「文字コードインデックス」に応じて更新されます。
その値が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 1200'Ci ); これを実行すると、カーソルは、編集テキストの先頭からの文字コード数が 1200 になる 文字位置へ移動します。 |
説明: | 「(現位置からの)相対文字コード数」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 |
補説: |
「現位置」の行と桁は、
本「(現位置からの)相対文字コード数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 8'DCn ); これを実行すると、カーソルは、現位置からの 8 文字コード先の文字位置へ移動します。 |
説明: | 「(現位置からの)相対文字数」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 |
補説: |
「現位置」の行と桁は、
本「(現位置からの)相対文字数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( -3'DKn ); これを実行すると、カーソルは、現位置から 3 文字前の文字位置へ移動します。 |
説明: | 「(現位置からの)相対単語数」を示す属性を、対象の数値に設定して返します。 対象がない時は、null を返します。 |
補説: |
「現位置」の行と桁は、
本「(現位置からの)相対単語数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 1'DWn ); これを実行すると、カーソルは、現位置から次の単語の先頭へ移動します。 |
説明: |
「(現行頭からの)相対文字コード数」を示す属性を、対象の数値に設定して返します。
対象がない時は、現行頭から現位置までの文字コード数に、この属性を設定して返します。 この「現行頭」とは、「現位置」の行の先頭のことです。 この行が論理行か表示行かは、「現位置」の 行種別に依存します。 |
補説: |
「現位置」の行と桁は、
本「(現行頭からの)相対文字コード数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 24'LCn ); これを実行すると、カーソルは、現行頭からの文字コード数が 24 になる文字位置へ移動します。 |
説明: |
「(現行頭からの)相対文字数」を示す属性を、対象の数値に設定して返します。
対象がない時は、現行頭から現位置までの文字数に、この属性を設定して返します。 この「現行頭」とは、「現位置」の行の先頭のことです。 この行が論理行か表示行かは、「現位置」の 行種別に依存します。 |
補説: |
「現位置」の行と桁は、
本「(現行頭からの)相対文字数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 10'LKn ); これを実行すると、カーソルは、現行頭からの文字数が 10 になる(つまり、 行頭から第11番目の)文字位置へ移動します。 |
説明: |
「(現行頭からの)相対単語数」を示す属性を、対象の数値に設定して返します。
対象がない時は、現行頭から現位置までの単語数に、この属性を設定して返します。 この「現行頭」とは、「現位置」の行の先頭のことです。 この行が論理行か表示行かは、「現位置」の 行種別に依存します。 |
補説: |
「現位置」の行と桁は、
本「(現行頭からの)相対単語数」に応じて更新されます。
その結果が有効範囲外なら、その最大/最小でカットされます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 2'LWn ); これを実行すると、カーソルは、現行頭からの単語数が 2 になる(つまり、 行頭から第3番目の)単語の先頭へ移動します。 |
説明: | 「テキスト先頭」を示す属性を設定した数値を返します。 これは、その属性に意味があって、数値には意味がありません。 このリレー型関数の対象はありません。 |
補説: |
「現位置」の行と桁は、
「テキスト先頭」に更新されます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'TextTop );
::Apsaly.MoveTo( 'TextTop, 8'DKn ); |
説明: | 「テキスト末尾」を示す属性を設定した数値を返します。 これは、その属性に意味があって、数値には意味がありません。 このリレー型関数の対象はありません。 |
補説: |
「現位置」の行と桁は、
「テキスト末尾」に更新されます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'TextEnd );
::Apsaly.MoveTo( 'TextEnd, -5'DKn ); |
説明: |
「(現位置における)行頭」を示す属性を設定した数値を返します。
これは、その属性に意味があって、数値には意味がありません。
このリレー型関数の対象はありません。 この「行頭」とは、「現位置」の行の先頭のことです。 この行が論理行か表示行かは、「現位置」の 行種別に依存します。 |
補説: |
「現位置」の桁は、
「(現位置における)行頭」に更新されます。 「現位置」の行と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'LineTop );
::Apsaly.MoveTo( 100'LineNo, 'LineTop ); |
説明: |
「(現位置における)行末」を示す属性を設定した数値を返します。 これは、その属性に意味があって、数値には意味がありません。 このリレー型関数の対象はありません。 この「行末」とは、「現位置」の行の末尾のことです。 この行が論理行か表示行かは、「現位置」の 行種別に依存します。 この行の「行終端」が、改行コードなら、この「行末」は、 その改行コードの直前の位置になります。 改行コードのない折り返し行では、「行末」と「行終端」は、同じ位置で、 これらは、次行の先頭と同じ「文字コードインデックス」 になります。 |
補説: |
「現位置」の桁は、
「(現位置における)行末」に更新されます。 「現位置」の行と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'LineEnd );
::Apsaly.MoveTo( 100'LineNo, 'LineEnd, -3'DKn ); |
説明: |
「(現位置における)行終端」を示す属性を設定した数値を返します。 これは、その属性に意味があって、数値には意味がありません。 このリレー型関数の対象はありません。 この「行終端」とは、「現位置」の行の終端のことです。 この行が論理行か表示行かは、「現位置」の 行種別に依存します。 この行の「行終端」が、改行コードなら、この「行終端」は、 その改行コードの直後の位置になります。 改行コードのない折り返し行では、「行末」と「行終端」は、同じ位置になります。 「行終端」と次行の先頭は、同じ「文字コードインデックス」に なります。 |
補説: |
「現位置」の桁は、
「(現位置における)行終端」に更新されます。 「現位置」の行と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'LineLim ); これを実行すると、カーソルは、現在の行の終端へ移動します。 但し、フリーカーソルでない場合、カーソルは、行終端へは移動できないので、 次行の先頭へ移動します。 |
説明: |
「(現位置における最寄の)単語先頭」を示す属性を設定した数値を返します。
これは、その属性に意味があって、数値には意味がありません。
このリレー型関数の対象はありません。 「最寄の単語」とは、現位置が単語の先頭/内部/末尾にあれば、その単語自身で、 さもなければ、現位置以降にある最初の単語になります。 最寄の単語が無ければ、現位置になります。 |
補説: |
「現位置」の桁と行は、
「(現位置における最寄の)単語先頭」に応じて更新されます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'WordTop ); これを実行すると、カーソルは、「最寄の単語」の先頭へ移動します。 |
説明: |
「(現位置における最寄の)単語末尾」を示す属性を設定した数値を返します。
これは、その属性に意味があって、数値には意味がありません。
このリレー型関数の対象はありません。 「最寄の単語」の意味は、'WordTop で説明した通りです。 |
補説: |
「現位置」の桁と行は、
「(現位置における最寄の)単語末尾」に応じて更新されます。 「現位置」の行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 'WordEnd ); これを実行すると、カーソルは、「最寄の単語」の末尾へ移動します。 |
説明: |
「画面最上行からの行位置」を示す属性を、対象の数値に設定して返します。
対象がなければ、現カーソル位置での「画面最上行からの行位置」に、
この属性を設定して返します。 「画面最上行からの行位置」が、1, 2, 3, ... で、現編集ウィンドウのテキスト表示領域の 上端から、第1、第2、第3、...行目になります。 |
補説: | 「現位置」の行と桁と行種別は、現状のままです。 |
用例: |
::Apsaly.MoveTo( 200'LineNo, 5'SLn ); これを実行すると、カーソルが編集テキストの 200 行目に移動します。その際、 カーソルが画面上端から第 5 行目の位置になるように表示されます。 |