GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/eintr/forward_002dparagraph-in-brief.html ・ emacs-doc.conao3.com

短縮された forward-paragraph 関数定義

forward-paragraph関数のすべてを掲載するのではなく、その一部のみを掲載します。事前の準備なしに読むと、この関数には気後れしてしまうかもしれません!

概略としては、関数は次のようになります。

(defun forward-paragraph (&optional arg)
  "documentation..."
  (interactive "p")
  (or arg (setq arg 1))
  (let*
      varlist
    (while (and (< arg 0) (not (bobp)))     ; backward-moving-code
      ...
    (while (and (> arg 0) (not (eobp)))     ; forward-moving-code
      ...

この関数の冒頭部分は定型的なものです。引数リストは、1つの省略可能な引数で構成されています。以下にドキュメントを記載します。

interactive 宣言内の小文字 ‘p’ は、処理済みの接頭辞引数(もしあれば)が関数に渡されることを意味します。これは数値となり、point が移動する段落数の繰り返し回数となります。次の行にある or 式は、関数が対話的にではなく他のコードから呼び出された場合など、引数が関数に渡されない一般的なケースを処理します。このケースについては前述の通りです。(forward-sentence 関数を参照してください。)これで、この関数の馴染み深い部分の最後まで到達しました。