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

15 レジスタ

Emacsのレジスタとは、テキストや矩形、位置などを保存して後で利用するための領域のことです。レジスタにテキストや矩形を保存すれば、それをバッファに1回または複数回コピーできます。また、レジスタに位置を保存すれば、その位置へ1回または複数回ジャンプできます。

各レジスタには1文字からなる名前があり、これを r と表記します。r は英字(‘a’ など)または数字(‘1’ など)であり得ます。大文字と小文字は区別されるため、レジスタ ‘a’ はレジスタ ‘A’ とは異なります。また、例えば C-q や ‘C-d’ を用いることで、‘C-d’ のように英数字以外の文字でレジスタを指定することも可能です。

レジスタには、位置、テキスト、矩形、数値、ウィンドウやフレームの構成、バッファ名、またはファイル名を格納できますが、一度に格納できるのはそのうちの一つだけです。レジスタに格納したものは、別のものを格納するまでそのまま保持されます。レジスタ r に何が格納されているかを確認するには、M-x view-register を使用してください:

M-x view-register RET r

レジスタ r の内容に関する説明を表示します。

レジスタの指定を求めるすべてのコマンドでは、デフォルトで、短い待機時間の後、既存のレジスタ(もしあれば)とその現在の値を一覧表示するプレビューウィンドウが表示されます。レジスタ指定に関するこの動作やその他の設定は、register-use-preview の値を設定することでカスタマイズでき、この値には以下が指定可能です:

traditional

デフォルトであるこの値を設定すると、EmacsはEmacs 29より前のすべてのバージョンと同様の動作をします。具体的には、一定の遅延の後に既存のレジスタのプレビューを表示し、レジスタ名を1文字入力するだけで既存のレジスタの値を上書きできるようになります。プレビューは、遅延時間を秒単位で指定するカスタマイズ可能な変数 register-preview-delay で決定された遅延の後に表示されます。これを nil に設定するとプレビューは無効になります(ただし、Emacsがレジスタの入力を促した際に C-h または F1 を押すことで、明示的にプレビューウィンドウを表示させることは可能です)。

t

この値を指定すると、既存レジスタのより柔軟なプレビューが可能になります。Emacsがレジスタの指定を促した際に即座にプレビューが表示され(したがって register-preview-delay は効果がありません)、プレビューウィンドウではナビゲーションが可能です。C-n や C-p(または UP や DOWN の矢印キー)を使用することで、プレビューウィンドウ内のレジスタ間を移動できます。このモードで既存レジスタの値を上書きするには、ナビゲーションでレジスタを選択するか、その名前を入力した後、RET と入力する必要があります。

さらに、プレビューに表示されるレジスタは、プレビューをポップしたコマンドに応じてフィルタリングされます。例えば、insert-register で表示されるプレビューでは、値がバッファに挿入可能なレジスタのみが表示され、ウィンドウ構成や位置、その他の挿入不可能な値を保持するレジスタは除外されます。

insist

この値は t と同様ですが、さらに RET を押す代わりに、レジスタ名と同じキーをもう一度押すことでミニバッファを終了できます。

nil

この値は traditional と同様の動作を要求しますが、プレビューは遅延なく表示され、コマンドに応じてフィルタリングされます。

never

この値は nil と同様ですが、プレビューを無効にします。

ブックマークは、ファイルとその中の位置を記録するもので、ファイルを再度参照する際にその位置に戻ることができます。ブックマークは概念的にレジスタに似ているため、本章で併せて解説します。