Next: , Previous: , Up: abbrevとabbrev展開   [Contents][Index]


37.3 ファイルへのabbrevの保存

abbrev定義が保存されたファイルは実際にはLispコードのファイルです。abbrevは同じコンテンツの同じabbrevテーブルを定義するLispプログラムの形式で保存されます。したがってそのファイルはloadによってロードすることができます(プログラムがロードを行う方法を参照)。しかしより簡便なインターフェースとして関数quietly-read-abbrev-fileが提供されています。Emacsは起動時に自動的にこの関数を呼び出します。

save-some-buffersのようなユーザーレベルの機能は、ここで説明する変数の制御下で自動的にabbrevをファイルに保存できます。

User Option: abbrev-file-name

これはabbrevの読み込みと保存にたいするデフォルトのファイル名。デフォルトではEmacsは~/.emacs.d/abbrev_defsを探して、見つからなければ~/.abbrev_defsを探して、いずれにもファイルが存在しなければ~/.emacs.d/abbrev_defsを作成する。

Function: quietly-read-abbrev-file &optional filename

この関数は以前にwrite-abbrev-fileで書き込まれたfilenameという名前のファイルからabbrevの定義を読み込む。filenameが省略またはnilならabbrev-file-name内で指定されているファイルが使用される。

関数の名前が暗示するようにこの関数は何のメッセージも表示しない。

User Option: save-abbrevs

save-abbrevsにたいする非nil値はファイル保存時に、(もし何か変更されていれば)Emacsがabbrevの保存を提案するべきであることを意味する。値がsilentlyならEmacsはユーザーに尋ねることなくabbrevを保存する。abbrev-file-nameはabbrevを保存するファイルを指定する。デフォルト値はt

Variable: abbrevs-changed

この変数はabbrev(システムabbrevを除く)の定義や変更によりセットされる。さまざまなEmacsコマンドにとって、これはユーザーにabbrevの保存を提案するためのフラグとしての役目をもつ。

Command: write-abbrev-file &optional filename

abbrev-table-name-list内にリストされたすべてのabbrevテーブルにたいして、ロード時に同じabbrevを定義するであろうLispプログラム形式で、すべてのabbrev定義(システムabbrevを除く)をファイルfilename内に保存する。保存すべきabbrevがないテーブルは省略する。filenamenilならabbrev-file-nameが使用される。この関数はnilをリターンする。