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

28.3 バッファ名

各バッファには、文字列である一意の名前が付与されています。バッファを操作する関数の多くは、引数としてバッファまたはバッファ名のいずれかを受け取ります。buffer-or-name と呼ばれる引数はすべてこの形式であり、文字列でもバッファでもない場合はエラーが報告されます。buffer と呼ばれる引数は、名前ではなく実際のバッファオブジェクトである必要があります。

一時的なもので、一般的にユーザーにとって重要ではないバッファには、list-buffers および buffer-menu コマンドで言及されないよう、スペースで始まる名前が付けられます(ただし、そのようなバッファがファイルを参照する場合は、言及されます)。また、スペースで始まる名前は、初期状態でアンドゥ情報の記録を無効にします。詳細は Undo を参照してください。

関数: buffer-name &optional buffer

この関数は、buffer の名前を文字列として返します。buffer はデフォルトで現在のバッファとなります。

buffer-name が nil を返す場合、buffer が破棄されたことを意味します。バッファの破棄を参照してください。

(buffer-name)
     ⇒ "buffers.texi"

(setq foo (get-buffer "temp"))
     ⇒ #<buffer temp>
(kill-buffer foo)
     ⇒ nil
(buffer-name foo)
     ⇒ nil
foo
     ⇒ #<killed buffer>
コマンド: rename-buffer newname &optional unique

この関数は、現在のバッファ名を newname に変更します。newname が文字列でない場合は、エラーが通知されます。

通常、newname が既に使用されている場合、rename-buffer はエラーを示します。ただし、unique が nil 以外であれば、newname を変更して未使用の名前を作成します。対話的には、数値の接頭辞引数を用いて unique を nil 以外にすることができます。(コマンド rename-uniquely はこの仕組みで実装されています。)

この関数は、バッファに実際に割り当てられた名前を返します。

関数: get-buffer buffer-or-name

この関数は、buffer-or-name で指定されたバッファを返します。buffer-or-name が文字列で、その名前のバッファが存在しない場合は、値は nil となります。buffer-or-name がバッファである場合は、そのまま返されます。これはあまり有用ではないため、引数には通常、名前が指定されます。例えば:

(setq b (get-buffer "lewis"))
     ⇒ #<buffer lewis>
(get-buffer b)
     ⇒ #<buffer lewis>
(get-buffer "Frazzle-nots")
     ⇒ nil

バッファの作成 の関数 get-buffer-create も参照してください。

関数: generate-new-buffer-name starting-name &optional ignore

この関数は、新しいバッファに対して一意となる名前を返しますが、バッファ自体は作成しません。名前は starting-name から始まり、‘<…>’ の中に数値を付加することで、現在どのバッファでも使用されていない名前を生成します。2 から始めて、既存のバッファ名ではなくなるまで数値をインクリメントし続けます。

オプションの第2引数 ignore が nil 以外の場合、それは文字列(バッファ名の候補)である必要があります。これは、たとえ既存のバッファ名であっても(通常は拒否されますが)、試行された場合にはその候補バッファを許容することを意味します。したがって、‘foo’、‘foo<2>’、‘foo<3>’、および ‘foo<4>’ という名前のバッファが存在する場合、

(generate-new-buffer-name "foo")
     ⇒ "foo<5>"
(generate-new-buffer-name "foo" "foo<3>")
     ⇒ "foo<3>"
(generate-new-buffer-name "foo" "foo<6>")
     ⇒ "foo<5>"

バッファの作成 の関連関数 generate-new-buffer を参照してください。

関数: buffer-last-name &optional buffer

この関数は、buffer が破棄される前、または最後に名前が変更される前の名称を返します。nil を指定するか省略した場合、buffer は現在のバッファをデフォルトとします。