以下のコマンドにより、編集セッション間でabbrev定義を維持できます。
すべてのabbrev定義の記述を、ファイルfileに書き込みます。
ファイルfileを読み込み、そこで指定されているabbrevを定義します。
カレントバッファーの定義からabbrevを定義します。
すべてのabbrevとそれらの展開結果を、カレントバッファーに挿入します。
M-x write-abbrev-fileは、ミニバッファーを使用してファイル名を読み取り、すべてのカレントのabbrev定義の記述を、そのファイルに書き込みます。これは後のセッションで使用するために、abbrev定義を保存するのに使われます。ファイルに保存されるテキストは一連のLisp式で、それが実行されると保存したときと同じabbrevを定義します。
M-x
read-abbrev-fileは、ミニバッファーを使用してファイル名を読み取り、ファイル内容に対応するabbrevを定義します。関数quietly-read-abbrev-file
も同様ですが、これはエコーエリアにメッセージを表示しません。これを対話的に呼び出すことはできず、主にinitファイル(Emacs初期化ファイルを参照してください)で使用されます。どちらの関数も引数にnil
が指定されると、変数abbrev-file-name
で与えられるファイルを使用します。この変数のデフォルトは~/.emacs.d/abbrev_defsです。これは標準のabbrev定義ファイルで、Emacsは起動時にこのファイルから自動的にabbrevをロードします(例外としてEmacsがバッチモードで開始されたときはabbrevファイルをロードしません。バッチモードについての説明は、初期化オプションを参照してください)。
abbrevのどれかを変更した場合、Emacsは((C-x sやC-x
C-cなどで)、すべてのファイルの保存するか尋ねるときにabbrevについても尋ねます。これはabbrev-file-name
で指定したファイルに、それらを保存します。この機能は変数save-abbrevs
をnil
にセットすることにより抑止できます。silently
にセットすることにより、確認なしでabbrevが保存されるようになります。
コマンドM-x insert-abbrevsおよびM-x define-abbrevsは、前のコマンドと似ていますが、Emacsバッファーのテキストにたいして機能します。M-x insert-abbrevsは、カレントのabbrev定義の記述をカレントバッファーのポイントの後ろにテキストとして挿入します。M-x define-abbrevsは、カレントバッファー全体を解析して、対応するabbrevを定義します。