GNU Emacs Lisp Reference Manual
B.5.1: Buffer Internals
Buffers contain fields not directly accessible by the Lisp programmer. We describe them here, naming them by the names used in the C code. Many are accessible indirectly in Lisp programs via Lisp primitives.
name- The buffer name is a string that names the buffer. It is guaranteed to be unique. See Buffer Names.
save_modified- This field contains the time when the buffer was last saved, as an integer. See Buffer Modification.
modtime- This field contains the modification time of the visited file. It is set when the file is written or read. Every time the buffer is written to the file, this field is compared to the modification time of the file. See Buffer Modification.
auto_save_modified- This field contains the time when the buffer was last auto-saved.
last_window_start- This field contains the
window-start position in the buffer as of the last time the buffer was displayed in a window. undo_list- This field points to the buffer's undo list. See Undo.
syntax_table_v- This field contains the syntax table for the buffer. See Syntax Tables.
downcase_table- This field contains the conversion table for converting text to lower case. See Case Table.
upcase_table- This field contains the conversion table for converting text to upper case. See Case Table.
case_canon_table- This field contains the conversion table for canonicalizing text for case-folding search. See Case Table.
case_eqv_table- This field contains the equivalence table for case-folding search. See Case Table.
display_table- This field contains the buffer's display table, or
nil if it doesn't have one. See Display Tables. markers- This field contains the chain of all markers that currently point into the buffer. Deletion of text in the buffer, and motion of the buffer's gap, must check each of these markers and perhaps update it. See Markers.
backed_up- This field is a flag that tells whether a backup file has been made for the visited file of this buffer.
mark- This field contains the mark for the buffer. The mark is a marker, hence it is also included on the list
markers. See The Mark. mark_active- This field is non-
nil if the buffer's mark is active. local_var_alist- This field contains the association list describing the variables local in this buffer, and their values, with the exception of local variables that have special slots in the buffer object. (Those slots are omitted from this table.) See Buffer-Local Variables.
base_buffer- This field holds the buffer's base buffer (if it is an indirect buffer), or
nil. keymap- This field holds the buffer's local keymap. See Keymaps.
overlay_center- This field holds the current overlay center position. See Overlays.
overlays_before- This field holds a list of the overlays in this buffer that end at or before the current overlay center position. They are sorted in order of decreasing end position.
overlays_after- This field holds a list of the overlays in this buffer that end after the current overlay center position. They are sorted in order of increasing beginning position.