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

3.10.1 save-excursion 式のテンプレート

save-excursion を使用するコードのテンプレートはシンプルです:

(save-excursion
  body...)

関数本体は、Lispインタプリタによって順次評価される1つ以上の式で構成されます。本体に複数の式がある場合、最後の式の値がsave-excursion関数の値として返されます。本体内の他の式は副作用のためだけに評価され、save-excursion自体もその副作用(pointの位置を復元すること)のためだけに使用されます。

より詳しく言うと、save-excursion 式のテンプレートは次のようになります。

(save-excursion
  first-expression-in-body
  second-expression-in-body
  third-expression-in-body
   ...
  last-expression-in-body)

式は、もちろんそれ自体がシンボルであったり、リストであったりすることもあります。

Emacs Lispのコードでは、save-excursion 式が let 式の本体内に現れることがよくあります。次のような形です。

(let varlist
  (save-excursion
    body...))