aboutsummaryrefslogtreecommitdiffstats
path: root/src/buffer.c
diff options
context:
space:
mode:
authorJuri Linkov2019-10-01 23:15:03 +0300
committerJuri Linkov2019-10-01 23:15:03 +0300
commit2698d3dba2e9858b026ed127d4de3f86810a5ef3 (patch)
tree8e9b8f194cfcad8af83a4174a0105bbc691f06d6 /src/buffer.c
parent25f45d710e91a7c1049f056ff27bc3e6968f5624 (diff)
parent3f981a0a89bca47a207fb362485f07e7322bb145 (diff)
downloademacs-2698d3dba2e9858b026ed127d4de3f86810a5ef3.tar.gz
emacs-2698d3dba2e9858b026ed127d4de3f86810a5ef3.zip
Merge branch 'feature/tabs'
Diffstat (limited to 'src/buffer.c')
-rw-r--r--src/buffer.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/buffer.c b/src/buffer.c
index 77e8b6bb779..8cb28d8aa70 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -249,6 +249,11 @@ bset_header_line_format (struct buffer *b, Lisp_Object val)
249 b->header_line_format_ = val; 249 b->header_line_format_ = val;
250} 250}
251static void 251static void
252bset_tab_line_format (struct buffer *b, Lisp_Object val)
253{
254 b->tab_line_format_ = val;
255}
256static void
252bset_indicate_buffer_boundaries (struct buffer *b, Lisp_Object val) 257bset_indicate_buffer_boundaries (struct buffer *b, Lisp_Object val)
253{ 258{
254 b->indicate_buffer_boundaries_ = val; 259 b->indicate_buffer_boundaries_ = val;
@@ -1329,7 +1334,7 @@ No argument or nil as argument means use current buffer as BUFFER. */)
1329DEFUN ("force-mode-line-update", Fforce_mode_line_update, 1334DEFUN ("force-mode-line-update", Fforce_mode_line_update,
1330 Sforce_mode_line_update, 0, 1, 0, 1335 Sforce_mode_line_update, 0, 1, 0,
1331 doc: /* Force redisplay of the current buffer's mode line and header line. 1336 doc: /* Force redisplay of the current buffer's mode line and header line.
1332With optional non-nil ALL, force redisplay of all mode lines and 1337With optional non-nil ALL, force redisplay of all mode lines, tab lines and
1333header lines. This function also forces recomputation of the 1338header lines. This function also forces recomputation of the
1334menu bar menus and the frame title. */) 1339menu bar menus and the frame title. */)
1335 (Lisp_Object all) 1340 (Lisp_Object all)
@@ -5194,6 +5199,7 @@ init_buffer_once (void)
5194 XSETFASTINT (BVAR (&buffer_local_flags, scroll_up_aggressively), idx); ++idx; 5199 XSETFASTINT (BVAR (&buffer_local_flags, scroll_up_aggressively), idx); ++idx;
5195 XSETFASTINT (BVAR (&buffer_local_flags, scroll_down_aggressively), idx); ++idx; 5200 XSETFASTINT (BVAR (&buffer_local_flags, scroll_down_aggressively), idx); ++idx;
5196 XSETFASTINT (BVAR (&buffer_local_flags, header_line_format), idx); ++idx; 5201 XSETFASTINT (BVAR (&buffer_local_flags, header_line_format), idx); ++idx;
5202 XSETFASTINT (BVAR (&buffer_local_flags, tab_line_format), idx); ++idx;
5197 XSETFASTINT (BVAR (&buffer_local_flags, cursor_type), idx); ++idx; 5203 XSETFASTINT (BVAR (&buffer_local_flags, cursor_type), idx); ++idx;
5198 XSETFASTINT (BVAR (&buffer_local_flags, extra_line_spacing), idx); ++idx; 5204 XSETFASTINT (BVAR (&buffer_local_flags, extra_line_spacing), idx); ++idx;
5199 XSETFASTINT (BVAR (&buffer_local_flags, cursor_in_non_selected_windows), idx); ++idx; 5205 XSETFASTINT (BVAR (&buffer_local_flags, cursor_in_non_selected_windows), idx); ++idx;
@@ -5239,6 +5245,7 @@ init_buffer_once (void)
5239 /* real setup is done in bindings.el */ 5245 /* real setup is done in bindings.el */
5240 bset_mode_line_format (&buffer_defaults, build_pure_c_string ("%-")); 5246 bset_mode_line_format (&buffer_defaults, build_pure_c_string ("%-"));
5241 bset_header_line_format (&buffer_defaults, Qnil); 5247 bset_header_line_format (&buffer_defaults, Qnil);
5248 bset_tab_line_format (&buffer_defaults, Qnil);
5242 bset_abbrev_mode (&buffer_defaults, Qnil); 5249 bset_abbrev_mode (&buffer_defaults, Qnil);
5243 bset_overwrite_mode (&buffer_defaults, Qnil); 5250 bset_overwrite_mode (&buffer_defaults, Qnil);
5244 bset_case_fold_search (&buffer_defaults, Qt); 5251 bset_case_fold_search (&buffer_defaults, Qt);
@@ -5510,6 +5517,13 @@ syms_of_buffer (void)
5510 Fput (Qprotected_field, Qerror_message, 5517 Fput (Qprotected_field, Qerror_message,
5511 build_pure_c_string ("Attempt to modify a protected field")); 5518 build_pure_c_string ("Attempt to modify a protected field"));
5512 5519
5520 DEFVAR_PER_BUFFER ("tab-line-format",
5521 &BVAR (current_buffer, tab_line_format),
5522 Qnil,
5523 doc: /* Analogous to `mode-line-format', but controls the tab line.
5524The tab line appears, optionally, at the top of a window;
5525the mode line appears at the bottom. */);
5526
5513 DEFVAR_PER_BUFFER ("header-line-format", 5527 DEFVAR_PER_BUFFER ("header-line-format",
5514 &BVAR (current_buffer, header_line_format), 5528 &BVAR (current_buffer, header_line_format),
5515 Qnil, 5529 Qnil,