Next: , Previous: , Up: モーション   [Contents][Index]


31.2.4 テキスト行単位の移動

テキスト行とは改行で区切られたバッファーの範囲です。改行は前の行の一部とみなされます。最初のテキスト行はバッファー先頭で始まり、最後のテキスト行は最後の文字が改行かどうかは関係なくバッファー終端で終わります。バッファーからテキスト行への分割はそのウィンドウの幅、表示の行継続、タブやその他の制御文字の表示方法に影響されません。

Command: beginning-of-line &optional count

この関数はカレント行の先頭にポイントを移動する。引数countが非nilまたは1以外なら前方にcount-1行移動してから、その行の先頭に移動する。

この関数は別の行に移動する場合を除いてフィールド境界(フィールドの定義と使用を参照)を超えてポイントを移動しない。したがってcountnilか1で、かつポイントがフィールド境界で開始される場合にはポイントを移動しない。フィールド境界を無視させるにはinhibit-field-text-motiontにバインドするか、かわりにforward-line関数を使用する。たとえばフィールド境界を無視することを除けば、(forward-line 0)(beginning-of-line)と同じことを行う。

この関数がバッファー(ナローイングが効力をもつ場合はアクセス可能範囲)の終端に到達したらポイントをその位置に配置する。エラーはシグナルされない。

Function: line-beginning-position &optional count

(beginning-of-line count)が移動するであろう位置をリターンする。

Command: end-of-line &optional count

この関数は、カレント行の終端にポイントを移動する。引数countが非nilまたは1以外なら前方にcount-1行移動してから、その行の終端に移動する。

この関数は別の行に移動する場合を除いてフィールド境界(フィールドの定義と使用を参照)を超えてポイントを移動しない。したがってcountnilまたは1で、かつポイントがフィールド境界で開始される場合にはポイントを移動しない。フィールド境界を無視させるにはinhibit-field-text-motiontにバインドする。

この関数がバッファー(ナローイングが効力をもつ場合はアクセス可能範囲)の終端に到達したらポイントをその位置に配置する。エラーはシグナルされない。

Function: line-end-position &optional count

(end-of-line count)が移動するであろう位置をリターンする。

Function: pos-bol &optional count

line-beginning-positionと似ているがフィールドを無視する(そしてより効率的である)。

Function: pos-eol &optional count

line-end-positionと似ているがフィールドを無視する(そしてより効率的である)。

Command: forward-line &optional count

この関数は後続行へ前方にcount行移動して、その行の先頭にポイントを移動する。countが負なら先行行へ後方に-count行移動して、その行の先頭にポイントを移動する。countが0ならカレント行の先頭にポイントを移動する。countnilならそれは1を意味する。

forward-lineが指定された行数を移動する前にバッファー(またはアクセス可能範囲)の先頭か終端に遭遇したら、そこにポイントをセットする。エラーはシグナルされない。

forward-linecountと実際に移動した行数の差をリターンする。3行しかないバッファーの先頭から5行下方への移動を試みると、ポイントは最終行の終端で停止して値は2となるだろう。明示的な例外としてアクセス可能な最終行が空ではなく改行がなければ(バッファーが改行で終わらない場合)、この関数はその行の終端にポイントをセットして、この関数がリターンする値はその行を移動に成功した1行として計数する。

インタラクティブな呼び出しでは数プレフィクス引数がcountとなる。

Function: count-lines start end &optional ignore-invisible-lines

この関数はカレントバッファー内の位置startendの間の行数をリターンする。startendが等しければリターン値は0。それ以外は、たとえstartendが同一行にあっても最小でも1をリターンする。これらの間にあるテキストは、それだけを孤立して考えたると、それが空でない限りは最小でも1行を含まなければならないからである。

オプションのignore-invisible-linesが非nilなら、不可視の行は行数に含まれない。

Command: count-words start end

この関数はカレントバッファー内の位置startendの間にある単語の数をリターンする。

この関数はインタラクティブに呼び出すこともできる。その場合はバッファー、またはリージョンがアクティブならリージョン内の行数、単語数、文字数を報告するメッセージをプリントする。

Function: line-number-at-pos &optional pos absolute

この関数はカレントバッファーのバッファー位置posに対応する行番号をリターンする。posnilか省略ならカレントのバッファー位置を使用する。absolutenil (デフォルト)なら(point-min)から数え始めるので、値は(ナローイングされているかもしれない)バッファーのアクセス可能範囲を参照する。absoluteが非nilならすべてのナローイングを無視して行の絶対番号をリターンする。

ポイント近傍のテキストを調べるの関数bolpeolpも参照してください。これらの関数はポイントを移動しませんが、ポイントがすでに行頭または行末にあるかどうかをテストします。