summaryrefslogtreecommitdiff
path: root/src/buffer.h
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>1999-07-21 21:43:52 +0000
committerGerd Moellmann <gerd@gnu.org>1999-07-21 21:43:52 +0000
commit2d8c80b12e2496188513663162d7756c1ccf91d3 (patch)
tree39ae32055a76ff089dc52b316eb9213fceb7231a /src/buffer.h
parent5e6d54931471a67bcd1cc1d44166f0e2430d027f (diff)
downloademacs-2d8c80b12e2496188513663162d7756c1ccf91d3.tar.gz
Add top_line_format.
(scroll_up_aggressively): New. (scroll_down_aggressively): New. (struct buffer): indicate_empty_lines renamed from indicate_zv_lines. (struct buffer): New member indicate_zv_lines. (struct buffer): New members left_margin_width and right_margin_width. (struct buffer): Add member minibuffer_prompt_length if PROMPT_IN_BUFFER.
Diffstat (limited to 'src/buffer.h')
-rw-r--r--src/buffer.h33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/buffer.h b/src/buffer.h
index 6e783373bd0..4928333cd43 100644
--- a/src/buffer.h
+++ b/src/buffer.h
@@ -485,9 +485,15 @@ struct buffer
/* Everything from here down must be a Lisp_Object */
-
/* The name of this buffer. */
Lisp_Object name;
+
+#if !NO_PROMPT_IN_BUFFER
+ /* Amount at the start of the buffer used by a minibuffer prompt,
+ or nil if this buffer is not a mini-buffer. */
+ Lisp_Object minibuffer_prompt_length;
+#endif
+
/* The name of the file visited in this buffer, or nil. */
Lisp_Object filename;
/* Dir for expanding relative file names. */
@@ -522,6 +528,10 @@ struct buffer
Lisp_Object mode_name;
/* Mode line element that controls format of mode line. */
Lisp_Object mode_line_format;
+
+ /* Analogous to mode_line_format for the line displayed at the top
+ of windows. Nil means don't display that line. */
+ Lisp_Object top_line_format;
/* Keys that are bound local to this buffer. */
Lisp_Object keymap;
@@ -652,9 +662,29 @@ struct buffer
/* Incremented each time the buffer is displayed in a window. */
Lisp_Object display_count;
+ /* Widths of left and right marginal areas for windows displaying
+ this buffer. */
+ Lisp_Object left_margin_width, right_margin_width;
+
+ /* Non-nil means indicate lines not displaying text (in a style
+ like vi). */
+ Lisp_Object indicate_empty_lines;
+
/* Time stamp updated each time this buffer is displayed in a window. */
Lisp_Object display_time;
+ /* If scrolling the display because point is below the bottom of a
+ window showing this buffer, try to choose a window start so
+ that point ends up this number of lines from the top of the
+ window. Nil means that scrolling method isn't used. */
+ Lisp_Object scroll_up_aggressively;
+
+ /* If scrolling the display because point is above the top of a
+ window showing this buffer, try to choose a window start so
+ that point ends up this number of lines from the bottom of the
+ window. Nil means that scrolling method isn't used. */
+ Lisp_Object scroll_down_aggressively;
+
/* These are so we don't have to recompile everything
the next few times we add a new slot. */
Lisp_Object extra2, extra3;
@@ -772,3 +802,4 @@ extern Lisp_Object Vtransient_mark_mode;
#define BUFFER_FREE(data) (free ((data)))
#define R_ALLOC_DECLARE(var,data)
#endif
+