B.6.1 バッファの内部
バッファには、Lispプログラマが直接には参照できないフィールドがあります。
それらをCのコードで使っている名前で以下に述べます。
多くはLisp基本関数を介してLispプログラムから間接的に参照できます。
name
-
バッファ名はバッファを指名する文字列である。
これは一意であることが保証される。
see Buffer Names。
save_modified
-
このフィールドは、バッファが最後に保存された時刻を整数で保持する。
see Buffer Modification。
modtime
-
このフィールドは、訪問しているファイルの更新時刻を保持している。
これはファイルを読み書きしたときに設定される。
バッファをファイルに書き込むたびに、
このフィールドとファイルの更新時刻を比較する。
see Buffer Modification。
auto_save_modified
-
このフィールドは、バッファを最後に自動保存した時刻を保持する。
last_window_start
-
このフィールドは、バッファをウィンドウに最後に表示したときの
バッファの
window-start
(表示開始)位置を保持する。
undo_list
-
このフィールドは、バッファのアンドゥリストを保持する。
see Undo。
syntax_table_v
-
このフィールドは、バッファの構文テーブルを保持する。
see Syntax Tables。
downcase_table
-
このフィールドは、テキストを小文字に変換するための変換表を保持する。
see Case Tables。
upcase_table
-
このフィールドは、テキストを大文字に変換するための変換表を保持する。
see Case Tables。
case_canon_table
-
このフィールドは、大文字小文字を区別しない探索のために
テキストを正則にするための変換表を保持する。
see Case Tables。
case_eqv_table
-
このフィールドは、大文字小文字を区別しない探索のための
同値テーブルを保持する。
see Case Tables。
display_table
-
このフィールドは、バッファの表示テーブルを保持する。
表示テーブルがなければ
nil
である。
see Display Tables。
markers
-
このフィールドは、バッファを現在指しているすべてのマーカの連鎖を
保持している。
バッファからテキストを削除したり、バッファのギャップが移動すると、
これらのマーカのおのおのを検査し更新する必要がある。
see Markers。
backed_up
-
このフィールドは、このバッファで訪問しているファイルの
バックアップファイルを作成したかどうかを表すフラグである。
mark
-
このフィールドは、バッファのマークを保持する。
マークはマーカであり、そのためリスト
markers
にも含まれている。
see The Mark。
mark_active
-
バッファのマークが活性であれば、
このフィールドは
nil
以外である。
local_var_alist
-
このフィールドは、このバッファにバッファローカルな変数を記述した
連想リストを保持している。
バッファオブジェクトに特別な場所がある組み込みのバッファローカルな変数は
含まない。
(それらはこの一覧では省いた。)
see Buffer-Local Variables。
base_buffer
-
このフィールドは、(間接バッファであれば)バッファの基底バッファ、あるいは、
nil
を保持する。
keymap
-
このフィールドは、バッファのローカルキーマップを保持する。
see Keymaps。
overlay_center
-
このフィールドは、現在のオーバレイの中央位置を保持する。
see Overlays。
overlays_before
-
このフィールドは、バッファの現在のオーバレイの中央位置か
それよりまえで終るこのバッファのオーバレイのリストを保持している。
それらは終了位置が減る順に並んでいる。
overlays_after
-
このフィールドは、バッファの現在のオーバレイの中央位置より
うしろで終るこのバッファのオーバレイのリストを保持している。
それらは開始位置が増える順に並んでいる。
enable_multibyte_characters
-
このフィールドは、
enable-multibyte-characters
の
バッファローカルな値を保持しており、
t
かnil
である。