Next: Transposition, Previous: Substitution, Up: Text [Contents][Index]
レジスター(register)とは、Emacs内の編集においてさまざまな異なる種類の値を保持できる一種の変数です。レジスターはそれぞれ1文字で命名されます。すべてのASCII文字、およびそれらのメタ修飾された変種(ただしC-gは例外)をレジスターの命名に使用できます。したがって利用可能なレジスター数は255になります。Emacs Lispではレジスターは自身の名前となるその文字により指定されます。
この変数は要素が(name
.contents)
という形式のalist。使用中のEmacsレジスターごとに通常は1つの要素が存在する。
オブジェクトnameはレジスターを識別する文字(整数)。
レジスターのcontentsには、いくつかのタイプがある:
数字はそれ自身を意味する。insert-register
はレジスター内の数字を探して10進数に変換する。
マーカーはジャンプ先のバッファー位置を表す。
文字列の場合はレジスター内に保存されたテキスト。
矩形は文字列のリストを表す。
(window-configuration position)
これは1つのフレームにリストアされるウィンドウ構成、およびカレントバッファー内のジャンプ先の位置を表す。
(frame-configuration position)
これはリストア用のフレーム構成とカレントバッファー内のジャンプ先の位置。
これはvisitするファイルを表し、この値にジャンプすることによりファイルfilenameをvisitする。
これはvisitするファイルとファイル内の位置を表す。この値にジャンプすることによりファイルfilenameをvisitしてバッファー位置positionに移動する。このタイプの位置をリストアすると、まずユーザーにたいして確認を求める。
このセクションの関数は特に明記しない限り予期せぬ値をリターンします。
この関数はレジスターregのコンテンツ、コンテンツがなければnil
をリターンする。
この関数はレジスターregのコンテンツにvalueをセットする。レジスターには任意の値をセットできるが、その他のレジスター関数は特定のデータ型を期待する。リターン値はvalue。
このコマンドはレジスターregに何が含まれているかを表示する。
このコマンドはカレントバッファーにレジスターregのコンテンツを挿入する。
このコマンドは通常、ポイントを挿入したテキストの前、後にマークを置く。しかしオプションの第2引きbeforepが非nil
なら、マークを前、ポイントを後に置くインタラクティブな呼び出しでは、プレフィクス引数を与えることにより、2つ目の引数beforepにnil
を渡すことができる。
レジスターに矩形が含まれる場合には、その矩形はポイントの左上隅に挿入される。これはそのテキストがカレント行と、その下に続く行に挿入されることを意味する。
レジスターが保存されたテキスト(文字列)または矩形(リスク)以外の何かを含む場合には、現在のところは役に立つようなことは起きない。これは将来変更されるかもしれない。
この関数はprompt、およびもしかしたら既存レジスターとそのコンテンツをプレビューしてレジスターの名前を読み取ってレジスター名をリターンする。このプレビューはユーザーオプションregister-preview-delay
とregister-alist
がいずれも非nil
なら、register-preview-delay
で指定された遅延の後に一時ウィンドウ内に表示される。このプレビューはユーザーが(たとえばヘルプ文字のタイプにより)ヘルプを要求した場合にも表示される。レジスター名を読み取るンタラクティブな関数には、この関数の使用を推奨する。