Next: , Previous: , Up: Motion   [Contents][Index]


29.2.6 Moving over Balanced Expressions

以下は、バランスの取れたカッコ式(balanced-parenthesis。これらの式を横断して移動することと関連して、Emacsではsexp(S式)とも呼ばれる)と関連する、いくつかの関数です。これらの関数がさまざまな文字を処理する方法は、構文テーブル(syntax table)が制御します。Syntax Tablesを参照してください。sexp、またはその一部にたいする低レベルのプリミティブについては、Parsing Expressionsを参照してください。ユーザーレベルのコマンドについては、Commands for Editing with Parentheses in The GNU Emacs Manualを参照してください。

Command: forward-list &optional arg

この関数は、バランスの取れたカッコのグループを、arg(デフォルトは1)グループ前方に移動する(単語やクォート文字のペアーでクォートされた文字列は無視される)。

Command: backward-list &optional arg

この関数は、バランスの取れたカッコのグループを、arg(デフォルトは1)グループ後方に移動する(単語やクォート文字のペアーでクォートされた文字列は無視される)。

Command: up-list &optional arg

この関数は、カッコをarg(デフォルトは1)レベル外側前方に移動する。負の引数では後方に移動するが、同様に浅いレベルに移動する。

Command: down-list &optional arg

この関数は、カッコをarg(デフォルトは1)レベル内側前方に移動する。負の引数では後方に移動するが、同様に深いレベル(-argレベル)に移動する。

Command: forward-sexp &optional arg

この関数は、バランスの取れた式(balanced expressions)を、arg(デフォルトは1)前方に移動する。バランスの取れた式にはカッコ等で区切られた式、および単語や文字列定数のようなものも含まれる。Parsing Expressionsを参照のこと。たとえば、

---------- Buffer: foo ----------
(concat∗ "foo " (car x) y z)
---------- Buffer: foo ----------

(forward-sexp 3)
     ⇒ nil

---------- Buffer: foo ----------
(concat "foo " (car x) y∗ z)
---------- Buffer: foo ----------
Command: backward-sexp &optional arg

この関数は、バランスの取れた式(balanced expressions)を、arg(デフォルトは1)後方に移動する。

Command: beginning-of-defun &optional arg

この関数は、後方にarg番目のdefunの先頭に移動する。argが負なら、実際には前方に移動するが、defunの終端ではなく先頭に移動することは変わらない。argのデフォルトは1。

Command: end-of-defun &optional arg

この関数は、前方にarg番目のdefunの終端に移動する。argが負なら、実際には後方に移動するが、defunの先頭ではなく終端に移動することは変わらない。argのデフォルトは1。

User Option: defun-prompt-regexp

nilなら、このバッファーローカル変数はdefunの始まりとなる開きカッコの前に出現し得るテキストを指定する正規表現を保持する。つまりd、この正規表現にたいするマッチで始まり、その後に開きカッコ構文(open-parenthesis syntax)が続くのがdefunである。

User Option: open-paren-in-column-0-is-defun-start

この変数の値が非nilなら、列0にある開きカッコはdefunの始まりとみなされる。nilの場合、列0の開きカッコは特別な意味をもたない。デフォルトはt

Variable: beginning-of-defun-function

nilなら、この変数はdefunの開始を見つける関数を保持する。関数beginning-of-defunは、通常の手法を使うかわりに、その関数に自身のオプション引数を渡して、その関数を呼び出す。その引数が非nilなら、その関数はその回数分の関数呼び出しにより、beginning-of-defunが行うように後方に移動すること。

Variable: end-of-defun-function

nilなら、この変数はdefunの終端を見つける関数を保持する。関数end-of-defunは、通常の手法を使うかわりに、その関数を呼び出す。