comparison src/buffer.c @ 39802:efbac46c874c

(Fbury_buffer): Don't try to remove the buffer from the selected window if it's not displayed there. Handle the case when the window is dedicated. (syms_of_buffer): Fix docstrings not to mention "buffer-local" anymore.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Fri, 12 Oct 2001 02:01:23 +0000
parents 42b7a798ff79
children 820d9cd6761a
comparison
equal deleted inserted replaced
39801:15e8f4bb24a0 39802:efbac46c874c
1568 Fset_buffer_major_mode (buf); 1568 Fset_buffer_major_mode (buf);
1569 } 1569 }
1570 } 1570 }
1571 Fset_buffer (buf); 1571 Fset_buffer (buf);
1572 if (NILP (norecord)) 1572 if (NILP (norecord))
1573 /* This seems bogus since Fselect_window will call record_buffer anyway. */
1573 record_buffer (buf); 1574 record_buffer (buf);
1574 Fselect_window (Fdisplay_buffer (buf, other_window, Qnil)); 1575 Fselect_window (Fdisplay_buffer (buf, other_window, Qnil));
1575 return buf; 1576 return buf;
1576 } 1577 }
1577 1578
1824 register Lisp_Object buffer; 1825 register Lisp_Object buffer;
1825 { 1826 {
1826 /* Figure out what buffer we're going to bury. */ 1827 /* Figure out what buffer we're going to bury. */
1827 if (NILP (buffer)) 1828 if (NILP (buffer))
1828 { 1829 {
1830 Lisp_Object tem;
1829 XSETBUFFER (buffer, current_buffer); 1831 XSETBUFFER (buffer, current_buffer);
1830 1832
1833 tem = Fwindow_buffer (selected_window);
1831 /* If we're burying the current buffer, unshow it. */ 1834 /* If we're burying the current buffer, unshow it. */
1832 Fswitch_to_buffer (Fother_buffer (buffer, Qnil, Qnil), Qnil); 1835 if (EQ (buffer, tem))
1836 if (NILP (Fwindow_dedicated_p (selected_window)))
1837 Fswitch_to_buffer (Fother_buffer (buffer, Qnil, Qnil), Qnil);
1838 else if (NILP (XWINDOW (selected_window)->parent))
1839 Ficonify_frame (Fwindow_frame (selected_window));
1840 else
1841 Fdelete_window (selected_window);
1833 } 1842 }
1834 else 1843 else
1835 { 1844 {
1836 Lisp_Object buf1; 1845 Lisp_Object buf1;
1837 1846
5157 DEFVAR_PER_BUFFER ("mode-name", &current_buffer->mode_name, 5166 DEFVAR_PER_BUFFER ("mode-name", &current_buffer->mode_name,
5158 make_number (Lisp_String), 5167 make_number (Lisp_String),
5159 "Pretty name of current buffer's major mode (a string)."); 5168 "Pretty name of current buffer's major mode (a string).");
5160 5169
5161 DEFVAR_PER_BUFFER ("abbrev-mode", &current_buffer->abbrev_mode, Qnil, 5170 DEFVAR_PER_BUFFER ("abbrev-mode", &current_buffer->abbrev_mode, Qnil,
5162 "Non-nil turns on automatic expansion of abbrevs as they are inserted.\n\ 5171 "Non-nil turns on automatic expansion of abbrevs as they are inserted.");
5163 Automatically becomes buffer-local when set in any fashion.");
5164 5172
5165 DEFVAR_PER_BUFFER ("case-fold-search", &current_buffer->case_fold_search, 5173 DEFVAR_PER_BUFFER ("case-fold-search", &current_buffer->case_fold_search,
5166 Qnil, 5174 Qnil,
5167 "*Non-nil if searches and matches should ignore case.\n\ 5175 "*Non-nil if searches and matches should ignore case.");
5168 Automatically becomes buffer-local when set in any fashion.");
5169 5176
5170 DEFVAR_PER_BUFFER ("fill-column", &current_buffer->fill_column, 5177 DEFVAR_PER_BUFFER ("fill-column", &current_buffer->fill_column,
5171 make_number (Lisp_Int), 5178 make_number (Lisp_Int),
5172 "*Column beyond which automatic line-wrapping should happen.\n\ 5179 "*Column beyond which automatic line-wrapping should happen.");
5173 Automatically becomes buffer-local when set in any fashion.");
5174 5180
5175 DEFVAR_PER_BUFFER ("left-margin", &current_buffer->left_margin, 5181 DEFVAR_PER_BUFFER ("left-margin", &current_buffer->left_margin,
5176 make_number (Lisp_Int), 5182 make_number (Lisp_Int),
5177 "*Column for the default indent-line-function to indent to.\n\ 5183 "*Column for the default indent-line-function to indent to.\n\
5178 Linefeed indents to this column in Fundamental mode.\n\ 5184 Linefeed indents to this column in Fundamental mode.");
5179 Automatically becomes buffer-local when set in any fashion.");
5180 5185
5181 DEFVAR_PER_BUFFER ("tab-width", &current_buffer->tab_width, 5186 DEFVAR_PER_BUFFER ("tab-width", &current_buffer->tab_width,
5182 make_number (Lisp_Int), 5187 make_number (Lisp_Int),
5183 "*Distance between tab stops (for display of tab characters), in columns.\n\ 5188 "*Distance between tab stops (for display of tab characters), in columns.");
5184 Automatically becomes buffer-local when set in any fashion.");
5185 5189
5186 DEFVAR_PER_BUFFER ("ctl-arrow", &current_buffer->ctl_arrow, Qnil, 5190 DEFVAR_PER_BUFFER ("ctl-arrow", &current_buffer->ctl_arrow, Qnil,
5187 "*Non-nil means display control chars with uparrow.\n\ 5191 "*Non-nil means display control chars with uparrow.\n\
5188 A value of nil means use backslash and octal digits.\n\ 5192 A value of nil means use backslash and octal digits.\n\
5189 Automatically becomes buffer-local when set in any fashion.\n\
5190 This variable does not apply to characters whose display is specified\n\ 5193 This variable does not apply to characters whose display is specified\n\
5191 in the current display table (if there is one)."); 5194 in the current display table (if there is one).");
5192 5195
5193 DEFVAR_PER_BUFFER ("enable-multibyte-characters", 5196 DEFVAR_PER_BUFFER ("enable-multibyte-characters",
5194 &current_buffer->enable_multibyte_characters, 5197 &current_buffer->enable_multibyte_characters,
5214 unless some coding system is specified in `file-coding-system-alist'\n\ 5217 unless some coding system is specified in `file-coding-system-alist'\n\
5215 for the buffer file.\n\ 5218 for the buffer file.\n\
5216 \n\ 5219 \n\
5217 The variable `coding-system-for-write', if non-nil, overrides this variable.\n\ 5220 The variable `coding-system-for-write', if non-nil, overrides this variable.\n\
5218 \n\ 5221 \n\
5219 This variable is never applied to a way of decoding\n\ 5222 This variable is never applied to a way of decoding a file while reading it.");
5220 a file while reading it.");
5221 5223
5222 DEFVAR_PER_BUFFER ("direction-reversed", &current_buffer->direction_reversed, 5224 DEFVAR_PER_BUFFER ("direction-reversed", &current_buffer->direction_reversed,
5223 Qnil, 5225 Qnil,
5224 "*Non-nil means lines in the buffer are displayed right to left."); 5226 "*Non-nil means lines in the buffer are displayed right to left.");
5225 5227
5226 DEFVAR_PER_BUFFER ("truncate-lines", &current_buffer->truncate_lines, Qnil, 5228 DEFVAR_PER_BUFFER ("truncate-lines", &current_buffer->truncate_lines, Qnil,
5227 "*Non-nil means do not display continuation lines;\n\ 5229 "*Non-nil means do not display continuation lines;\n\
5228 give each line of text one screen line.\n\ 5230 give each line of text one screen line.\n\
5229 Automatically becomes buffer-local when set in any fashion.\n\
5230 \n\ 5231 \n\
5231 Note that this is overridden by the variable\n\ 5232 Note that this is overridden by the variable\n\
5232 `truncate-partial-width-windows' if that variable is non-nil\n\ 5233 `truncate-partial-width-windows' if that variable is non-nil\n\
5233 and this buffer is not full-frame width."); 5234 and this buffer is not full-frame width.");
5234 5235
5242 #endif 5243 #endif
5243 5244
5244 DEFVAR_PER_BUFFER ("default-directory", &current_buffer->directory, 5245 DEFVAR_PER_BUFFER ("default-directory", &current_buffer->directory,
5245 make_number (Lisp_String), 5246 make_number (Lisp_String),
5246 "Name of default directory of current buffer. Should end with slash.\n\ 5247 "Name of default directory of current buffer. Should end with slash.\n\
5247 Each buffer has its own value of this variable. To change the\n\ 5248 To interactively change the default directory, use command `cd'.");
5248 default directory, use function `cd'.");
5249 5249
5250 DEFVAR_PER_BUFFER ("auto-fill-function", &current_buffer->auto_fill_function, 5250 DEFVAR_PER_BUFFER ("auto-fill-function", &current_buffer->auto_fill_function,
5251 Qnil, 5251 Qnil,
5252 "Function called (if non-nil) to perform auto-fill.\n\ 5252 "Function called (if non-nil) to perform auto-fill.\n\
5253 It is called after self-inserting any character specified in\n\ 5253 It is called after self-inserting any character specified in\n\
5254 the `auto-fill-chars' table.\n\ 5254 the `auto-fill-chars' table.\n\
5255 Each buffer has its own value of this variable.\n\
5256 NOTE: This variable is not a hook;\n\ 5255 NOTE: This variable is not a hook;\n\
5257 its value may not be a list of functions."); 5256 its value may not be a list of functions.");
5258 5257
5259 DEFVAR_PER_BUFFER ("buffer-file-name", &current_buffer->filename, 5258 DEFVAR_PER_BUFFER ("buffer-file-name", &current_buffer->filename,
5260 make_number (Lisp_String), 5259 make_number (Lisp_String),
5261 "Name of file visited in current buffer, or nil if not visiting a file.\n\ 5260 "Name of file visited in current buffer, or nil if not visiting a file.");
5262 Each buffer has its own value of this variable.");
5263 5261
5264 DEFVAR_PER_BUFFER ("buffer-file-truename", &current_buffer->file_truename, 5262 DEFVAR_PER_BUFFER ("buffer-file-truename", &current_buffer->file_truename,
5265 make_number (Lisp_String), 5263 make_number (Lisp_String),
5266 "Abbreviated truename of file visited in current buffer, or nil if none.\n\ 5264 "Abbreviated truename of file visited in current buffer, or nil if none.\n\
5267 The truename of a file is calculated by `file-truename'\n\ 5265 The truename of a file is calculated by `file-truename'\n\
5268 and then abbreviated with `abbreviate-file-name'.\n\ 5266 and then abbreviated with `abbreviate-file-name'.");
5269 Each buffer has its own value of this variable.");
5270 5267
5271 DEFVAR_PER_BUFFER ("buffer-auto-save-file-name", 5268 DEFVAR_PER_BUFFER ("buffer-auto-save-file-name",
5272 &current_buffer->auto_save_file_name, 5269 &current_buffer->auto_save_file_name,
5273 make_number (Lisp_String), 5270 make_number (Lisp_String),
5274 "Name of file for auto-saving current buffer,\n\ 5271 "Name of file for auto-saving current buffer,\n\
5275 or nil if buffer should not be auto-saved.\n\ 5272 or nil if buffer should not be auto-saved.");
5276 Each buffer has its own value of this variable.");
5277 5273
5278 DEFVAR_PER_BUFFER ("buffer-read-only", &current_buffer->read_only, Qnil, 5274 DEFVAR_PER_BUFFER ("buffer-read-only", &current_buffer->read_only, Qnil,
5279 "Non-nil if this buffer is read-only.\n\ 5275 "Non-nil if this buffer is read-only.");
5280 Each buffer has its own value of this variable.");
5281 5276
5282 DEFVAR_PER_BUFFER ("buffer-backed-up", &current_buffer->backed_up, Qnil, 5277 DEFVAR_PER_BUFFER ("buffer-backed-up", &current_buffer->backed_up, Qnil,
5283 "Non-nil if this buffer's file has been backed up.\n\ 5278 "Non-nil if this buffer's file has been backed up.\n\
5284 Backing up is done before the first time the file is saved.\n\ 5279 Backing up is done before the first time the file is saved.");
5285 Each buffer has its own value of this variable.");
5286 5280
5287 DEFVAR_PER_BUFFER ("buffer-saved-size", &current_buffer->save_length, 5281 DEFVAR_PER_BUFFER ("buffer-saved-size", &current_buffer->save_length,
5288 make_number (Lisp_Int), 5282 make_number (Lisp_Int),
5289 "Length of current buffer when last read in, saved or auto-saved.\n\ 5283 "Length of current buffer when last read in, saved or auto-saved.\n\
5290 0 initially.\n\ 5284 0 initially.");
5291 Each buffer has its own value of this variable.");
5292 5285
5293 DEFVAR_PER_BUFFER ("selective-display", &current_buffer->selective_display, 5286 DEFVAR_PER_BUFFER ("selective-display", &current_buffer->selective_display,
5294 Qnil, 5287 Qnil,
5295 "Non-nil enables selective display:\n\ 5288 "Non-nil enables selective display:\n\
5296 Integer N as value means display only lines\n\ 5289 Integer N as value means display only lines\n\
5297 that start with less than n columns of space.\n\ 5290 that start with less than n columns of space.\n\
5298 A value of t means, after a ^M, all the rest of the line is invisible.\n\ 5291 A value of t means, after a ^M, all the rest of the line is invisible.\n\
5299 Then ^M's in the file are written into files as newlines.\n\n\ 5292 Then ^M's in the file are written into files as newlines.");
5300 Automatically becomes buffer-local when set in any fashion.");
5301 5293
5302 #ifndef old 5294 #ifndef old
5303 DEFVAR_PER_BUFFER ("selective-display-ellipses", 5295 DEFVAR_PER_BUFFER ("selective-display-ellipses",
5304 &current_buffer->selective_display_ellipses, 5296 &current_buffer->selective_display_ellipses,
5305 Qnil, 5297 Qnil,
5306 "t means display ... on previous line when a line is invisible.\n\ 5298 "t means display ... on previous line when a line is invisible.");
5307 Automatically becomes buffer-local when set in any fashion.");
5308 #endif 5299 #endif
5309 5300
5310 DEFVAR_PER_BUFFER ("overwrite-mode", &current_buffer->overwrite_mode, Qnil, 5301 DEFVAR_PER_BUFFER ("overwrite-mode", &current_buffer->overwrite_mode, Qnil,
5311 "Non-nil if self-insertion should replace existing text.\n\ 5302 "Non-nil if self-insertion should replace existing text.\n\
5312 The value should be one of `overwrite-mode-textual',\n\ 5303 The value should be one of `overwrite-mode-textual',\n\
5313 `overwrite-mode-binary', or nil.\n\ 5304 `overwrite-mode-binary', or nil.\n\
5314 If it is `overwrite-mode-textual', self-insertion still\n\ 5305 If it is `overwrite-mode-textual', self-insertion still\n\
5315 inserts at the end of a line, and inserts when point is before a tab,\n\ 5306 inserts at the end of a line, and inserts when point is before a tab,\n\
5316 until the tab is filled in.\n\ 5307 until the tab is filled in.\n\
5317 If `overwrite-mode-binary', self-insertion replaces newlines and tabs too.\n\ 5308 If `overwrite-mode-binary', self-insertion replaces newlines and tabs too.");
5318 Automatically becomes buffer-local when set in any fashion.");
5319 5309
5320 #if 0 /* The doc string is too long for some compilers, 5310 #if 0 /* The doc string is too long for some compilers,
5321 but make-docfile can find it in this comment. */ 5311 but make-docfile can find it in this comment. */
5322 DEFVAR_PER_BUFFER ("buffer-display-table", &current_buffer->display_table, 5312 DEFVAR_PER_BUFFER ("buffer-display-table", &current_buffer->display_table,
5323 Qnil, 5313 Qnil,
5324 "Display table that controls display of the contents of current buffer.\n\ 5314 "Display table that controls display of the contents of current buffer.\n\
5325 Automatically becomes buffer-local when set in any fashion.\n\
5326 \n\ 5315 \n\
5327 If this variable is nil, the value of `standard-display-table' is used.\n\ 5316 If this variable is nil, the value of `standard-display-table' is used.\n\
5328 Each window can have its own, overriding display table, see\n\ 5317 Each window can have its own, overriding display table, see\n\
5329 `set-window-display-table' and `window-display-table'.\n\ 5318 `set-window-display-table' and `window-display-table'.\n\
5330 \n\ 5319 \n\
5361 Qnil, 0); 5350 Qnil, 0);
5362 5351
5363 DEFVAR_PER_BUFFER ("left-margin-width", &current_buffer->left_margin_width, 5352 DEFVAR_PER_BUFFER ("left-margin-width", &current_buffer->left_margin_width,
5364 Qnil, 5353 Qnil,
5365 "*Width of left marginal area for display of a buffer.\n\ 5354 "*Width of left marginal area for display of a buffer.\n\
5366 Automatically becomes buffer-local when set in any fashion.\n\
5367 A value of nil means no marginal area."); 5355 A value of nil means no marginal area.");
5368 5356
5369 DEFVAR_PER_BUFFER ("right-margin-width", &current_buffer->right_margin_width, 5357 DEFVAR_PER_BUFFER ("right-margin-width", &current_buffer->right_margin_width,
5370 Qnil, 5358 Qnil,
5371 "*Width of right marginal area for display of a buffer.\n\ 5359 "*Width of right marginal area for display of a buffer.\n\
5372 Automatically becomes buffer-local when set in any fashion.\n\
5373 A value of nil means no marginal area."); 5360 A value of nil means no marginal area.");
5374 5361
5375 DEFVAR_PER_BUFFER ("indicate-empty-lines", 5362 DEFVAR_PER_BUFFER ("indicate-empty-lines",
5376 &current_buffer->indicate_empty_lines, Qnil, 5363 &current_buffer->indicate_empty_lines, Qnil,
5377 "*Visually indicate empty lines after the buffer end.\n\ 5364 "*Visually indicate empty lines after the buffer end.\n\
5378 If non-nil, a bitmap is displayed in the left fringe of a window on\n\ 5365 If non-nil, a bitmap is displayed in the left fringe of a window on\n\
5379 window-systems.\n\ 5366 window-systems.");
5380 Automatically becomes buffer-local when set in any fashion.\n");
5381 5367
5382 DEFVAR_PER_BUFFER ("scroll-up-aggressively", 5368 DEFVAR_PER_BUFFER ("scroll-up-aggressively",
5383 &current_buffer->scroll_up_aggressively, Qnil, 5369 &current_buffer->scroll_up_aggressively, Qnil,
5384 "*If a number, scroll display up aggressively.\n\ 5370 "*If a number, scroll display up aggressively.\n\
5385 If scrolling a window because point is above the window start, choose\n\ 5371 If scrolling a window because point is above the window start, choose\n\
5386 a new window start so that point ends up that fraction of the window's\n\ 5372 a new window start so that point ends up that fraction of the window's\n\
5387 height from the top of the window.\n\ 5373 height from the top of the window.");
5388 Automatically becomes buffer-local when set in any fashion.");
5389 5374
5390 DEFVAR_PER_BUFFER ("scroll-down-aggressively", 5375 DEFVAR_PER_BUFFER ("scroll-down-aggressively",
5391 &current_buffer->scroll_down_aggressively, Qnil, 5376 &current_buffer->scroll_down_aggressively, Qnil,
5392 "*If a number, scroll display down aggressively.\n\ 5377 "*If a number, scroll display down aggressively.\n\
5393 If scrolling a window because point is below the window end, choose\n\ 5378 If scrolling a window because point is below the window end, choose\n\
5394 a new window start so that point ends up that fraction of the window's\n\ 5379 a new window start so that point ends up that fraction of the window's\n\
5395 height from the bottom of the window.\n\ 5380 height from the bottom of the window.");
5396 Automatically becomes buffer-local when set in any fashion.");
5397 5381
5398 /*DEFVAR_LISP ("debug-check-symbol", &Vcheck_symbol, 5382 /*DEFVAR_LISP ("debug-check-symbol", &Vcheck_symbol,
5399 "Don't ask."); 5383 "Don't ask.");
5400 */ 5384 */
5401 5385
5446 5430
5447 #if 0 /* The doc string is too long for some compilers, 5431 #if 0 /* The doc string is too long for some compilers,
5448 but make-docfile can find it in this comment. */ 5432 but make-docfile can find it in this comment. */
5449 DEFVAR_PER_BUFFER ("buffer-undo-list", &current_buffer->undo_list, Qnil, 5433 DEFVAR_PER_BUFFER ("buffer-undo-list", &current_buffer->undo_list, Qnil,
5450 "List of undo entries in current buffer.\n\ 5434 "List of undo entries in current buffer.\n\
5451 This variable is always local in all buffers.\n\
5452 Recent changes come first; older changes follow newer.\n\ 5435 Recent changes come first; older changes follow newer.\n\
5453 \n\ 5436 \n\
5454 An entry (BEG . END) represents an insertion which begins at\n\ 5437 An entry (BEG . END) represents an insertion which begins at\n\
5455 position BEG and ends at position END.\n\ 5438 position BEG and ends at position END.\n\
5456 \n\ 5439 \n\
5482 #endif 5465 #endif
5483 DEFVAR_PER_BUFFER ("buffer-undo-list", &current_buffer->undo_list, Qnil, 5466 DEFVAR_PER_BUFFER ("buffer-undo-list", &current_buffer->undo_list, Qnil,
5484 0); 5467 0);
5485 5468
5486 DEFVAR_PER_BUFFER ("mark-active", &current_buffer->mark_active, Qnil, 5469 DEFVAR_PER_BUFFER ("mark-active", &current_buffer->mark_active, Qnil,
5487 "Non-nil means the mark and region are currently active in this buffer.\n\ 5470 "Non-nil means the mark and region are currently active in this buffer.");
5488 Automatically local in all buffers.");
5489 5471
5490 DEFVAR_PER_BUFFER ("cache-long-line-scans", &current_buffer->cache_long_line_scans, Qnil, 5472 DEFVAR_PER_BUFFER ("cache-long-line-scans", &current_buffer->cache_long_line_scans, Qnil,
5491 "Non-nil means that Emacs should use caches to handle long lines more quickly.\n\ 5473 "Non-nil means that Emacs should use caches to handle long lines more quickly.\n\
5492 This variable is buffer-local, in all buffers.\n\
5493 \n\ 5474 \n\
5494 Normally, the line-motion functions work by scanning the buffer for\n\ 5475 Normally, the line-motion functions work by scanning the buffer for\n\
5495 newlines. Columnar operations (like move-to-column and\n\ 5476 newlines. Columnar operations (like move-to-column and\n\
5496 compute-motion) also work by scanning the buffer, summing character\n\ 5477 compute-motion) also work by scanning the buffer, summing character\n\
5497 widths as they go. This works well for ordinary text, but if the\n\ 5478 widths as they go. This works well for ordinary text, but if the\n\
5515 maintained internally by the Emacs primitives. Enabling or disabling\n\ 5496 maintained internally by the Emacs primitives. Enabling or disabling\n\
5516 the cache should not affect the behavior of any of the motion\n\ 5497 the cache should not affect the behavior of any of the motion\n\
5517 functions; it should only affect their performance."); 5498 functions; it should only affect their performance.");
5518 5499
5519 DEFVAR_PER_BUFFER ("point-before-scroll", &current_buffer->point_before_scroll, Qnil, 5500 DEFVAR_PER_BUFFER ("point-before-scroll", &current_buffer->point_before_scroll, Qnil,
5520 "Value of point before the last series of scroll operations, or nil.\n\ 5501 "Value of point before the last series of scroll operations, or nil.");
5521 This variable is always local in all buffers.");
5522 5502
5523 DEFVAR_PER_BUFFER ("buffer-file-format", &current_buffer->file_format, Qnil, 5503 DEFVAR_PER_BUFFER ("buffer-file-format", &current_buffer->file_format, Qnil,
5524 "List of formats to use when saving this buffer.\n\ 5504 "List of formats to use when saving this buffer.\n\
5525 This variable is always local in all buffers.\n\
5526 Formats are defined by `format-alist'. This variable is\n\ 5505 Formats are defined by `format-alist'. This variable is\n\
5527 set when a file is visited. Automatically local in all buffers."); 5506 set when a file is visited. Automatically local in all buffers.");
5528 5507
5529 DEFVAR_PER_BUFFER ("buffer-invisibility-spec", 5508 DEFVAR_PER_BUFFER ("buffer-invisibility-spec",
5530 &current_buffer->invisibility_spec, Qnil, 5509 &current_buffer->invisibility_spec, Qnil,
5531 "Invisibility spec of this buffer.\n\ 5510 "Invisibility spec of this buffer.\n\
5532 This variable is always local in all buffers.\n\
5533 The default is t, which means that text is invisible\n\ 5511 The default is t, which means that text is invisible\n\
5534 if it has a non-nil `invisible' property.\n\ 5512 if it has a non-nil `invisible' property.\n\
5535 If the value is a list, a text character is invisible if its `invisible'\n\ 5513 If the value is a list, a text character is invisible if its `invisible'\n\
5536 property is an element in that list.\n\ 5514 property is an element in that list.\n\
5537 If an element is a cons cell of the form (PROP . ELLIPSIS),\n\ 5515 If an element is a cons cell of the form (PROP . ELLIPSIS),\n\
5539 and they have an ellipsis as well if ELLIPSIS is non-nil."); 5517 and they have an ellipsis as well if ELLIPSIS is non-nil.");
5540 5518
5541 DEFVAR_PER_BUFFER ("buffer-display-count", 5519 DEFVAR_PER_BUFFER ("buffer-display-count",
5542 &current_buffer->display_count, Qnil, 5520 &current_buffer->display_count, Qnil,
5543 "A number incremented each time this buffer is displayed in a window.\n\ 5521 "A number incremented each time this buffer is displayed in a window.\n\
5544 This variable is always local in all buffers.\n\
5545 The function `set-window-buffer increments it."); 5522 The function `set-window-buffer increments it.");
5546 5523
5547 DEFVAR_PER_BUFFER ("buffer-display-time", 5524 DEFVAR_PER_BUFFER ("buffer-display-time",
5548 &current_buffer->display_time, Qnil, 5525 &current_buffer->display_time, Qnil,
5549 "Time stamp updated each time this buffer is displayed in a window.\n\ 5526 "Time stamp updated each time this buffer is displayed in a window.\n\
5550 This variable is always local in all buffers.\n\
5551 The function `set-window-buffer' updates this variable\n\ 5527 The function `set-window-buffer' updates this variable\n\
5552 to the value obtained by calling `current-time'.\n\ 5528 to the value obtained by calling `current-time'.\n\
5553 If the buffer has never been shown in a window, the value is nil."); 5529 If the buffer has never been shown in a window, the value is nil.");
5554 5530
5555 DEFVAR_LISP ("transient-mark-mode", &Vtransient_mark_mode, 5531 DEFVAR_LISP ("transient-mark-mode", &Vtransient_mark_mode,