aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMiles Bader2001-10-17 03:16:12 +0000
committerMiles Bader2001-10-17 03:16:12 +0000
commit7ee72033eb52c5891e39c80b6db21e491ce0b187 (patch)
tree5d7f0e7a7efbf8ada6531247701ba53d6c70579d /src
parent015a8883e056cd23d926a45304b63880b7a99063 (diff)
downloademacs-7ee72033eb52c5891e39c80b6db21e491ce0b187.tar.gz
emacs-7ee72033eb52c5891e39c80b6db21e491ce0b187.zip
Change doc-string comments to `new style' [w/`doc:' keyword].
Diffstat (limited to 'src')
-rw-r--r--src/abbrev.c108
-rw-r--r--src/alloc.c151
-rw-r--r--src/buffer.c532
-rw-r--r--src/dispnew.c102
-rw-r--r--src/editfns.c461
-rw-r--r--src/term.c14
-rw-r--r--src/xdisp.c172
-rw-r--r--src/xfaces.c180
-rw-r--r--src/xfns.c276
-rw-r--r--src/xmenu.c18
-rw-r--r--src/xterm.c13
11 files changed, 1009 insertions, 1018 deletions
diff --git a/src/abbrev.c b/src/abbrev.c
index b36613ddd91..723ec1ad425 100644
--- a/src/abbrev.c
+++ b/src/abbrev.c
@@ -22,7 +22,7 @@ Boston, MA 02111-1307, USA. */
22 22
23#include <config.h> 23#include <config.h>
24#include <stdio.h> 24#include <stdio.h>
25#define DOC_STRINGS_IN_COMMENTS 25
26#include "lisp.h" 26#include "lisp.h"
27#include "commands.h" 27#include "commands.h"
28#include "buffer.h" 28#include "buffer.h"
@@ -84,15 +84,15 @@ int last_abbrev_point;
84Lisp_Object Vpre_abbrev_expand_hook, Qpre_abbrev_expand_hook; 84Lisp_Object Vpre_abbrev_expand_hook, Qpre_abbrev_expand_hook;
85 85
86DEFUN ("make-abbrev-table", Fmake_abbrev_table, Smake_abbrev_table, 0, 0, 0, 86DEFUN ("make-abbrev-table", Fmake_abbrev_table, Smake_abbrev_table, 0, 0, 0,
87 /* Create a new, empty abbrev table object. */ 87 doc: /* Create a new, empty abbrev table object. */)
88 ()) 88 ()
89{ 89{
90 return Fmake_vector (make_number (59), make_number (0)); 90 return Fmake_vector (make_number (59), make_number (0));
91} 91}
92 92
93DEFUN ("clear-abbrev-table", Fclear_abbrev_table, Sclear_abbrev_table, 1, 1, 0, 93DEFUN ("clear-abbrev-table", Fclear_abbrev_table, Sclear_abbrev_table, 1, 1, 0,
94 /* Undefine all abbrevs in abbrev table TABLE, leaving it empty. */ 94 doc: /* Undefine all abbrevs in abbrev table TABLE, leaving it empty. */)
95 (table)) 95 (table)
96 Lisp_Object table; 96 Lisp_Object table;
97{ 97{
98 int i, size; 98 int i, size;
@@ -106,7 +106,7 @@ DEFUN ("clear-abbrev-table", Fclear_abbrev_table, Sclear_abbrev_table, 1, 1, 0,
106} 106}
107 107
108DEFUN ("define-abbrev", Fdefine_abbrev, Sdefine_abbrev, 3, 5, 0, 108DEFUN ("define-abbrev", Fdefine_abbrev, Sdefine_abbrev, 3, 5, 0,
109 /* Define an abbrev in TABLE named NAME, to expand to EXPANSION and call HOOK. 109 doc: /* Define an abbrev in TABLE named NAME, to expand to EXPANSION and call HOOK.
110NAME must be a string. 110NAME must be a string.
111EXPANSION should usually be a string. 111EXPANSION should usually be a string.
112To undefine an abbrev, define it with EXPANSION = nil. 112To undefine an abbrev, define it with EXPANSION = nil.
@@ -115,8 +115,8 @@ it is called after EXPANSION is inserted.
115If EXPANSION is not a string, the abbrev is a special one, 115If EXPANSION is not a string, the abbrev is a special one,
116 which does not expand in the usual way but only runs HOOK. 116 which does not expand in the usual way but only runs HOOK.
117COUNT, if specified, initializes the abbrev's usage-count 117COUNT, if specified, initializes the abbrev's usage-count
118which is incremented each time the abbrev is used. */ 118which is incremented each time the abbrev is used. */)
119 (table, name, expansion, hook, count)) 119 (table, name, expansion, hook, count)
120 Lisp_Object table, name, expansion, hook, count; 120 Lisp_Object table, name, expansion, hook, count;
121{ 121{
122 Lisp_Object sym, oexp, ohook, tem; 122 Lisp_Object sym, oexp, ohook, tem;
@@ -149,8 +149,8 @@ which is incremented each time the abbrev is used. */
149 149
150DEFUN ("define-global-abbrev", Fdefine_global_abbrev, Sdefine_global_abbrev, 2, 2, 150DEFUN ("define-global-abbrev", Fdefine_global_abbrev, Sdefine_global_abbrev, 2, 2,
151 "sDefine global abbrev: \nsExpansion for %s: ", 151 "sDefine global abbrev: \nsExpansion for %s: ",
152 /* Define ABBREV as a global abbreviation for EXPANSION. */ 152 doc: /* Define ABBREV as a global abbreviation for EXPANSION. */)
153 (abbrev, expansion)) 153 (abbrev, expansion)
154 Lisp_Object abbrev, expansion; 154 Lisp_Object abbrev, expansion;
155{ 155{
156 Fdefine_abbrev (Vglobal_abbrev_table, Fdowncase (abbrev), 156 Fdefine_abbrev (Vglobal_abbrev_table, Fdowncase (abbrev),
@@ -160,8 +160,8 @@ DEFUN ("define-global-abbrev", Fdefine_global_abbrev, Sdefine_global_abbrev, 2,
160 160
161DEFUN ("define-mode-abbrev", Fdefine_mode_abbrev, Sdefine_mode_abbrev, 2, 2, 161DEFUN ("define-mode-abbrev", Fdefine_mode_abbrev, Sdefine_mode_abbrev, 2, 2,
162 "sDefine mode abbrev: \nsExpansion for %s: ", 162 "sDefine mode abbrev: \nsExpansion for %s: ",
163 /* Define ABBREV as a mode-specific abbreviation for EXPANSION. */ 163 doc: /* Define ABBREV as a mode-specific abbreviation for EXPANSION. */)
164 (abbrev, expansion)) 164 (abbrev, expansion)
165 Lisp_Object abbrev, expansion; 165 Lisp_Object abbrev, expansion;
166{ 166{
167 if (NILP (current_buffer->abbrev_table)) 167 if (NILP (current_buffer->abbrev_table))
@@ -173,13 +173,13 @@ DEFUN ("define-mode-abbrev", Fdefine_mode_abbrev, Sdefine_mode_abbrev, 2, 2,
173} 173}
174 174
175DEFUN ("abbrev-symbol", Fabbrev_symbol, Sabbrev_symbol, 1, 2, 0, 175DEFUN ("abbrev-symbol", Fabbrev_symbol, Sabbrev_symbol, 1, 2, 0,
176 /* Return the symbol representing abbrev named ABBREV. 176 doc: /* Return the symbol representing abbrev named ABBREV.
177This symbol's name is ABBREV, but it is not the canonical symbol of that name; 177This symbol's name is ABBREV, but it is not the canonical symbol of that name;
178it is interned in an abbrev-table rather than the normal obarray. 178it is interned in an abbrev-table rather than the normal obarray.
179The value is nil if that abbrev is not defined. 179The value is nil if that abbrev is not defined.
180Optional second arg TABLE is abbrev table to look it up in. 180Optional second arg TABLE is abbrev table to look it up in.
181The default is to try buffer's mode-specific abbrev table, then global table. */ 181The default is to try buffer's mode-specific abbrev table, then global table. */)
182 (abbrev, table)) 182 (abbrev, table)
183 Lisp_Object abbrev, table; 183 Lisp_Object abbrev, table;
184{ 184{
185 Lisp_Object sym; 185 Lisp_Object sym;
@@ -202,10 +202,10 @@ The default is to try buffer's mode-specific abbrev table, then global table. *
202} 202}
203 203
204DEFUN ("abbrev-expansion", Fabbrev_expansion, Sabbrev_expansion, 1, 2, 0, 204DEFUN ("abbrev-expansion", Fabbrev_expansion, Sabbrev_expansion, 1, 2, 0,
205 /* Return the string that ABBREV expands into in the current buffer. 205 doc: /* Return the string that ABBREV expands into in the current buffer.
206Optionally specify an abbrev table as second arg; 206Optionally specify an abbrev table as second arg;
207then ABBREV is looked up in that table only. */ 207then ABBREV is looked up in that table only. */)
208 (abbrev, table)) 208 (abbrev, table)
209 Lisp_Object abbrev, table; 209 Lisp_Object abbrev, table;
210{ 210{
211 Lisp_Object sym; 211 Lisp_Object sym;
@@ -218,10 +218,10 @@ then ABBREV is looked up in that table only. */
218 Returns 1 if an expansion is done. */ 218 Returns 1 if an expansion is done. */
219 219
220DEFUN ("expand-abbrev", Fexpand_abbrev, Sexpand_abbrev, 0, 0, "", 220DEFUN ("expand-abbrev", Fexpand_abbrev, Sexpand_abbrev, 0, 0, "",
221 /* Expand the abbrev before point, if there is an abbrev there. 221 doc: /* Expand the abbrev before point, if there is an abbrev there.
222Effective when explicitly called even when `abbrev-mode' is nil. 222Effective when explicitly called even when `abbrev-mode' is nil.
223Returns the abbrev symbol, if expansion took place. */ 223Returns the abbrev symbol, if expansion took place. */)
224 ()) 224 ()
225{ 225{
226 register char *buffer, *p; 226 register char *buffer, *p;
227 int wordstart, wordend; 227 int wordstart, wordend;
@@ -389,10 +389,10 @@ Returns the abbrev symbol, if expansion took place. */
389} 389}
390 390
391DEFUN ("unexpand-abbrev", Funexpand_abbrev, Sunexpand_abbrev, 0, 0, "", 391DEFUN ("unexpand-abbrev", Funexpand_abbrev, Sunexpand_abbrev, 0, 0, "",
392 /* Undo the expansion of the last abbrev that expanded. 392 doc: /* Undo the expansion of the last abbrev that expanded.
393This differs from ordinary undo in that other editing done since then 393This differs from ordinary undo in that other editing done since then
394is not undone. */ 394is not undone. */)
395 ()) 395 ()
396{ 396{
397 int opoint = PT; 397 int opoint = PT;
398 int adjust = 0; 398 int adjust = 0;
@@ -467,13 +467,13 @@ describe_abbrev (sym, stream)
467 467
468DEFUN ("insert-abbrev-table-description", Finsert_abbrev_table_description, 468DEFUN ("insert-abbrev-table-description", Finsert_abbrev_table_description,
469 Sinsert_abbrev_table_description, 1, 2, 0, 469 Sinsert_abbrev_table_description, 1, 2, 0,
470 /* Insert before point a full description of abbrev table named NAME. 470 doc: /* Insert before point a full description of abbrev table named NAME.
471NAME is a symbol whose value is an abbrev table. 471NAME is a symbol whose value is an abbrev table.
472If optional 2nd arg READABLE is non-nil, a human-readable description 472If optional 2nd arg READABLE is non-nil, a human-readable description
473is inserted. Otherwise the description is an expression, 473is inserted. Otherwise the description is an expression,
474a call to `define-abbrev-table', which would 474a call to `define-abbrev-table', which would
475define the abbrev table NAME exactly as it is currently defined. */ 475define the abbrev table NAME exactly as it is currently defined. */)
476 (name, readable)) 476 (name, readable)
477 Lisp_Object name, readable; 477 Lisp_Object name, readable;
478{ 478{
479 Lisp_Object table; 479 Lisp_Object table;
@@ -507,10 +507,10 @@ define the abbrev table NAME exactly as it is currently defined. */
507 507
508DEFUN ("define-abbrev-table", Fdefine_abbrev_table, Sdefine_abbrev_table, 508DEFUN ("define-abbrev-table", Fdefine_abbrev_table, Sdefine_abbrev_table,
509 2, 2, 0, 509 2, 2, 0,
510 /* Define TABLENAME (a symbol) as an abbrev table name. 510 doc: /* Define TABLENAME (a symbol) as an abbrev table name.
511Define abbrevs in it according to DEFINITIONS, which is a list of elements 511Define abbrevs in it according to DEFINITIONS, which is a list of elements
512of the form (ABBREVNAME EXPANSION HOOK USECOUNT). */ 512of the form (ABBREVNAME EXPANSION HOOK USECOUNT). */)
513 (tablename, definitions)) 513 (tablename, definitions)
514 Lisp_Object tablename, definitions; 514 Lisp_Object tablename, definitions;
515{ 515{
516 Lisp_Object name, exp, hook, count; 516 Lisp_Object name, exp, hook, count;
@@ -541,64 +541,64 @@ of the form (ABBREVNAME EXPANSION HOOK USECOUNT). */
541void 541void
542syms_of_abbrev () 542syms_of_abbrev ()
543{ 543{
544 DEFVAR_LISP ("abbrev-table-name-list", &Vabbrev_table_name_list 544 DEFVAR_LISP ("abbrev-table-name-list", &Vabbrev_table_name_list,
545 /* List of symbols whose values are abbrev tables. */); 545 doc: /* List of symbols whose values are abbrev tables. */);
546 Vabbrev_table_name_list = Fcons (intern ("fundamental-mode-abbrev-table"), 546 Vabbrev_table_name_list = Fcons (intern ("fundamental-mode-abbrev-table"),
547 Fcons (intern ("global-abbrev-table"), 547 Fcons (intern ("global-abbrev-table"),
548 Qnil)); 548 Qnil));
549 549
550 DEFVAR_LISP ("global-abbrev-table", &Vglobal_abbrev_table 550 DEFVAR_LISP ("global-abbrev-table", &Vglobal_abbrev_table,
551 /* The abbrev table whose abbrevs affect all buffers. 551 doc: /* The abbrev table whose abbrevs affect all buffers.
552Each buffer may also have a local abbrev table. 552Each buffer may also have a local abbrev table.
553If it does, the local table overrides the global one 553If it does, the local table overrides the global one
554for any particular abbrev defined in both. */); 554for any particular abbrev defined in both. */);
555 Vglobal_abbrev_table = Fmake_abbrev_table (); 555 Vglobal_abbrev_table = Fmake_abbrev_table ();
556 556
557 DEFVAR_LISP ("fundamental-mode-abbrev-table", &Vfundamental_mode_abbrev_table 557 DEFVAR_LISP ("fundamental-mode-abbrev-table", &Vfundamental_mode_abbrev_table,
558 /* The abbrev table of mode-specific abbrevs for Fundamental Mode. */); 558 doc: /* The abbrev table of mode-specific abbrevs for Fundamental Mode. */);
559 Vfundamental_mode_abbrev_table = Fmake_abbrev_table (); 559 Vfundamental_mode_abbrev_table = Fmake_abbrev_table ();
560 current_buffer->abbrev_table = Vfundamental_mode_abbrev_table; 560 current_buffer->abbrev_table = Vfundamental_mode_abbrev_table;
561 buffer_defaults.abbrev_table = Vfundamental_mode_abbrev_table; 561 buffer_defaults.abbrev_table = Vfundamental_mode_abbrev_table;
562 562
563 DEFVAR_LISP ("last-abbrev", &Vlast_abbrev 563 DEFVAR_LISP ("last-abbrev", &Vlast_abbrev,
564 /* The abbrev-symbol of the last abbrev expanded. See `abbrev-symbol'. */); 564 doc: /* The abbrev-symbol of the last abbrev expanded. See `abbrev-symbol'. */);
565 565
566 DEFVAR_LISP ("last-abbrev-text", &Vlast_abbrev_text 566 DEFVAR_LISP ("last-abbrev-text", &Vlast_abbrev_text,
567 /* The exact text of the last abbrev expanded. 567 doc: /* The exact text of the last abbrev expanded.
568nil if the abbrev has already been unexpanded. */); 568nil if the abbrev has already been unexpanded. */);
569 569
570 DEFVAR_INT ("last-abbrev-location", &last_abbrev_point 570 DEFVAR_INT ("last-abbrev-location", &last_abbrev_point,
571 /* The location of the start of the last abbrev expanded. */); 571 doc: /* The location of the start of the last abbrev expanded. */);
572 572
573 Vlast_abbrev = Qnil; 573 Vlast_abbrev = Qnil;
574 Vlast_abbrev_text = Qnil; 574 Vlast_abbrev_text = Qnil;
575 last_abbrev_point = 0; 575 last_abbrev_point = 0;
576 576
577 DEFVAR_LISP ("abbrev-start-location", &Vabbrev_start_location 577 DEFVAR_LISP ("abbrev-start-location", &Vabbrev_start_location,
578 /* Buffer position for `expand-abbrev' to use as the start of the abbrev. 578 doc: /* Buffer position for `expand-abbrev' to use as the start of the abbrev.
579nil means use the word before point as the abbrev. 579nil means use the word before point as the abbrev.
580Calling `expand-abbrev' sets this to nil. */); 580Calling `expand-abbrev' sets this to nil. */);
581 Vabbrev_start_location = Qnil; 581 Vabbrev_start_location = Qnil;
582 582
583 DEFVAR_LISP ("abbrev-start-location-buffer", &Vabbrev_start_location_buffer 583 DEFVAR_LISP ("abbrev-start-location-buffer", &Vabbrev_start_location_buffer,
584 /* Buffer that `abbrev-start-location' has been set for. 584 doc: /* Buffer that `abbrev-start-location' has been set for.
585Trying to expand an abbrev in any other buffer clears `abbrev-start-location'. */); 585Trying to expand an abbrev in any other buffer clears `abbrev-start-location'. */);
586 Vabbrev_start_location_buffer = Qnil; 586 Vabbrev_start_location_buffer = Qnil;
587 587
588 DEFVAR_PER_BUFFER ("local-abbrev-table", &current_buffer->abbrev_table, Qnil 588 DEFVAR_PER_BUFFER ("local-abbrev-table", &current_buffer->abbrev_table, Qnil,
589 /* Local (mode-specific) abbrev table of current buffer. */); 589 doc: /* Local (mode-specific) abbrev table of current buffer. */);
590 590
591 DEFVAR_BOOL ("abbrevs-changed", &abbrevs_changed 591 DEFVAR_BOOL ("abbrevs-changed", &abbrevs_changed,
592 /* Set non-nil by defining or altering any word abbrevs. 592 doc: /* Set non-nil by defining or altering any word abbrevs.
593This causes `save-some-buffers' to offer to save the abbrevs. */); 593This causes `save-some-buffers' to offer to save the abbrevs. */);
594 abbrevs_changed = 0; 594 abbrevs_changed = 0;
595 595
596 DEFVAR_BOOL ("abbrev-all-caps", &abbrev_all_caps 596 DEFVAR_BOOL ("abbrev-all-caps", &abbrev_all_caps,
597 /* *Set non-nil means expand multi-word abbrevs all caps if abbrev was so. */); 597 doc: /* *Set non-nil means expand multi-word abbrevs all caps if abbrev was so. */);
598 abbrev_all_caps = 0; 598 abbrev_all_caps = 0;
599 599
600 DEFVAR_LISP ("pre-abbrev-expand-hook", &Vpre_abbrev_expand_hook 600 DEFVAR_LISP ("pre-abbrev-expand-hook", &Vpre_abbrev_expand_hook,
601 /* Function or functions to be called before abbrev expansion is done. 601 doc: /* Function or functions to be called before abbrev expansion is done.
602This is the first thing that `expand-abbrev' does, and so this may change 602This is the first thing that `expand-abbrev' does, and so this may change
603the current abbrev table before abbrev lookup happens. */); 603the current abbrev table before abbrev lookup happens. */);
604 Vpre_abbrev_expand_hook = Qnil; 604 Vpre_abbrev_expand_hook = Qnil;
diff --git a/src/alloc.c b/src/alloc.c
index a7780e9ad91..101f599d009 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -38,7 +38,6 @@ Boston, MA 02111-1307, USA. */
38 replaced, this file likely will not be used. */ 38 replaced, this file likely will not be used. */
39 39
40#undef HIDE_LISP_IMPLEMENTATION 40#undef HIDE_LISP_IMPLEMENTATION
41#define DOC_STRINGS_IN_COMMENTS
42#include "lisp.h" 41#include "lisp.h"
43#include "process.h" 42#include "process.h"
44#include "intervals.h" 43#include "intervals.h"
@@ -1660,9 +1659,9 @@ compact_small_strings ()
1660 1659
1661 1660
1662DEFUN ("make-string", Fmake_string, Smake_string, 2, 2, 0, 1661DEFUN ("make-string", Fmake_string, Smake_string, 2, 2, 0,
1663 /* Return a newly created string of length LENGTH, with each element being INIT. 1662 doc: /* Return a newly created string of length LENGTH, with each element being INIT.
1664Both LENGTH and INIT must be numbers. */ 1663Both LENGTH and INIT must be numbers. */)
1665 (length, init)) 1664 (length, init)
1666 Lisp_Object length, init; 1665 Lisp_Object length, init;
1667{ 1666{
1668 register Lisp_Object val; 1667 register Lisp_Object val;
@@ -1704,9 +1703,9 @@ Both LENGTH and INIT must be numbers. */
1704 1703
1705 1704
1706DEFUN ("make-bool-vector", Fmake_bool_vector, Smake_bool_vector, 2, 2, 0, 1705DEFUN ("make-bool-vector", Fmake_bool_vector, Smake_bool_vector, 2, 2, 0,
1707 /* Return a new bool-vector of length LENGTH, using INIT for as each element. 1706 doc: /* Return a new bool-vector of length LENGTH, using INIT for as each element.
1708LENGTH must be a number. INIT matters only in whether it is t or nil. */ 1707LENGTH must be a number. INIT matters only in whether it is t or nil. */)
1709 (length, init)) 1708 (length, init)
1710 Lisp_Object length, init; 1709 Lisp_Object length, init;
1711{ 1710{
1712 register Lisp_Object val; 1711 register Lisp_Object val;
@@ -2058,8 +2057,8 @@ free_cons (ptr)
2058 2057
2059 2058
2060DEFUN ("cons", Fcons, Scons, 2, 2, 0, 2059DEFUN ("cons", Fcons, Scons, 2, 2, 0,
2061 /* Create a new cons, give it CAR and CDR as components, and return it. */ 2060 doc: /* Create a new cons, give it CAR and CDR as components, and return it. */)
2062 (car, cdr)) 2061 (car, cdr)
2063 Lisp_Object car, cdr; 2062 Lisp_Object car, cdr;
2064{ 2063{
2065 register Lisp_Object val; 2064 register Lisp_Object val;
@@ -2131,9 +2130,9 @@ list5 (arg1, arg2, arg3, arg4, arg5)
2131 2130
2132 2131
2133DEFUN ("list", Flist, Slist, 0, MANY, 0, 2132DEFUN ("list", Flist, Slist, 0, MANY, 0,
2134 /* Return a newly created list with specified arguments as elements. 2133 doc: /* Return a newly created list with specified arguments as elements.
2135Any number of arguments, even zero arguments, are allowed. */ 2134Any number of arguments, even zero arguments, are allowed. */)
2136 (nargs, args)) 2135 (nargs, args)
2137 int nargs; 2136 int nargs;
2138 register Lisp_Object *args; 2137 register Lisp_Object *args;
2139{ 2138{
@@ -2150,8 +2149,8 @@ Any number of arguments, even zero arguments, are allowed. */
2150 2149
2151 2150
2152DEFUN ("make-list", Fmake_list, Smake_list, 2, 2, 0, 2151DEFUN ("make-list", Fmake_list, Smake_list, 2, 2, 0,
2153 /* Return a newly created list of length LENGTH, with each element being INIT. */ 2152 doc: /* Return a newly created list of length LENGTH, with each element being INIT. */)
2154 (length, init)) 2153 (length, init)
2155 register Lisp_Object length, init; 2154 register Lisp_Object length, init;
2156{ 2155{
2157 register Lisp_Object val; 2156 register Lisp_Object val;
@@ -2337,9 +2336,9 @@ allocate_other_vector (len)
2337 2336
2338 2337
2339DEFUN ("make-vector", Fmake_vector, Smake_vector, 2, 2, 0, 2338DEFUN ("make-vector", Fmake_vector, Smake_vector, 2, 2, 0,
2340 /* Return a newly created vector of length LENGTH, with each element being INIT. 2339 doc: /* Return a newly created vector of length LENGTH, with each element being INIT.
2341See also the function `vector'. */ 2340See also the function `vector'. */)
2342 (length, init)) 2341 (length, init)
2343 register Lisp_Object length, init; 2342 register Lisp_Object length, init;
2344{ 2343{
2345 Lisp_Object vector; 2344 Lisp_Object vector;
@@ -2360,11 +2359,11 @@ See also the function `vector'. */
2360 2359
2361 2360
2362DEFUN ("make-char-table", Fmake_char_table, Smake_char_table, 1, 2, 0, 2361DEFUN ("make-char-table", Fmake_char_table, Smake_char_table, 1, 2, 0,
2363 /* Return a newly created char-table, with purpose PURPOSE. 2362 doc: /* Return a newly created char-table, with purpose PURPOSE.
2364Each element is initialized to INIT, which defaults to nil. 2363Each element is initialized to INIT, which defaults to nil.
2365PURPOSE should be a symbol which has a `char-table-extra-slots' property. 2364PURPOSE should be a symbol which has a `char-table-extra-slots' property.
2366The property's value should be an integer between 0 and 10. */ 2365The property's value should be an integer between 0 and 10. */)
2367 (purpose, init)) 2366 (purpose, init)
2368 register Lisp_Object purpose, init; 2367 register Lisp_Object purpose, init;
2369{ 2368{
2370 Lisp_Object vector; 2369 Lisp_Object vector;
@@ -2403,9 +2402,9 @@ make_sub_char_table (defalt)
2403 2402
2404 2403
2405DEFUN ("vector", Fvector, Svector, 0, MANY, 0, 2404DEFUN ("vector", Fvector, Svector, 0, MANY, 0,
2406 /* Return a newly created vector with specified arguments as elements. 2405 doc: /* Return a newly created vector with specified arguments as elements.
2407Any number of arguments, even zero arguments, are allowed. */ 2406Any number of arguments, even zero arguments, are allowed. */)
2408 (nargs, args)) 2407 (nargs, args)
2409 register int nargs; 2408 register int nargs;
2410 Lisp_Object *args; 2409 Lisp_Object *args;
2411{ 2410{
@@ -2423,12 +2422,12 @@ Any number of arguments, even zero arguments, are allowed. */
2423 2422
2424 2423
2425DEFUN ("make-byte-code", Fmake_byte_code, Smake_byte_code, 4, MANY, 0, 2424DEFUN ("make-byte-code", Fmake_byte_code, Smake_byte_code, 4, MANY, 0,
2426 /* Create a byte-code object with specified arguments as elements. 2425 doc: /* Create a byte-code object with specified arguments as elements.
2427The arguments should be the arglist, bytecode-string, constant vector, 2426The arguments should be the arglist, bytecode-string, constant vector,
2428stack size, (optional) doc string, and (optional) interactive spec. 2427stack size, (optional) doc string, and (optional) interactive spec.
2429The first four arguments are required; at most six have any 2428The first four arguments are required; at most six have any
2430significance. */ 2429significance. */)
2431 (nargs, args)) 2430 (nargs, args)
2432 register int nargs; 2431 register int nargs;
2433 Lisp_Object *args; 2432 Lisp_Object *args;
2434{ 2433{
@@ -2511,9 +2510,9 @@ init_symbol ()
2511 2510
2512 2511
2513DEFUN ("make-symbol", Fmake_symbol, Smake_symbol, 1, 1, 0, 2512DEFUN ("make-symbol", Fmake_symbol, Smake_symbol, 1, 1, 0,
2514 /* Return a newly allocated uninterned symbol whose name is NAME. 2513 doc: /* Return a newly allocated uninterned symbol whose name is NAME.
2515Its value and function definition are void, and its property list is nil. */ 2514Its value and function definition are void, and its property list is nil. */)
2516 (name)) 2515 (name)
2517 Lisp_Object name; 2516 Lisp_Object name;
2518{ 2517{
2519 register Lisp_Object val; 2518 register Lisp_Object val;
@@ -2629,8 +2628,8 @@ allocate_misc ()
2629} 2628}
2630 2629
2631DEFUN ("make-marker", Fmake_marker, Smake_marker, 0, 0, 0, 2630DEFUN ("make-marker", Fmake_marker, Smake_marker, 0, 0, 0,
2632 /* Return a newly allocated marker which does not point at any place. */ 2631 doc: /* Return a newly allocated marker which does not point at any place. */)
2633 ()) 2632 ()
2634{ 2633{
2635 register Lisp_Object val; 2634 register Lisp_Object val;
2636 register struct Lisp_Marker *p; 2635 register struct Lisp_Marker *p;
@@ -3300,8 +3299,8 @@ static int max_live, max_zombies;
3300static double avg_live; 3299static double avg_live;
3301 3300
3302DEFUN ("gc-status", Fgc_status, Sgc_status, 0, 0, "", 3301DEFUN ("gc-status", Fgc_status, Sgc_status, 0, 0, "",
3303 /* Show information about live and zombie objects. */ 3302 doc: /* Show information about live and zombie objects. */)
3304 ()) 3303 ()
3305{ 3304{
3306 Lisp_Object args[7]; 3305 Lisp_Object args[7];
3307 args[0] = build_string ("%d GCs, avg live/zombies = %.2f/%.2f (%f%%), max %d/%d"); 3306 args[0] = build_string ("%d GCs, avg live/zombies = %.2f/%.2f (%f%%), max %d/%d");
@@ -3540,7 +3539,7 @@ mark_memory (start, end)
3540 only a pointer to them remains. Example: 3539 only a pointer to them remains. Example:
3541 3540
3542 DEFUN ("testme", Ftestme, Stestme, 0, 0, 0, "") 3541 DEFUN ("testme", Ftestme, Stestme, 0, 0, 0, "")
3543 () 3542 ()
3544 { 3543 {
3545 Lisp_Object obj = build_string ("test"); 3544 Lisp_Object obj = build_string ("test");
3546 struct Lisp_String *s = XSTRING (obj); 3545 struct Lisp_String *s = XSTRING (obj);
@@ -3919,10 +3918,10 @@ make_pure_vector (len)
3919 3918
3920 3919
3921DEFUN ("purecopy", Fpurecopy, Spurecopy, 1, 1, 0, 3920DEFUN ("purecopy", Fpurecopy, Spurecopy, 1, 1, 0,
3922 /* Make a copy of OBJECT in pure storage. 3921 doc: /* Make a copy of OBJECT in pure storage.
3923Recursively copies contents of vectors and cons cells. 3922Recursively copies contents of vectors and cons cells.
3924Does not copy symbols. Copies strings without text properties. */ 3923Does not copy symbols. Copies strings without text properties. */)
3925 (obj)) 3924 (obj)
3926 register Lisp_Object obj; 3925 register Lisp_Object obj;
3927{ 3926{
3928 if (NILP (Vpurify_flag)) 3927 if (NILP (Vpurify_flag))
@@ -4016,15 +4015,15 @@ inhibit_garbage_collection ()
4016 4015
4017 4016
4018DEFUN ("garbage-collect", Fgarbage_collect, Sgarbage_collect, 0, 0, "", 4017DEFUN ("garbage-collect", Fgarbage_collect, Sgarbage_collect, 0, 0, "",
4019 /* Reclaim storage for Lisp objects no longer needed. 4018 doc: /* Reclaim storage for Lisp objects no longer needed.
4020Returns info on amount of space in use: 4019Returns info on amount of space in use:
4021 ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS) 4020 ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS)
4022 (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS 4021 (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS
4023 (USED-FLOATS . FREE-FLOATS) (USED-INTERVALS . FREE-INTERVALS) 4022 (USED-FLOATS . FREE-FLOATS) (USED-INTERVALS . FREE-INTERVALS)
4024 (USED-STRINGS . FREE-STRINGS)) 4023 (USED-STRINGS . FREE-STRINGS))
4025Garbage collection happens automatically if you cons more than 4024Garbage collection happens automatically if you cons more than
4026`gc-cons-threshold' bytes of Lisp data since previous garbage collection. */ 4025`gc-cons-threshold' bytes of Lisp data since previous garbage collection. */)
4027 ()) 4026 ()
4028{ 4027{
4029 register struct gcpro *tail; 4028 register struct gcpro *tail;
4030 register struct specbinding *bind; 4029 register struct specbinding *bind;
@@ -5321,10 +5320,10 @@ gc_sweep ()
5321/* Debugging aids. */ 5320/* Debugging aids. */
5322 5321
5323DEFUN ("memory-limit", Fmemory_limit, Smemory_limit, 0, 0, 0, 5322DEFUN ("memory-limit", Fmemory_limit, Smemory_limit, 0, 0, 0,
5324 /* Return the address of the last byte Emacs has allocated, divided by 1024. 5323 doc: /* Return the address of the last byte Emacs has allocated, divided by 1024.
5325This may be helpful in debugging Emacs's memory usage. 5324This may be helpful in debugging Emacs's memory usage.
5326We divide the value by 1024 to make sure it fits in a Lisp integer. */ 5325We divide the value by 1024 to make sure it fits in a Lisp integer. */)
5327 ()) 5326 ()
5328{ 5327{
5329 Lisp_Object end; 5328 Lisp_Object end;
5330 5329
@@ -5334,7 +5333,7 @@ We divide the value by 1024 to make sure it fits in a Lisp integer. */
5334} 5333}
5335 5334
5336DEFUN ("memory-use-counts", Fmemory_use_counts, Smemory_use_counts, 0, 0, 0, 5335DEFUN ("memory-use-counts", Fmemory_use_counts, Smemory_use_counts, 0, 0, 0,
5337 /* Return a list of counters that measure how much consing there has been. 5336 doc: /* Return a list of counters that measure how much consing there has been.
5338Each of these counters increments for a certain kind of object. 5337Each of these counters increments for a certain kind of object.
5339The counters wrap around from the largest positive integer to zero. 5338The counters wrap around from the largest positive integer to zero.
5340Garbage collection does not decrease them. 5339Garbage collection does not decrease them.
@@ -5345,8 +5344,8 @@ except for VECTOR-CELLS and STRING-CHARS, which count the total length of
5345objects consed. 5344objects consed.
5346MISCS include overlays, markers, and some internal types. 5345MISCS include overlays, markers, and some internal types.
5347Frames, windows, buffers, and subprocesses count as vectors 5346Frames, windows, buffers, and subprocesses count as vectors
5348 (but the contents of a buffer's text do not count here). */ 5347 (but the contents of a buffer's text do not count here). */)
5349 ()) 5348 ()
5350{ 5349{
5351 Lisp_Object consed[8]; 5350 Lisp_Object consed[8];
5352 5351
@@ -5439,8 +5438,8 @@ init_alloc ()
5439void 5438void
5440syms_of_alloc () 5439syms_of_alloc ()
5441{ 5440{
5442 DEFVAR_INT ("gc-cons-threshold", &gc_cons_threshold 5441 DEFVAR_INT ("gc-cons-threshold", &gc_cons_threshold,
5443 /* *Number of bytes of consing between garbage collections. 5442 doc: /* *Number of bytes of consing between garbage collections.
5444Garbage collection can happen automatically once this many bytes have been 5443Garbage collection can happen automatically once this many bytes have been
5445allocated since the last garbage collection. All data types count. 5444allocated since the last garbage collection. All data types count.
5446 5445
@@ -5449,58 +5448,58 @@ Garbage collection happens automatically only when `eval' is called.
5449By binding this temporarily to a large number, you can effectively 5448By binding this temporarily to a large number, you can effectively
5450prevent garbage collection during a part of the program. */); 5449prevent garbage collection during a part of the program. */);
5451 5450
5452 DEFVAR_INT ("pure-bytes-used", &pure_bytes_used 5451 DEFVAR_INT ("pure-bytes-used", &pure_bytes_used,
5453 /* Number of bytes of sharable Lisp data allocated so far. */); 5452 doc: /* Number of bytes of sharable Lisp data allocated so far. */);
5454 5453
5455 DEFVAR_INT ("cons-cells-consed", &cons_cells_consed 5454 DEFVAR_INT ("cons-cells-consed", &cons_cells_consed,
5456 /* Number of cons cells that have been consed so far. */); 5455 doc: /* Number of cons cells that have been consed so far. */);
5457 5456
5458 DEFVAR_INT ("floats-consed", &floats_consed 5457 DEFVAR_INT ("floats-consed", &floats_consed,
5459 /* Number of floats that have been consed so far. */); 5458 doc: /* Number of floats that have been consed so far. */);
5460 5459
5461 DEFVAR_INT ("vector-cells-consed", &vector_cells_consed 5460 DEFVAR_INT ("vector-cells-consed", &vector_cells_consed,
5462 /* Number of vector cells that have been consed so far. */); 5461 doc: /* Number of vector cells that have been consed so far. */);
5463 5462
5464 DEFVAR_INT ("symbols-consed", &symbols_consed 5463 DEFVAR_INT ("symbols-consed", &symbols_consed,
5465 /* Number of symbols that have been consed so far. */); 5464 doc: /* Number of symbols that have been consed so far. */);
5466 5465
5467 DEFVAR_INT ("string-chars-consed", &string_chars_consed 5466 DEFVAR_INT ("string-chars-consed", &string_chars_consed,
5468 /* Number of string characters that have been consed so far. */); 5467 doc: /* Number of string characters that have been consed so far. */);
5469 5468
5470 DEFVAR_INT ("misc-objects-consed", &misc_objects_consed 5469 DEFVAR_INT ("misc-objects-consed", &misc_objects_consed,
5471 /* Number of miscellaneous objects that have been consed so far. */); 5470 doc: /* Number of miscellaneous objects that have been consed so far. */);
5472 5471
5473 DEFVAR_INT ("intervals-consed", &intervals_consed 5472 DEFVAR_INT ("intervals-consed", &intervals_consed,
5474 /* Number of intervals that have been consed so far. */); 5473 doc: /* Number of intervals that have been consed so far. */);
5475 5474
5476 DEFVAR_INT ("strings-consed", &strings_consed 5475 DEFVAR_INT ("strings-consed", &strings_consed,
5477 /* Number of strings that have been consed so far. */); 5476 doc: /* Number of strings that have been consed so far. */);
5478 5477
5479 DEFVAR_LISP ("purify-flag", &Vpurify_flag 5478 DEFVAR_LISP ("purify-flag", &Vpurify_flag,
5480 /* Non-nil means loading Lisp code in order to dump an executable. 5479 doc: /* Non-nil means loading Lisp code in order to dump an executable.
5481This means that certain objects should be allocated in shared (pure) space. */); 5480This means that certain objects should be allocated in shared (pure) space. */);
5482 5481
5483 DEFVAR_INT ("undo-limit", &undo_limit 5482 DEFVAR_INT ("undo-limit", &undo_limit,
5484 /* Keep no more undo information once it exceeds this size. 5483 doc: /* Keep no more undo information once it exceeds this size.
5485This limit is applied when garbage collection happens. 5484This limit is applied when garbage collection happens.
5486The size is counted as the number of bytes occupied, 5485The size is counted as the number of bytes occupied,
5487which includes both saved text and other data. */); 5486which includes both saved text and other data. */);
5488 undo_limit = 20000; 5487 undo_limit = 20000;
5489 5488
5490 DEFVAR_INT ("undo-strong-limit", &undo_strong_limit 5489 DEFVAR_INT ("undo-strong-limit", &undo_strong_limit,
5491 /* Don't keep more than this much size of undo information. 5490 doc: /* Don't keep more than this much size of undo information.
5492A command which pushes past this size is itself forgotten. 5491A command which pushes past this size is itself forgotten.
5493This limit is applied when garbage collection happens. 5492This limit is applied when garbage collection happens.
5494The size is counted as the number of bytes occupied, 5493The size is counted as the number of bytes occupied,
5495which includes both saved text and other data. */); 5494which includes both saved text and other data. */);
5496 undo_strong_limit = 30000; 5495 undo_strong_limit = 30000;
5497 5496
5498 DEFVAR_BOOL ("garbage-collection-messages", &garbage_collection_messages 5497 DEFVAR_BOOL ("garbage-collection-messages", &garbage_collection_messages,
5499 /* Non-nil means display messages at start and end of garbage collection. */); 5498 doc: /* Non-nil means display messages at start and end of garbage collection. */);
5500 garbage_collection_messages = 0; 5499 garbage_collection_messages = 0;
5501 5500
5502 DEFVAR_LISP ("post-gc-hook", &Vpost_gc_hook 5501 DEFVAR_LISP ("post-gc-hook", &Vpost_gc_hook,
5503 /* Hook run after garbage collection has finished. */); 5502 doc: /* Hook run after garbage collection has finished. */);
5504 Vpost_gc_hook = Qnil; 5503 Vpost_gc_hook = Qnil;
5505 Qpost_gc_hook = intern ("post-gc-hook"); 5504 Qpost_gc_hook = intern ("post-gc-hook");
5506 staticpro (&Qpost_gc_hook); 5505 staticpro (&Qpost_gc_hook);
diff --git a/src/buffer.c b/src/buffer.c
index 2bb785bda99..7cbd0b68246 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -39,7 +39,7 @@ extern int errno;
39#ifdef HAVE_UNISTD_H 39#ifdef HAVE_UNISTD_H
40#include <unistd.h> 40#include <unistd.h>
41#endif 41#endif
42#define DOC_STRINGS_IN_COMMENTS 42
43#include "lisp.h" 43#include "lisp.h"
44#include "intervals.h" 44#include "intervals.h"
45#include "window.h" 45#include "window.h"
@@ -198,9 +198,9 @@ nsberror (spec)
198} 198}
199 199
200DEFUN ("buffer-live-p", Fbuffer_live_p, Sbuffer_live_p, 1, 1, 0, 200DEFUN ("buffer-live-p", Fbuffer_live_p, Sbuffer_live_p, 1, 1, 0,
201 /* Return non-nil if OBJECT is a buffer which has not been killed. 201 doc: /* Return non-nil if OBJECT is a buffer which has not been killed.
202Value is nil if OBJECT is not a buffer or if it has been killed. */ 202Value is nil if OBJECT is not a buffer or if it has been killed. */)
203 (object)) 203 (object)
204 Lisp_Object object; 204 Lisp_Object object;
205{ 205{
206 return ((BUFFERP (object) && ! NILP (XBUFFER (object)->name)) 206 return ((BUFFERP (object) && ! NILP (XBUFFER (object)->name))
@@ -208,9 +208,9 @@ Value is nil if OBJECT is not a buffer or if it has been killed. */
208} 208}
209 209
210DEFUN ("buffer-list", Fbuffer_list, Sbuffer_list, 0, 1, 0, 210DEFUN ("buffer-list", Fbuffer_list, Sbuffer_list, 0, 1, 0,
211 /* Return a list of all existing live buffers. 211 doc: /* Return a list of all existing live buffers.
212If the optional arg FRAME is a frame, we return that frame's buffer list. */ 212If the optional arg FRAME is a frame, we return that frame's buffer list. */)
213 (frame)) 213 (frame)
214 Lisp_Object frame; 214 Lisp_Object frame;
215{ 215{
216 Lisp_Object framelist, general; 216 Lisp_Object framelist, general;
@@ -259,10 +259,10 @@ assoc_ignore_text_properties (key, list)
259} 259}
260 260
261DEFUN ("get-buffer", Fget_buffer, Sget_buffer, 1, 1, 0, 261DEFUN ("get-buffer", Fget_buffer, Sget_buffer, 1, 1, 0,
262 /* Return the buffer named NAME (a string). 262 doc: /* Return the buffer named NAME (a string).
263If there is no live buffer named NAME, return nil. 263If there is no live buffer named NAME, return nil.
264NAME may also be a buffer; if so, the value is that buffer. */ 264NAME may also be a buffer; if so, the value is that buffer. */)
265 (name)) 265 (name)
266 register Lisp_Object name; 266 register Lisp_Object name;
267{ 267{
268 if (BUFFERP (name)) 268 if (BUFFERP (name))
@@ -273,11 +273,11 @@ NAME may also be a buffer; if so, the value is that buffer. */
273} 273}
274 274
275DEFUN ("get-file-buffer", Fget_file_buffer, Sget_file_buffer, 1, 1, 0, 275DEFUN ("get-file-buffer", Fget_file_buffer, Sget_file_buffer, 1, 1, 0,
276 /* Return the buffer visiting file FILENAME (a string). 276 doc: /* Return the buffer visiting file FILENAME (a string).
277The buffer's `buffer-file-name' must match exactly the expansion of FILENAME. 277The buffer's `buffer-file-name' must match exactly the expansion of FILENAME.
278If there is no such live buffer, return nil. 278If there is no such live buffer, return nil.
279See also `find-buffer-visiting'. */ 279See also `find-buffer-visiting'. */)
280 (filename)) 280 (filename)
281 register Lisp_Object filename; 281 register Lisp_Object filename;
282{ 282{
283 register Lisp_Object tail, buf, tem; 283 register Lisp_Object tail, buf, tem;
@@ -326,12 +326,12 @@ get_truename_buffer (filename)
326int buffer_count; 326int buffer_count;
327 327
328DEFUN ("get-buffer-create", Fget_buffer_create, Sget_buffer_create, 1, 1, 0, 328DEFUN ("get-buffer-create", Fget_buffer_create, Sget_buffer_create, 1, 1, 0,
329 /* Return the buffer named NAME, or create such a buffer and return it. 329 doc: /* Return the buffer named NAME, or create such a buffer and return it.
330A new buffer is created if there is no live buffer named NAME. 330A new buffer is created if there is no live buffer named NAME.
331If NAME starts with a space, the new buffer does not keep undo information. 331If NAME starts with a space, the new buffer does not keep undo information.
332If NAME is a buffer instead of a string, then it is the value returned. 332If NAME is a buffer instead of a string, then it is the value returned.
333The value is never nil. */ 333The value is never nil. */)
334 (name)) 334 (name)
335 register Lisp_Object name; 335 register Lisp_Object name;
336{ 336{
337 register Lisp_Object buf; 337 register Lisp_Object buf;
@@ -506,13 +506,13 @@ clone_per_buffer_values (from, to)
506DEFUN ("make-indirect-buffer", Fmake_indirect_buffer, Smake_indirect_buffer, 506DEFUN ("make-indirect-buffer", Fmake_indirect_buffer, Smake_indirect_buffer,
507 2, 3, 507 2, 3,
508 "bMake indirect buffer (to buffer): \nBName of indirect buffer: ", 508 "bMake indirect buffer (to buffer): \nBName of indirect buffer: ",
509 /* Create and return an indirect buffer for buffer BASE-BUFFER, named NAME. 509 doc: /* Create and return an indirect buffer for buffer BASE-BUFFER, named NAME.
510BASE-BUFFER should be an existing buffer (or buffer name). 510BASE-BUFFER should be an existing buffer (or buffer name).
511NAME should be a string which is not the name of an existing buffer. 511NAME should be a string which is not the name of an existing buffer.
512Optional argument CLONE non-nil means preserve BASE-BUFFER's state, 512Optional argument CLONE non-nil means preserve BASE-BUFFER's state,
513such as major and minor modes, in the indirect buffer. 513such as major and minor modes, in the indirect buffer.
514CLONE nil means the indirect buffer's state is reset to default values. */ 514CLONE nil means the indirect buffer's state is reset to default values. */)
515 (base_buffer, name, clone)) 515 (base_buffer, name, clone)
516 Lisp_Object base_buffer, name, clone; 516 Lisp_Object base_buffer, name, clone;
517{ 517{
518 Lisp_Object buf; 518 Lisp_Object buf;
@@ -725,14 +725,14 @@ reset_buffer_local_variables (b, permanent_too)
725 725
726DEFUN ("generate-new-buffer-name", Fgenerate_new_buffer_name, Sgenerate_new_buffer_name, 726DEFUN ("generate-new-buffer-name", Fgenerate_new_buffer_name, Sgenerate_new_buffer_name,
727 1, 2, 0, 727 1, 2, 0,
728 /* Return a string that is the name of no existing buffer based on NAME. 728 doc: /* Return a string that is the name of no existing buffer based on NAME.
729If there is no live buffer named NAME, then return NAME. 729If there is no live buffer named NAME, then return NAME.
730Otherwise modify name by appending `<NUMBER>', incrementing NUMBER 730Otherwise modify name by appending `<NUMBER>', incrementing NUMBER
731until an unused name is found, and then return that name. 731until an unused name is found, and then return that name.
732Optional second argument IGNORE specifies a name that is okay to use 732Optional second argument IGNORE specifies a name that is okay to use
733\(if it is in the sequence to be tried) 733\(if it is in the sequence to be tried)
734even if a buffer with that name exists. */ 734even if a buffer with that name exists. */)
735 (name, ignore)) 735 (name, ignore)
736 register Lisp_Object name, ignore; 736 register Lisp_Object name, ignore;
737{ 737{
738 register Lisp_Object gentemp, tem; 738 register Lisp_Object gentemp, tem;
@@ -761,9 +761,9 @@ even if a buffer with that name exists. */
761 761
762 762
763DEFUN ("buffer-name", Fbuffer_name, Sbuffer_name, 0, 1, 0, 763DEFUN ("buffer-name", Fbuffer_name, Sbuffer_name, 0, 1, 0,
764 /* Return the name of BUFFER, as a string. 764 doc: /* Return the name of BUFFER, as a string.
765With no argument or nil as argument, return the name of the current buffer. */ 765With no argument or nil as argument, return the name of the current buffer. */)
766 (buffer)) 766 (buffer)
767 register Lisp_Object buffer; 767 register Lisp_Object buffer;
768{ 768{
769 if (NILP (buffer)) 769 if (NILP (buffer))
@@ -773,9 +773,9 @@ With no argument or nil as argument, return the name of the current buffer. */
773} 773}
774 774
775DEFUN ("buffer-file-name", Fbuffer_file_name, Sbuffer_file_name, 0, 1, 0, 775DEFUN ("buffer-file-name", Fbuffer_file_name, Sbuffer_file_name, 0, 1, 0,
776 /* Return name of file BUFFER is visiting, or nil if none. 776 doc: /* Return name of file BUFFER is visiting, or nil if none.
777No argument or nil as argument means use the current buffer. */ 777No argument or nil as argument means use the current buffer. */)
778 (buffer)) 778 (buffer)
779 register Lisp_Object buffer; 779 register Lisp_Object buffer;
780{ 780{
781 if (NILP (buffer)) 781 if (NILP (buffer))
@@ -786,9 +786,9 @@ No argument or nil as argument means use the current buffer. */
786 786
787DEFUN ("buffer-base-buffer", Fbuffer_base_buffer, Sbuffer_base_buffer, 787DEFUN ("buffer-base-buffer", Fbuffer_base_buffer, Sbuffer_base_buffer,
788 0, 1, 0, 788 0, 1, 0,
789 /* Return the base buffer of indirect buffer BUFFER. 789 doc: /* Return the base buffer of indirect buffer BUFFER.
790If BUFFER is not indirect, return nil. */ 790If BUFFER is not indirect, return nil. */)
791 (buffer)) 791 (buffer)
792 register Lisp_Object buffer; 792 register Lisp_Object buffer;
793{ 793{
794 struct buffer *base; 794 struct buffer *base;
@@ -810,12 +810,12 @@ If BUFFER is not indirect, return nil. */
810 810
811DEFUN ("buffer-local-variables", Fbuffer_local_variables, 811DEFUN ("buffer-local-variables", Fbuffer_local_variables,
812 Sbuffer_local_variables, 0, 1, 0, 812 Sbuffer_local_variables, 0, 1, 0,
813 /* Return an alist of variables that are buffer-local in BUFFER. 813 doc: /* Return an alist of variables that are buffer-local in BUFFER.
814Most elements look like (SYMBOL . VALUE), describing one variable. 814Most elements look like (SYMBOL . VALUE), describing one variable.
815For a symbol that is locally unbound, just the symbol appears in the value. 815For a symbol that is locally unbound, just the symbol appears in the value.
816Note that storing new VALUEs in these elements doesn't change the variables. 816Note that storing new VALUEs in these elements doesn't change the variables.
817No argument or nil as argument means use current buffer as BUFFER. */ 817No argument or nil as argument means use current buffer as BUFFER. */)
818 (buffer)) 818 (buffer)
819 register Lisp_Object buffer; 819 register Lisp_Object buffer;
820{ 820{
821 register struct buffer *buf; 821 register struct buffer *buf;
@@ -882,9 +882,9 @@ No argument or nil as argument means use current buffer as BUFFER. */
882 882
883DEFUN ("buffer-modified-p", Fbuffer_modified_p, Sbuffer_modified_p, 883DEFUN ("buffer-modified-p", Fbuffer_modified_p, Sbuffer_modified_p,
884 0, 1, 0, 884 0, 1, 0,
885 /* Return t if BUFFER was modified since its file was last read or saved. 885 doc: /* Return t if BUFFER was modified since its file was last read or saved.
886No argument or nil as argument means use current buffer as BUFFER. */ 886No argument or nil as argument means use current buffer as BUFFER. */)
887 (buffer)) 887 (buffer)
888 register Lisp_Object buffer; 888 register Lisp_Object buffer;
889{ 889{
890 register struct buffer *buf; 890 register struct buffer *buf;
@@ -901,9 +901,9 @@ No argument or nil as argument means use current buffer as BUFFER. */
901 901
902DEFUN ("set-buffer-modified-p", Fset_buffer_modified_p, Sset_buffer_modified_p, 902DEFUN ("set-buffer-modified-p", Fset_buffer_modified_p, Sset_buffer_modified_p,
903 1, 1, 0, 903 1, 1, 0,
904 /* Mark current buffer as modified or unmodified according to FLAG. 904 doc: /* Mark current buffer as modified or unmodified according to FLAG.
905A non-nil FLAG means mark the buffer modified. */ 905A non-nil FLAG means mark the buffer modified. */)
906 (flag)) 906 (flag)
907 register Lisp_Object flag; 907 register Lisp_Object flag;
908{ 908{
909 register int already; 909 register int already;
@@ -952,10 +952,10 @@ A non-nil FLAG means mark the buffer modified. */
952 952
953DEFUN ("restore-buffer-modified-p", Frestore_buffer_modified_p, 953DEFUN ("restore-buffer-modified-p", Frestore_buffer_modified_p,
954 Srestore_buffer_modified_p, 1, 1, 0, 954 Srestore_buffer_modified_p, 1, 1, 0,
955 /* Like `set-buffer-modified-p', with a differences concerning redisplay. 955 doc: /* Like `set-buffer-modified-p', with a differences concerning redisplay.
956It is not ensured that mode lines will be updated to show the modified 956It is not ensured that mode lines will be updated to show the modified
957state of the current buffer. Use with care. */ 957state of the current buffer. Use with care. */)
958 (flag)) 958 (flag)
959 Lisp_Object flag; 959 Lisp_Object flag;
960{ 960{
961#ifdef CLASH_DETECTION 961#ifdef CLASH_DETECTION
@@ -982,11 +982,11 @@ state of the current buffer. Use with care. */
982 982
983DEFUN ("buffer-modified-tick", Fbuffer_modified_tick, Sbuffer_modified_tick, 983DEFUN ("buffer-modified-tick", Fbuffer_modified_tick, Sbuffer_modified_tick,
984 0, 1, 0, 984 0, 1, 0,
985 /* Return BUFFER's tick counter, incremented for each change in text. 985 doc: /* Return BUFFER's tick counter, incremented for each change in text.
986Each buffer has a tick counter which is incremented each time the text in 986Each buffer has a tick counter which is incremented each time the text in
987that buffer is changed. It wraps around occasionally. 987that buffer is changed. It wraps around occasionally.
988No argument or nil as argument means use current buffer as BUFFER. */ 988No argument or nil as argument means use current buffer as BUFFER. */)
989 (buffer)) 989 (buffer)
990 register Lisp_Object buffer; 990 register Lisp_Object buffer;
991{ 991{
992 register struct buffer *buf; 992 register struct buffer *buf;
@@ -1003,15 +1003,15 @@ No argument or nil as argument means use current buffer as BUFFER. */
1003 1003
1004DEFUN ("rename-buffer", Frename_buffer, Srename_buffer, 1, 2, 1004DEFUN ("rename-buffer", Frename_buffer, Srename_buffer, 1, 2,
1005 "sRename buffer (to new name): \nP", 1005 "sRename buffer (to new name): \nP",
1006 /* Change current buffer's name to NEWNAME (a string). 1006 doc: /* Change current buffer's name to NEWNAME (a string).
1007If second arg UNIQUE is nil or omitted, it is an error if a 1007If second arg UNIQUE is nil or omitted, it is an error if a
1008buffer named NEWNAME already exists. 1008buffer named NEWNAME already exists.
1009If UNIQUE is non-nil, come up with a new name using 1009If UNIQUE is non-nil, come up with a new name using
1010`generate-new-buffer-name'. 1010`generate-new-buffer-name'.
1011Interactively, you can set UNIQUE with a prefix argument. 1011Interactively, you can set UNIQUE with a prefix argument.
1012We return the name we actually gave the buffer. 1012We return the name we actually gave the buffer.
1013This does not change the name of the visited file (if any). */ 1013This does not change the name of the visited file (if any). */)
1014 (newname, unique)) 1014 (newname, unique)
1015 register Lisp_Object newname, unique; 1015 register Lisp_Object newname, unique;
1016{ 1016{
1017 register Lisp_Object tem, buf; 1017 register Lisp_Object tem, buf;
@@ -1052,14 +1052,14 @@ This does not change the name of the visited file (if any). */
1052} 1052}
1053 1053
1054DEFUN ("other-buffer", Fother_buffer, Sother_buffer, 0, 3, 0, 1054DEFUN ("other-buffer", Fother_buffer, Sother_buffer, 0, 3, 0,
1055 /* Return most recently selected buffer other than BUFFER. 1055 doc: /* Return most recently selected buffer other than BUFFER.
1056Buffers not visible in windows are preferred to visible buffers, 1056Buffers not visible in windows are preferred to visible buffers,
1057unless optional second argument VISIBLE-OK is non-nil. 1057unless optional second argument VISIBLE-OK is non-nil.
1058If the optional third argument FRAME is non-nil, use that frame's 1058If the optional third argument FRAME is non-nil, use that frame's
1059buffer list instead of the selected frame's buffer list. 1059buffer list instead of the selected frame's buffer list.
1060If no other buffer exists, the buffer `*scratch*' is returned. 1060If no other buffer exists, the buffer `*scratch*' is returned.
1061If BUFFER is omitted or nil, some interesting buffer is returned. */ 1061If BUFFER is omitted or nil, some interesting buffer is returned. */)
1062 (buffer, visible_ok, frame)) 1062 (buffer, visible_ok, frame)
1063 register Lisp_Object buffer, visible_ok, frame; 1063 register Lisp_Object buffer, visible_ok, frame;
1064{ 1064{
1065 Lisp_Object Fset_buffer_major_mode (); 1065 Lisp_Object Fset_buffer_major_mode ();
@@ -1123,9 +1123,9 @@ If BUFFER is omitted or nil, some interesting buffer is returned. */
1123 1123
1124DEFUN ("buffer-disable-undo", Fbuffer_disable_undo, Sbuffer_disable_undo, 1124DEFUN ("buffer-disable-undo", Fbuffer_disable_undo, Sbuffer_disable_undo,
1125 0, 1, "", 1125 0, 1, "",
1126 /* Make BUFFER stop keeping undo information. 1126 doc: /* Make BUFFER stop keeping undo information.
1127No argument or nil as argument means do this for the current buffer. */ 1127No argument or nil as argument means do this for the current buffer. */)
1128 (buffer)) 1128 (buffer)
1129 register Lisp_Object buffer; 1129 register Lisp_Object buffer;
1130{ 1130{
1131 Lisp_Object real_buffer; 1131 Lisp_Object real_buffer;
@@ -1146,9 +1146,9 @@ No argument or nil as argument means do this for the current buffer. */
1146 1146
1147DEFUN ("buffer-enable-undo", Fbuffer_enable_undo, Sbuffer_enable_undo, 1147DEFUN ("buffer-enable-undo", Fbuffer_enable_undo, Sbuffer_enable_undo,
1148 0, 1, "", 1148 0, 1, "",
1149 /* Start keeping undo information for buffer BUFFER. 1149 doc: /* Start keeping undo information for buffer BUFFER.
1150No argument or nil as argument means do this for the current buffer. */ 1150No argument or nil as argument means do this for the current buffer. */)
1151 (buffer)) 1151 (buffer)
1152 register Lisp_Object buffer; 1152 register Lisp_Object buffer;
1153{ 1153{
1154 Lisp_Object real_buffer; 1154 Lisp_Object real_buffer;
@@ -1175,7 +1175,7 @@ The buffer being killed will be current while the hook is running.\n\
1175See `kill-buffer'." 1175See `kill-buffer'."
1176 */ 1176 */
1177DEFUN ("kill-buffer", Fkill_buffer, Skill_buffer, 1, 1, "bKill buffer: ", 1177DEFUN ("kill-buffer", Fkill_buffer, Skill_buffer, 1, 1, "bKill buffer: ",
1178 /* Kill the buffer BUFFER. 1178 doc: /* Kill the buffer BUFFER.
1179The argument may be a buffer or may be the name of a buffer. 1179The argument may be a buffer or may be the name of a buffer.
1180An argument of nil means kill the current buffer. 1180An argument of nil means kill the current buffer.
1181 1181
@@ -1187,8 +1187,8 @@ before the buffer is actually killed. The buffer to be killed is current
1187when the hook functions are called. 1187when the hook functions are called.
1188 1188
1189Any processes that have this buffer as the `process-buffer' are killed 1189Any processes that have this buffer as the `process-buffer' are killed
1190with SIGHUP. */ 1190with SIGHUP. */)
1191 (buffer)) 1191 (buffer)
1192 Lisp_Object buffer; 1192 Lisp_Object buffer;
1193{ 1193{
1194 Lisp_Object buf; 1194 Lisp_Object buf;
@@ -1449,12 +1449,12 @@ record_buffer (buf)
1449} 1449}
1450 1450
1451DEFUN ("set-buffer-major-mode", Fset_buffer_major_mode, Sset_buffer_major_mode, 1, 1, 0, 1451DEFUN ("set-buffer-major-mode", Fset_buffer_major_mode, Sset_buffer_major_mode, 1, 1, 0,
1452 /* Set an appropriate major mode for BUFFER. 1452 doc: /* Set an appropriate major mode for BUFFER.
1453For the *scratch* buffer, use `initial-major-mode', otherwise chose a mode 1453For the *scratch* buffer, use `initial-major-mode', otherwise chose a mode
1454according to `default-major-mode'. 1454according to `default-major-mode'.
1455Use this function before selecting the buffer, since it may need to inspect 1455Use this function before selecting the buffer, since it may need to inspect
1456the current buffer's major mode. */ 1456the current buffer's major mode. */)
1457 (buffer)) 1457 (buffer)
1458 Lisp_Object buffer; 1458 Lisp_Object buffer;
1459{ 1459{
1460 int count; 1460 int count;
@@ -1536,15 +1536,15 @@ switch_to_buffer_1 (buffer, norecord)
1536} 1536}
1537 1537
1538DEFUN ("switch-to-buffer", Fswitch_to_buffer, Sswitch_to_buffer, 1, 2, "BSwitch to buffer: ", 1538DEFUN ("switch-to-buffer", Fswitch_to_buffer, Sswitch_to_buffer, 1, 2, "BSwitch to buffer: ",
1539 /* Select buffer BUFFER in the current window. 1539 doc: /* Select buffer BUFFER in the current window.
1540BUFFER may be a buffer or a buffer name. 1540BUFFER may be a buffer or a buffer name.
1541Optional second arg NORECORD non-nil means 1541Optional second arg NORECORD non-nil means
1542do not put this buffer at the front of the list of recently selected ones. 1542do not put this buffer at the front of the list of recently selected ones.
1543 1543
1544WARNING: This is NOT the way to work on another buffer temporarily 1544WARNING: This is NOT the way to work on another buffer temporarily
1545within a Lisp program! Use `set-buffer' instead. That avoids messing with 1545within a Lisp program! Use `set-buffer' instead. That avoids messing with
1546the window-buffer correspondences. */ 1546the window-buffer correspondences. */)
1547 (buffer, norecord)) 1547 (buffer, norecord)
1548 Lisp_Object buffer, norecord; 1548 Lisp_Object buffer, norecord;
1549{ 1549{
1550 char *err; 1550 char *err;
@@ -1556,7 +1556,7 @@ the window-buffer correspondences. */
1556} 1556}
1557 1557
1558DEFUN ("pop-to-buffer", Fpop_to_buffer, Spop_to_buffer, 1, 3, 0, 1558DEFUN ("pop-to-buffer", Fpop_to_buffer, Spop_to_buffer, 1, 3, 0,
1559 /* Select buffer BUFFER in some window, preferably a different one. 1559 doc: /* Select buffer BUFFER in some window, preferably a different one.
1560If BUFFER is nil, then some other buffer is chosen. 1560If BUFFER is nil, then some other buffer is chosen.
1561If `pop-up-windows' is non-nil, windows can be split to do this. 1561If `pop-up-windows' is non-nil, windows can be split to do this.
1562If optional second arg OTHER-WINDOW is non-nil, insist on finding another 1562If optional second arg OTHER-WINDOW is non-nil, insist on finding another
@@ -1565,8 +1565,8 @@ This uses the function `display-buffer' as a subroutine; see the documentation
1565of `display-buffer' for additional customization information. 1565of `display-buffer' for additional customization information.
1566 1566
1567Optional third arg NORECORD non-nil means 1567Optional third arg NORECORD non-nil means
1568do not put this buffer at the front of the list of recently selected ones. */ 1568do not put this buffer at the front of the list of recently selected ones. */)
1569 (buffer, other_window, norecord)) 1569 (buffer, other_window, norecord)
1570 Lisp_Object buffer, other_window, norecord; 1570 Lisp_Object buffer, other_window, norecord;
1571{ 1571{
1572 register Lisp_Object buf; 1572 register Lisp_Object buf;
@@ -1590,8 +1590,8 @@ do not put this buffer at the front of the list of recently selected ones. */
1590} 1590}
1591 1591
1592DEFUN ("current-buffer", Fcurrent_buffer, Scurrent_buffer, 0, 0, 0, 1592DEFUN ("current-buffer", Fcurrent_buffer, Scurrent_buffer, 0, 0, 0,
1593 /* Return the current buffer as a Lisp object. */ 1593 doc: /* Return the current buffer as a Lisp object. */)
1594 ()) 1594 ()
1595{ 1595{
1596 register Lisp_Object buf; 1596 register Lisp_Object buf;
1597 XSETBUFFER (buf, current_buffer); 1597 XSETBUFFER (buf, current_buffer);
@@ -1786,13 +1786,13 @@ set_buffer_temp (b)
1786} 1786}
1787 1787
1788DEFUN ("set-buffer", Fset_buffer, Sset_buffer, 1, 1, 0, 1788DEFUN ("set-buffer", Fset_buffer, Sset_buffer, 1, 1, 0,
1789 /* Make the buffer BUFFER current for editing operations. 1789 doc: /* Make the buffer BUFFER current for editing operations.
1790BUFFER may be a buffer or the name of an existing buffer. 1790BUFFER may be a buffer or the name of an existing buffer.
1791See also `save-excursion' when you want to make a buffer current temporarily. 1791See also `save-excursion' when you want to make a buffer current temporarily.
1792This function does not display the buffer, so its effect ends 1792This function does not display the buffer, so its effect ends
1793when the current command terminates. 1793when the current command terminates.
1794Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently. */ 1794Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently. */)
1795 (buffer)) 1795 (buffer)
1796 register Lisp_Object buffer; 1796 register Lisp_Object buffer;
1797{ 1797{
1798 register Lisp_Object buf; 1798 register Lisp_Object buf;
@@ -1818,8 +1818,8 @@ set_buffer_if_live (buffer)
1818 1818
1819DEFUN ("barf-if-buffer-read-only", Fbarf_if_buffer_read_only, 1819DEFUN ("barf-if-buffer-read-only", Fbarf_if_buffer_read_only,
1820 Sbarf_if_buffer_read_only, 0, 0, 0, 1820 Sbarf_if_buffer_read_only, 0, 0, 0,
1821 /* Signal a `buffer-read-only' error if the current buffer is read-only. */ 1821 doc: /* Signal a `buffer-read-only' error if the current buffer is read-only. */)
1822 ()) 1822 ()
1823{ 1823{
1824 if (!NILP (current_buffer->read_only) 1824 if (!NILP (current_buffer->read_only)
1825 && NILP (Vinhibit_read_only)) 1825 && NILP (Vinhibit_read_only))
@@ -1828,13 +1828,13 @@ DEFUN ("barf-if-buffer-read-only", Fbarf_if_buffer_read_only,
1828} 1828}
1829 1829
1830DEFUN ("bury-buffer", Fbury_buffer, Sbury_buffer, 0, 1, "", 1830DEFUN ("bury-buffer", Fbury_buffer, Sbury_buffer, 0, 1, "",
1831 /* Put BUFFER at the end of the list of all buffers. 1831 doc: /* Put BUFFER at the end of the list of all buffers.
1832There it is the least likely candidate for `other-buffer' to return; 1832There it is the least likely candidate for `other-buffer' to return;
1833thus, the least likely buffer for \\[switch-to-buffer] to select by default. 1833thus, the least likely buffer for \\[switch-to-buffer] to select by default.
1834If BUFFER is nil or omitted, bury the current buffer. 1834If BUFFER is nil or omitted, bury the current buffer.
1835Also, if BUFFER is nil or omitted, remove the current buffer from the 1835Also, if BUFFER is nil or omitted, remove the current buffer from the
1836selected window if it is displayed there. */ 1836selected window if it is displayed there. */)
1837 (buffer)) 1837 (buffer)
1838 register Lisp_Object buffer; 1838 register Lisp_Object buffer;
1839{ 1839{
1840 /* Figure out what buffer we're going to bury. */ 1840 /* Figure out what buffer we're going to bury. */
@@ -1882,10 +1882,10 @@ selected window if it is displayed there. */
1882} 1882}
1883 1883
1884DEFUN ("erase-buffer", Ferase_buffer, Serase_buffer, 0, 0, "*", 1884DEFUN ("erase-buffer", Ferase_buffer, Serase_buffer, 0, 0, "*",
1885 /* Delete the entire contents of the current buffer. 1885 doc: /* Delete the entire contents of the current buffer.
1886Any narrowing restriction in effect (see `narrow-to-region') is removed, 1886Any narrowing restriction in effect (see `narrow-to-region') is removed,
1887so the buffer is truly empty after this. */ 1887so the buffer is truly empty after this. */)
1888 ()) 1888 ()
1889{ 1889{
1890 Fwiden (); 1890 Fwiden ();
1891 1891
@@ -1956,12 +1956,12 @@ advance_to_char_boundary (byte_pos)
1956 1956
1957DEFUN ("set-buffer-multibyte", Fset_buffer_multibyte, Sset_buffer_multibyte, 1957DEFUN ("set-buffer-multibyte", Fset_buffer_multibyte, Sset_buffer_multibyte,
1958 1, 1, 0, 1958 1, 1, 0,
1959 /* Set the multibyte flag of the current buffer to FLAG. 1959 doc: /* Set the multibyte flag of the current buffer to FLAG.
1960If FLAG is t, this makes the buffer a multibyte buffer. 1960If FLAG is t, this makes the buffer a multibyte buffer.
1961If FLAG is nil, this makes the buffer a single-byte buffer. 1961If FLAG is nil, this makes the buffer a single-byte buffer.
1962The buffer contents remain unchanged as a sequence of bytes 1962The buffer contents remain unchanged as a sequence of bytes
1963but the contents viewed as characters do change. */ 1963but the contents viewed as characters do change. */)
1964 (flag)) 1964 (flag)
1965 Lisp_Object flag; 1965 Lisp_Object flag;
1966{ 1966{
1967 Lisp_Object tail, markers; 1967 Lisp_Object tail, markers;
@@ -2209,7 +2209,7 @@ but the contents viewed as characters do change. */
2209 2209
2210DEFUN ("kill-all-local-variables", Fkill_all_local_variables, Skill_all_local_variables, 2210DEFUN ("kill-all-local-variables", Fkill_all_local_variables, Skill_all_local_variables,
2211 0, 0, 0, 2211 0, 0, 0,
2212 /* Switch to Fundamental mode by killing current buffer's local variables. 2212 doc: /* Switch to Fundamental mode by killing current buffer's local variables.
2213Most local variable bindings are eliminated so that the default values 2213Most local variable bindings are eliminated so that the default values
2214become effective once more. Also, the syntax table is set from 2214become effective once more. Also, the syntax table is set from
2215`standard-syntax-table', the local keymap is set to nil, 2215`standard-syntax-table', the local keymap is set to nil,
@@ -2223,8 +2223,8 @@ As a special exception, local variables whose names have
2223a non-nil `permanent-local' property are not eliminated by this function. 2223a non-nil `permanent-local' property are not eliminated by this function.
2224 2224
2225The first thing this function does is run 2225The first thing this function does is run
2226the normal hook `change-major-mode-hook'. */ 2226the normal hook `change-major-mode-hook'. */)
2227 ()) 2227 ()
2228{ 2228{
2229 register Lisp_Object alist, sym, tem; 2229 register Lisp_Object alist, sym, tem;
2230 Lisp_Object oalist; 2230 Lisp_Object oalist;
@@ -3346,22 +3346,22 @@ fix_overlays_before (bp, prev, pos)
3346} 3346}
3347 3347
3348DEFUN ("overlayp", Foverlayp, Soverlayp, 1, 1, 0, 3348DEFUN ("overlayp", Foverlayp, Soverlayp, 1, 1, 0,
3349 /* Return t if OBJECT is an overlay. */ 3349 doc: /* Return t if OBJECT is an overlay. */)
3350 (object)) 3350 (object)
3351 Lisp_Object object; 3351 Lisp_Object object;
3352{ 3352{
3353 return (OVERLAYP (object) ? Qt : Qnil); 3353 return (OVERLAYP (object) ? Qt : Qnil);
3354} 3354}
3355 3355
3356DEFUN ("make-overlay", Fmake_overlay, Smake_overlay, 2, 5, 0, 3356DEFUN ("make-overlay", Fmake_overlay, Smake_overlay, 2, 5, 0,
3357 /* Create a new overlay with range BEG to END in BUFFER. 3357 doc: /* Create a new overlay with range BEG to END in BUFFER.
3358If omitted, BUFFER defaults to the current buffer. 3358If omitted, BUFFER defaults to the current buffer.
3359BEG and END may be integers or markers. 3359BEG and END may be integers or markers.
3360The fourth arg FRONT-ADVANCE, if non-nil, makes the 3360The fourth arg FRONT-ADVANCE, if non-nil, makes the
3361front delimiter advance when text is inserted there. 3361front delimiter advance when text is inserted there.
3362The fifth arg REAR-ADVANCE, if non-nil, makes the 3362The fifth arg REAR-ADVANCE, if non-nil, makes the
3363rear delimiter advance when text is inserted there. */ 3363rear delimiter advance when text is inserted there. */)
3364 (beg, end, buffer, front_advance, rear_advance)) 3364 (beg, end, buffer, front_advance, rear_advance)
3365 Lisp_Object beg, end, buffer; 3365 Lisp_Object beg, end, buffer;
3366 Lisp_Object front_advance, rear_advance; 3366 Lisp_Object front_advance, rear_advance;
3367{ 3367{
@@ -3451,11 +3451,11 @@ modify_overlay (buf, start, end)
3451Lisp_Object Fdelete_overlay (); 3451Lisp_Object Fdelete_overlay ();
3452 3452
3453DEFUN ("move-overlay", Fmove_overlay, Smove_overlay, 3, 4, 0, 3453DEFUN ("move-overlay", Fmove_overlay, Smove_overlay, 3, 4, 0,
3454 /* Set the endpoints of OVERLAY to BEG and END in BUFFER. 3454 doc: /* Set the endpoints of OVERLAY to BEG and END in BUFFER.
3455If BUFFER is omitted, leave OVERLAY in the same buffer it inhabits now. 3455If BUFFER is omitted, leave OVERLAY in the same buffer it inhabits now.
3456If BUFFER is omitted, and OVERLAY is in no buffer, put it in the current 3456If BUFFER is omitted, and OVERLAY is in no buffer, put it in the current
3457buffer. */ 3457buffer. */)
3458 (overlay, beg, end, buffer)) 3458 (overlay, beg, end, buffer)
3459 Lisp_Object overlay, beg, end, buffer; 3459 Lisp_Object overlay, beg, end, buffer;
3460{ 3460{
3461 struct buffer *b, *ob; 3461 struct buffer *b, *ob;
@@ -3555,8 +3555,8 @@ buffer. */
3555} 3555}
3556 3556
3557DEFUN ("delete-overlay", Fdelete_overlay, Sdelete_overlay, 1, 1, 0, 3557DEFUN ("delete-overlay", Fdelete_overlay, Sdelete_overlay, 1, 1, 0,
3558 /* Delete the overlay OVERLAY from its buffer. */ 3558 doc: /* Delete the overlay OVERLAY from its buffer. */)
3559 (overlay)) 3559 (overlay)
3560 Lisp_Object overlay; 3560 Lisp_Object overlay;
3561{ 3561{
3562 Lisp_Object buffer; 3562 Lisp_Object buffer;
@@ -3595,8 +3595,8 @@ DEFUN ("delete-overlay", Fdelete_overlay, Sdelete_overlay, 1, 1, 0,
3595/* Overlay dissection functions. */ 3595/* Overlay dissection functions. */
3596 3596
3597DEFUN ("overlay-start", Foverlay_start, Soverlay_start, 1, 1, 0, 3597DEFUN ("overlay-start", Foverlay_start, Soverlay_start, 1, 1, 0,
3598 /* Return the position at which OVERLAY starts. */ 3598 doc: /* Return the position at which OVERLAY starts. */)
3599 (overlay)) 3599 (overlay)
3600 Lisp_Object overlay; 3600 Lisp_Object overlay;
3601{ 3601{
3602 CHECK_OVERLAY (overlay, 0); 3602 CHECK_OVERLAY (overlay, 0);
@@ -3605,8 +3605,8 @@ DEFUN ("overlay-start", Foverlay_start, Soverlay_start, 1, 1, 0,
3605} 3605}
3606 3606
3607DEFUN ("overlay-end", Foverlay_end, Soverlay_end, 1, 1, 0, 3607DEFUN ("overlay-end", Foverlay_end, Soverlay_end, 1, 1, 0,
3608 /* Return the position at which OVERLAY ends. */ 3608 doc: /* Return the position at which OVERLAY ends. */)
3609 (overlay)) 3609 (overlay)
3610 Lisp_Object overlay; 3610 Lisp_Object overlay;
3611{ 3611{
3612 CHECK_OVERLAY (overlay, 0); 3612 CHECK_OVERLAY (overlay, 0);
@@ -3615,8 +3615,8 @@ DEFUN ("overlay-end", Foverlay_end, Soverlay_end, 1, 1, 0,
3615} 3615}
3616 3616
3617DEFUN ("overlay-buffer", Foverlay_buffer, Soverlay_buffer, 1, 1, 0, 3617DEFUN ("overlay-buffer", Foverlay_buffer, Soverlay_buffer, 1, 1, 0,
3618 /* Return the buffer OVERLAY belongs to. */ 3618 doc: /* Return the buffer OVERLAY belongs to. */)
3619 (overlay)) 3619 (overlay)
3620 Lisp_Object overlay; 3620 Lisp_Object overlay;
3621{ 3621{
3622 CHECK_OVERLAY (overlay, 0); 3622 CHECK_OVERLAY (overlay, 0);
@@ -3625,10 +3625,10 @@ DEFUN ("overlay-buffer", Foverlay_buffer, Soverlay_buffer, 1, 1, 0,
3625} 3625}
3626 3626
3627DEFUN ("overlay-properties", Foverlay_properties, Soverlay_properties, 1, 1, 0, 3627DEFUN ("overlay-properties", Foverlay_properties, Soverlay_properties, 1, 1, 0,
3628 /* Return a list of the properties on OVERLAY. 3628 doc: /* Return a list of the properties on OVERLAY.
3629This is a copy of OVERLAY's plist; modifying its conses has no effect on 3629This is a copy of OVERLAY's plist; modifying its conses has no effect on
3630OVERLAY. */ 3630OVERLAY. */)
3631 (overlay)) 3631 (overlay)
3632 Lisp_Object overlay; 3632 Lisp_Object overlay;
3633{ 3633{
3634 CHECK_OVERLAY (overlay, 0); 3634 CHECK_OVERLAY (overlay, 0);
@@ -3638,8 +3638,8 @@ OVERLAY. */
3638 3638
3639 3639
3640DEFUN ("overlays-at", Foverlays_at, Soverlays_at, 1, 1, 0, 3640DEFUN ("overlays-at", Foverlays_at, Soverlays_at, 1, 1, 0,
3641 /* Return a list of the overlays that contain position POS. */ 3641 doc: /* Return a list of the overlays that contain position POS. */)
3642 (pos)) 3642 (pos)
3643 Lisp_Object pos; 3643 Lisp_Object pos;
3644{ 3644{
3645 int noverlays; 3645 int noverlays;
@@ -3666,12 +3666,12 @@ DEFUN ("overlays-at", Foverlays_at, Soverlays_at, 1, 1, 0,
3666} 3666}
3667 3667
3668DEFUN ("overlays-in", Foverlays_in, Soverlays_in, 2, 2, 0, 3668DEFUN ("overlays-in", Foverlays_in, Soverlays_in, 2, 2, 0,
3669 /* Return a list of the overlays that overlap the region BEG ... END. 3669 doc: /* Return a list of the overlays that overlap the region BEG ... END.
3670Overlap means that at least one character is contained within the overlay 3670Overlap means that at least one character is contained within the overlay
3671and also contained within the specified region. 3671and also contained within the specified region.
3672Empty overlays are included in the result if they are located at BEG 3672Empty overlays are included in the result if they are located at BEG
3673or between BEG and END. */ 3673or between BEG and END. */)
3674 (beg, end)) 3674 (beg, end)
3675 Lisp_Object beg, end; 3675 Lisp_Object beg, end;
3676{ 3676{
3677 int noverlays; 3677 int noverlays;
@@ -3699,9 +3699,9 @@ or between BEG and END. */
3699 3699
3700DEFUN ("next-overlay-change", Fnext_overlay_change, Snext_overlay_change, 3700DEFUN ("next-overlay-change", Fnext_overlay_change, Snext_overlay_change,
3701 1, 1, 0, 3701 1, 1, 0,
3702 /* Return the next position after POS where an overlay starts or ends. 3702 doc: /* Return the next position after POS where an overlay starts or ends.
3703If there are no more overlay boundaries after POS, return (point-max). */ 3703If there are no more overlay boundaries after POS, return (point-max). */)
3704 (pos)) 3704 (pos)
3705 Lisp_Object pos; 3705 Lisp_Object pos;
3706{ 3706{
3707 int noverlays; 3707 int noverlays;
@@ -3740,9 +3740,9 @@ If there are no more overlay boundaries after POS, return (point-max). */
3740 3740
3741DEFUN ("previous-overlay-change", Fprevious_overlay_change, 3741DEFUN ("previous-overlay-change", Fprevious_overlay_change,
3742 Sprevious_overlay_change, 1, 1, 0, 3742 Sprevious_overlay_change, 1, 1, 0,
3743 /* Return the previous position before POS where an overlay starts or ends. 3743 doc: /* Return the previous position before POS where an overlay starts or ends.
3744If there are no more overlay boundaries before POS, return (point-min). */ 3744If there are no more overlay boundaries before POS, return (point-min). */)
3745 (pos)) 3745 (pos)
3746 Lisp_Object pos; 3746 Lisp_Object pos;
3747{ 3747{
3748 int noverlays; 3748 int noverlays;
@@ -3773,13 +3773,13 @@ If there are no more overlay boundaries before POS, return (point-min). */
3773/* These functions are for debugging overlays. */ 3773/* These functions are for debugging overlays. */
3774 3774
3775DEFUN ("overlay-lists", Foverlay_lists, Soverlay_lists, 0, 0, 0, 3775DEFUN ("overlay-lists", Foverlay_lists, Soverlay_lists, 0, 0, 0,
3776 /* Return a pair of lists giving all the overlays of the current buffer. 3776 doc: /* Return a pair of lists giving all the overlays of the current buffer.
3777The car has all the overlays before the overlay center; 3777The car has all the overlays before the overlay center;
3778the cdr has all the overlays after the overlay center. 3778the cdr has all the overlays after the overlay center.
3779Recentering overlays moves overlays between these lists. 3779Recentering overlays moves overlays between these lists.
3780The lists you get are copies, so that changing them has no effect. 3780The lists you get are copies, so that changing them has no effect.
3781However, the overlays you get are the real objects that the buffer uses. */ 3781However, the overlays you get are the real objects that the buffer uses. */)
3782 ()) 3782 ()
3783{ 3783{
3784 Lisp_Object before, after; 3784 Lisp_Object before, after;
3785 before = current_buffer->overlays_before; 3785 before = current_buffer->overlays_before;
@@ -3793,8 +3793,8 @@ However, the overlays you get are the real objects that the buffer uses. */
3793} 3793}
3794 3794
3795DEFUN ("overlay-recenter", Foverlay_recenter, Soverlay_recenter, 1, 1, 0, 3795DEFUN ("overlay-recenter", Foverlay_recenter, Soverlay_recenter, 1, 1, 0,
3796 /* Recenter the overlays of the current buffer around position POS. */ 3796 doc: /* Recenter the overlays of the current buffer around position POS. */)
3797 (pos)) 3797 (pos)
3798 Lisp_Object pos; 3798 Lisp_Object pos;
3799{ 3799{
3800 CHECK_NUMBER_COERCE_MARKER (pos, 0); 3800 CHECK_NUMBER_COERCE_MARKER (pos, 0);
@@ -3804,8 +3804,8 @@ DEFUN ("overlay-recenter", Foverlay_recenter, Soverlay_recenter, 1, 1, 0,
3804} 3804}
3805 3805
3806DEFUN ("overlay-get", Foverlay_get, Soverlay_get, 2, 2, 0, 3806DEFUN ("overlay-get", Foverlay_get, Soverlay_get, 2, 2, 0,
3807 /* Get the property of overlay OVERLAY with property name PROP. */ 3807 doc: /* Get the property of overlay OVERLAY with property name PROP. */)
3808 (overlay, prop)) 3808 (overlay, prop)
3809 Lisp_Object overlay, prop; 3809 Lisp_Object overlay, prop;
3810{ 3810{
3811 Lisp_Object plist, fallback; 3811 Lisp_Object plist, fallback;
@@ -3833,8 +3833,8 @@ DEFUN ("overlay-get", Foverlay_get, Soverlay_get, 2, 2, 0,
3833} 3833}
3834 3834
3835DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0, 3835DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0,
3836 /* Set one property of overlay OVERLAY: give property PROP value VALUE. */ 3836 doc: /* Set one property of overlay OVERLAY: give property PROP value VALUE. */)
3837 (overlay, prop, value)) 3837 (overlay, prop, value)
3838 Lisp_Object overlay, prop, value; 3838 Lisp_Object overlay, prop, value;
3839{ 3839{
3840 Lisp_Object tail, buffer; 3840 Lisp_Object tail, buffer;
@@ -5011,118 +5011,118 @@ syms_of_buffer ()
5011 buffer_defaults will all be marked via Vbuffer_defaults. */ 5011 buffer_defaults will all be marked via Vbuffer_defaults. */
5012 5012
5013 DEFVAR_LISP_NOPRO ("default-mode-line-format", 5013 DEFVAR_LISP_NOPRO ("default-mode-line-format",
5014 &buffer_defaults.mode_line_format 5014 &buffer_defaults.mode_line_format,
5015 /* Default value of `mode-line-format' for buffers that don't override it. 5015 doc: /* Default value of `mode-line-format' for buffers that don't override it.
5016This is the same as (default-value 'mode-line-format). */); 5016This is the same as (default-value 'mode-line-format). */);
5017 5017
5018 DEFVAR_LISP_NOPRO ("default-header-line-format", 5018 DEFVAR_LISP_NOPRO ("default-header-line-format",
5019 &buffer_defaults.header_line_format 5019 &buffer_defaults.header_line_format,
5020 /* Default value of `header-line-format' for buffers that don't override it. 5020 doc: /* Default value of `header-line-format' for buffers that don't override it.
5021This is the same as (default-value 'header-line-format). */); 5021This is the same as (default-value 'header-line-format). */);
5022 5022
5023 DEFVAR_LISP_NOPRO ("default-cursor-type", &buffer_defaults.cursor_type 5023 DEFVAR_LISP_NOPRO ("default-cursor-type", &buffer_defaults.cursor_type,
5024 /* Default value of `cursor-type' for buffers that don't override it. 5024 doc: /* Default value of `cursor-type' for buffers that don't override it.
5025This is the same as (default-value 'cursor-type). */); 5025This is the same as (default-value 'cursor-type). */);
5026 5026
5027 DEFVAR_LISP_NOPRO ("default-line-spacing", 5027 DEFVAR_LISP_NOPRO ("default-line-spacing",
5028 &buffer_defaults.extra_line_spacing 5028 &buffer_defaults.extra_line_spacing,
5029 /* Default value of `line-spacing' for buffers that don't override it. 5029 doc: /* Default value of `line-spacing' for buffers that don't override it.
5030This is the same as (default-value 'line-spacing). */); 5030This is the same as (default-value 'line-spacing). */);
5031 5031
5032 DEFVAR_LISP_NOPRO ("default-abbrev-mode", 5032 DEFVAR_LISP_NOPRO ("default-abbrev-mode",
5033 &buffer_defaults.abbrev_mode 5033 &buffer_defaults.abbrev_mode,
5034 /* Default value of `abbrev-mode' for buffers that do not override it. 5034 doc: /* Default value of `abbrev-mode' for buffers that do not override it.
5035This is the same as (default-value 'abbrev-mode). */); 5035This is the same as (default-value 'abbrev-mode). */);
5036 5036
5037 DEFVAR_LISP_NOPRO ("default-ctl-arrow", 5037 DEFVAR_LISP_NOPRO ("default-ctl-arrow",
5038 &buffer_defaults.ctl_arrow 5038 &buffer_defaults.ctl_arrow,
5039 /* Default value of `ctl-arrow' for buffers that do not override it. 5039 doc: /* Default value of `ctl-arrow' for buffers that do not override it.
5040This is the same as (default-value 'ctl-arrow). */); 5040This is the same as (default-value 'ctl-arrow). */);
5041 5041
5042 DEFVAR_LISP_NOPRO ("default-direction-reversed", 5042 DEFVAR_LISP_NOPRO ("default-direction-reversed",
5043 &buffer_defaults.direction_reversed 5043 &buffer_defaults.direction_reversed,
5044 /* Default value of `direction_reversed' for buffers that do not override it. 5044 doc: /* Default value of `direction_reversed' for buffers that do not override it.
5045This is the same as (default-value 'direction-reversed). */); 5045This is the same as (default-value 'direction-reversed). */);
5046 5046
5047 DEFVAR_LISP_NOPRO ("default-enable-multibyte-characters", 5047 DEFVAR_LISP_NOPRO ("default-enable-multibyte-characters",
5048 &buffer_defaults.enable_multibyte_characters 5048 &buffer_defaults.enable_multibyte_characters,
5049 /* *Default value of `enable-multibyte-characters' for buffers not overriding it. 5049 doc: /* *Default value of `enable-multibyte-characters' for buffers not overriding it.
5050This is the same as (default-value 'enable-multibyte-characters). */); 5050This is the same as (default-value 'enable-multibyte-characters). */);
5051 5051
5052 DEFVAR_LISP_NOPRO ("default-buffer-file-coding-system", 5052 DEFVAR_LISP_NOPRO ("default-buffer-file-coding-system",
5053 &buffer_defaults.buffer_file_coding_system 5053 &buffer_defaults.buffer_file_coding_system,
5054 /* Default value of `buffer-file-coding-system' for buffers not overriding it. 5054 doc: /* Default value of `buffer-file-coding-system' for buffers not overriding it.
5055This is the same as (default-value 'buffer-file-coding-system). */); 5055This is the same as (default-value 'buffer-file-coding-system). */);
5056 5056
5057 DEFVAR_LISP_NOPRO ("default-truncate-lines", 5057 DEFVAR_LISP_NOPRO ("default-truncate-lines",
5058 &buffer_defaults.truncate_lines 5058 &buffer_defaults.truncate_lines,
5059 /* Default value of `truncate-lines' for buffers that do not override it. 5059 doc: /* Default value of `truncate-lines' for buffers that do not override it.
5060This is the same as (default-value 'truncate-lines). */); 5060This is the same as (default-value 'truncate-lines). */);
5061 5061
5062 DEFVAR_LISP_NOPRO ("default-fill-column", 5062 DEFVAR_LISP_NOPRO ("default-fill-column",
5063 &buffer_defaults.fill_column 5063 &buffer_defaults.fill_column,
5064 /* Default value of `fill-column' for buffers that do not override it. 5064 doc: /* Default value of `fill-column' for buffers that do not override it.
5065This is the same as (default-value 'fill-column). */); 5065This is the same as (default-value 'fill-column). */);
5066 5066
5067 DEFVAR_LISP_NOPRO ("default-left-margin", 5067 DEFVAR_LISP_NOPRO ("default-left-margin",
5068 &buffer_defaults.left_margin 5068 &buffer_defaults.left_margin,
5069 /* Default value of `left-margin' for buffers that do not override it. 5069 doc: /* Default value of `left-margin' for buffers that do not override it.
5070This is the same as (default-value 'left-margin). */); 5070This is the same as (default-value 'left-margin). */);
5071 5071
5072 DEFVAR_LISP_NOPRO ("default-tab-width", 5072 DEFVAR_LISP_NOPRO ("default-tab-width",
5073 &buffer_defaults.tab_width 5073 &buffer_defaults.tab_width,
5074 /* Default value of `tab-width' for buffers that do not override it. 5074 doc: /* Default value of `tab-width' for buffers that do not override it.
5075This is the same as (default-value 'tab-width). */); 5075This is the same as (default-value 'tab-width). */);
5076 5076
5077 DEFVAR_LISP_NOPRO ("default-case-fold-search", 5077 DEFVAR_LISP_NOPRO ("default-case-fold-search",
5078 &buffer_defaults.case_fold_search 5078 &buffer_defaults.case_fold_search,
5079 /* Default value of `case-fold-search' for buffers that don't override it. 5079 doc: /* Default value of `case-fold-search' for buffers that don't override it.
5080This is the same as (default-value 'case-fold-search). */); 5080This is the same as (default-value 'case-fold-search). */);
5081 5081
5082#ifdef DOS_NT 5082#ifdef DOS_NT
5083 DEFVAR_LISP_NOPRO ("default-buffer-file-type", 5083 DEFVAR_LISP_NOPRO ("default-buffer-file-type",
5084 &buffer_defaults.buffer_file_type 5084 &buffer_defaults.buffer_file_type,
5085 /* Default file type for buffers that do not override it. 5085 doc: /* Default file type for buffers that do not override it.
5086This is the same as (default-value 'buffer-file-type). 5086This is the same as (default-value 'buffer-file-type).
5087The file type is nil for text, t for binary. */); 5087The file type is nil for text, t for binary. */);
5088#endif 5088#endif
5089 5089
5090 DEFVAR_LISP_NOPRO ("default-left-margin-width", 5090 DEFVAR_LISP_NOPRO ("default-left-margin-width",
5091 &buffer_defaults.left_margin_width 5091 &buffer_defaults.left_margin_width,
5092 /* Default value of `left-margin-width' for buffers that don't override it. 5092 doc: /* Default value of `left-margin-width' for buffers that don't override it.
5093This is the same as (default-value 'left-margin-width). */); 5093This is the same as (default-value 'left-margin-width). */);
5094 5094
5095 DEFVAR_LISP_NOPRO ("default-right-margin-width", 5095 DEFVAR_LISP_NOPRO ("default-right-margin-width",
5096 &buffer_defaults.right_margin_width 5096 &buffer_defaults.right_margin_width,
5097 /* Default value of `right_margin_width' for buffers that don't override it. 5097 doc: /* Default value of `right_margin_width' for buffers that don't override it.
5098This is the same as (default-value 'right-margin-width). */); 5098This is the same as (default-value 'right-margin-width). */);
5099 5099
5100 DEFVAR_LISP_NOPRO ("default-indicate-empty-lines", 5100 DEFVAR_LISP_NOPRO ("default-indicate-empty-lines",
5101 &buffer_defaults.indicate_empty_lines 5101 &buffer_defaults.indicate_empty_lines,
5102 /* Default value of `indicate-empty-lines' for buffers that don't override it. 5102 doc: /* Default value of `indicate-empty-lines' for buffers that don't override it.
5103This is the same as (default-value 'indicate-empty-lines). */); 5103This is the same as (default-value 'indicate-empty-lines). */);
5104 5104
5105 DEFVAR_LISP_NOPRO ("default-scroll-up-aggressively", 5105 DEFVAR_LISP_NOPRO ("default-scroll-up-aggressively",
5106 &buffer_defaults.scroll_up_aggressively 5106 &buffer_defaults.scroll_up_aggressively,
5107 /* Default value of `scroll-up-aggressively' for buffers that 5107 doc: /* Default value of `scroll-up-aggressively' for buffers that
5108don't override it. This is the same as (default-value 5108don't override it. This is the same as (default-value
5109'scroll-up-aggressively). */); 5109'scroll-up-aggressively). */);
5110 5110
5111 DEFVAR_LISP_NOPRO ("default-scroll-down-aggressively", 5111 DEFVAR_LISP_NOPRO ("default-scroll-down-aggressively",
5112 &buffer_defaults.scroll_down_aggressively 5112 &buffer_defaults.scroll_down_aggressively,
5113 /* Default value of `scroll-down-aggressively' for buffers that 5113 doc: /* Default value of `scroll-down-aggressively' for buffers that
5114don't override it. This is the same as (default-value 5114don't override it. This is the same as (default-value
5115'scroll-down-aggressively). */); 5115'scroll-down-aggressively). */);
5116 5116
5117 DEFVAR_PER_BUFFER ("header-line-format", 5117 DEFVAR_PER_BUFFER ("header-line-format",
5118 &current_buffer->header_line_format, 5118 &current_buffer->header_line_format,
5119 Qnil 5119 Qnil,
5120 /* Analogous to `mode-line-format', but for the mode line that can be 5120 doc: /* Analogous to `mode-line-format', but for the mode line that can be
5121displayed at the top of a window. */); 5121displayed at the top of a window. */);
5122 5122
5123 DEFVAR_PER_BUFFER ("mode-line-format", &current_buffer->mode_line_format, 5123 DEFVAR_PER_BUFFER ("mode-line-format", &current_buffer->mode_line_format,
5124 Qnil 5124 Qnil,
5125 /* Template for displaying mode line for current buffer. 5125 doc: /* Template for displaying mode line for current buffer.
5126Each buffer has its own value of this variable. 5126Each buffer has its own value of this variable.
5127Value may be nil, a string, a symbol or a list or cons cell. 5127Value may be nil, a string, a symbol or a list or cons cell.
5128A value of nil means don't display a mode line. 5128A value of nil means don't display a mode line.
@@ -5163,48 +5163,48 @@ A string is printed verbatim in the mode line except for %-constructs:
5163 %% -- print %. %- -- print infinitely many dashes. 5163 %% -- print %. %- -- print infinitely many dashes.
5164Decimal digits after the % specify field width to which to pad. */); 5164Decimal digits after the % specify field width to which to pad. */);
5165 5165
5166 DEFVAR_LISP_NOPRO ("default-major-mode", &buffer_defaults.major_mode 5166 DEFVAR_LISP_NOPRO ("default-major-mode", &buffer_defaults.major_mode,
5167 /* *Major mode for new buffers. Defaults to `fundamental-mode'. 5167 doc: /* *Major mode for new buffers. Defaults to `fundamental-mode'.
5168nil here means use current buffer's major mode. */); 5168nil here means use current buffer's major mode. */);
5169 5169
5170 DEFVAR_PER_BUFFER ("major-mode", &current_buffer->major_mode, 5170 DEFVAR_PER_BUFFER ("major-mode", &current_buffer->major_mode,
5171 make_number (Lisp_Symbol) 5171 make_number (Lisp_Symbol),
5172 /* Symbol for current buffer's major mode. */); 5172 doc: /* Symbol for current buffer's major mode. */);
5173 5173
5174 DEFVAR_PER_BUFFER ("mode-name", &current_buffer->mode_name, 5174 DEFVAR_PER_BUFFER ("mode-name", &current_buffer->mode_name,
5175 make_number (Lisp_String) 5175 make_number (Lisp_String),
5176 /* Pretty name of current buffer's major mode (a string). */); 5176 doc: /* Pretty name of current buffer's major mode (a string). */);
5177 5177
5178 DEFVAR_PER_BUFFER ("abbrev-mode", &current_buffer->abbrev_mode, Qnil 5178 DEFVAR_PER_BUFFER ("abbrev-mode", &current_buffer->abbrev_mode, Qnil,
5179 /* Non-nil turns on automatic expansion of abbrevs as they are inserted. */); 5179 doc: /* Non-nil turns on automatic expansion of abbrevs as they are inserted. */);
5180 5180
5181 DEFVAR_PER_BUFFER ("case-fold-search", &current_buffer->case_fold_search, 5181 DEFVAR_PER_BUFFER ("case-fold-search", &current_buffer->case_fold_search,
5182 Qnil 5182 Qnil,
5183 /* *Non-nil if searches and matches should ignore case. */); 5183 doc: /* *Non-nil if searches and matches should ignore case. */);
5184 5184
5185 DEFVAR_PER_BUFFER ("fill-column", &current_buffer->fill_column, 5185 DEFVAR_PER_BUFFER ("fill-column", &current_buffer->fill_column,
5186 make_number (Lisp_Int) 5186 make_number (Lisp_Int),
5187 /* *Column beyond which automatic line-wrapping should happen. */); 5187 doc: /* *Column beyond which automatic line-wrapping should happen. */);
5188 5188
5189 DEFVAR_PER_BUFFER ("left-margin", &current_buffer->left_margin, 5189 DEFVAR_PER_BUFFER ("left-margin", &current_buffer->left_margin,
5190 make_number (Lisp_Int) 5190 make_number (Lisp_Int),
5191 /* *Column for the default indent-line-function to indent to. 5191 doc: /* *Column for the default indent-line-function to indent to.
5192Linefeed indents to this column in Fundamental mode. */); 5192Linefeed indents to this column in Fundamental mode. */);
5193 5193
5194 DEFVAR_PER_BUFFER ("tab-width", &current_buffer->tab_width, 5194 DEFVAR_PER_BUFFER ("tab-width", &current_buffer->tab_width,
5195 make_number (Lisp_Int) 5195 make_number (Lisp_Int),
5196 /* *Distance between tab stops (for display of tab characters), in columns. */); 5196 doc: /* *Distance between tab stops (for display of tab characters), in columns. */);
5197 5197
5198 DEFVAR_PER_BUFFER ("ctl-arrow", &current_buffer->ctl_arrow, Qnil 5198 DEFVAR_PER_BUFFER ("ctl-arrow", &current_buffer->ctl_arrow, Qnil,
5199 /* *Non-nil means display control chars with uparrow. 5199 doc: /* *Non-nil means display control chars with uparrow.
5200A value of nil means use backslash and octal digits. 5200A value of nil means use backslash and octal digits.
5201This variable does not apply to characters whose display is specified 5201This variable does not apply to characters whose display is specified
5202in the current display table (if there is one). */); 5202in the current display table (if there is one). */);
5203 5203
5204 DEFVAR_PER_BUFFER ("enable-multibyte-characters", 5204 DEFVAR_PER_BUFFER ("enable-multibyte-characters",
5205 &current_buffer->enable_multibyte_characters, 5205 &current_buffer->enable_multibyte_characters,
5206 make_number (-1) 5206 make_number (-1),
5207 /* Non-nil means the buffer contents are regarded as multi-byte characters. 5207 doc: /* Non-nil means the buffer contents are regarded as multi-byte characters.
5208Otherwise they are regarded as unibyte. This affects the display, 5208Otherwise they are regarded as unibyte. This affects the display,
5209file I/O and the behavior of various editing commands. 5209file I/O and the behavior of various editing commands.
5210 5210
@@ -5215,8 +5215,8 @@ See also variable `default-enable-multibyte-characters' and Info node
5215`(elisp)Text Representations'. */); 5215`(elisp)Text Representations'. */);
5216 5216
5217 DEFVAR_PER_BUFFER ("buffer-file-coding-system", 5217 DEFVAR_PER_BUFFER ("buffer-file-coding-system",
5218 &current_buffer->buffer_file_coding_system, Qnil 5218 &current_buffer->buffer_file_coding_system, Qnil,
5219 /* Coding system to be used for encoding the buffer contents on saving. 5219 doc: /* Coding system to be used for encoding the buffer contents on saving.
5220This variable applies to saving the buffer, and also to `write-region' 5220This variable applies to saving the buffer, and also to `write-region'
5221and other functions that use `write-region'. 5221and other functions that use `write-region'.
5222It does not apply to sending output to subprocesses, however. 5222It does not apply to sending output to subprocesses, however.
@@ -5230,11 +5230,11 @@ The variable `coding-system-for-write', if non-nil, overrides this variable.
5230This variable is never applied to a way of decoding a file while reading it. */); 5230This variable is never applied to a way of decoding a file while reading it. */);
5231 5231
5232 DEFVAR_PER_BUFFER ("direction-reversed", &current_buffer->direction_reversed, 5232 DEFVAR_PER_BUFFER ("direction-reversed", &current_buffer->direction_reversed,
5233 Qnil 5233 Qnil,
5234 /* *Non-nil means lines in the buffer are displayed right to left. */); 5234 doc: /* *Non-nil means lines in the buffer are displayed right to left. */);
5235 5235
5236 DEFVAR_PER_BUFFER ("truncate-lines", &current_buffer->truncate_lines, Qnil 5236 DEFVAR_PER_BUFFER ("truncate-lines", &current_buffer->truncate_lines, Qnil,
5237 /* *Non-nil means do not display continuation lines; 5237 doc: /* *Non-nil means do not display continuation lines;
5238give each line of text one screen line. 5238give each line of text one screen line.
5239 5239
5240Note that this is overridden by the variable 5240Note that this is overridden by the variable
@@ -5243,57 +5243,57 @@ and this buffer is not full-frame width. */);
5243 5243
5244#ifdef DOS_NT 5244#ifdef DOS_NT
5245 DEFVAR_PER_BUFFER ("buffer-file-type", &current_buffer->buffer_file_type, 5245 DEFVAR_PER_BUFFER ("buffer-file-type", &current_buffer->buffer_file_type,
5246 Qnil 5246 Qnil,
5247 /* Non-nil if the visited file is a binary file. 5247 doc: /* Non-nil if the visited file is a binary file.
5248This variable is meaningful on MS-DOG and Windows NT. 5248This variable is meaningful on MS-DOG and Windows NT.
5249On those systems, it is automatically local in every buffer. 5249On those systems, it is automatically local in every buffer.
5250On other systems, this variable is normally always nil. */); 5250On other systems, this variable is normally always nil. */);
5251#endif 5251#endif
5252 5252
5253 DEFVAR_PER_BUFFER ("default-directory", &current_buffer->directory, 5253 DEFVAR_PER_BUFFER ("default-directory", &current_buffer->directory,
5254 make_number (Lisp_String) 5254 make_number (Lisp_String),
5255 /* Name of default directory of current buffer. Should end with slash. 5255 doc: /* Name of default directory of current buffer. Should end with slash.
5256To interactively change the default directory, use command `cd'. */); 5256To interactively change the default directory, use command `cd'. */);
5257 5257
5258 DEFVAR_PER_BUFFER ("auto-fill-function", &current_buffer->auto_fill_function, 5258 DEFVAR_PER_BUFFER ("auto-fill-function", &current_buffer->auto_fill_function,
5259 Qnil 5259 Qnil,
5260 /* Function called (if non-nil) to perform auto-fill. 5260 doc: /* Function called (if non-nil) to perform auto-fill.
5261It is called after self-inserting any character specified in 5261It is called after self-inserting any character specified in
5262the `auto-fill-chars' table. 5262the `auto-fill-chars' table.
5263NOTE: This variable is not a hook; 5263NOTE: This variable is not a hook;
5264its value may not be a list of functions. */); 5264its value may not be a list of functions. */);
5265 5265
5266 DEFVAR_PER_BUFFER ("buffer-file-name", &current_buffer->filename, 5266 DEFVAR_PER_BUFFER ("buffer-file-name", &current_buffer->filename,
5267 make_number (Lisp_String) 5267 make_number (Lisp_String),
5268 /* Name of file visited in current buffer, or nil if not visiting a file. */); 5268 doc: /* Name of file visited in current buffer, or nil if not visiting a file. */);
5269 5269
5270 DEFVAR_PER_BUFFER ("buffer-file-truename", &current_buffer->file_truename, 5270 DEFVAR_PER_BUFFER ("buffer-file-truename", &current_buffer->file_truename,
5271 make_number (Lisp_String) 5271 make_number (Lisp_String),
5272 /* Abbreviated truename of file visited in current buffer, or nil if none. 5272 doc: /* Abbreviated truename of file visited in current buffer, or nil if none.
5273The truename of a file is calculated by `file-truename' 5273The truename of a file is calculated by `file-truename'
5274and then abbreviated with `abbreviate-file-name'. */); 5274and then abbreviated with `abbreviate-file-name'. */);
5275 5275
5276 DEFVAR_PER_BUFFER ("buffer-auto-save-file-name", 5276 DEFVAR_PER_BUFFER ("buffer-auto-save-file-name",
5277 &current_buffer->auto_save_file_name, 5277 &current_buffer->auto_save_file_name,
5278 make_number (Lisp_String) 5278 make_number (Lisp_String),
5279 /* Name of file for auto-saving current buffer, 5279 doc: /* Name of file for auto-saving current buffer,
5280or nil if buffer should not be auto-saved. */); 5280or nil if buffer should not be auto-saved. */);
5281 5281
5282 DEFVAR_PER_BUFFER ("buffer-read-only", &current_buffer->read_only, Qnil 5282 DEFVAR_PER_BUFFER ("buffer-read-only", &current_buffer->read_only, Qnil,
5283 /* Non-nil if this buffer is read-only. */); 5283 doc: /* Non-nil if this buffer is read-only. */);
5284 5284
5285 DEFVAR_PER_BUFFER ("buffer-backed-up", &current_buffer->backed_up, Qnil 5285 DEFVAR_PER_BUFFER ("buffer-backed-up", &current_buffer->backed_up, Qnil,
5286 /* Non-nil if this buffer's file has been backed up. 5286 doc: /* Non-nil if this buffer's file has been backed up.
5287Backing up is done before the first time the file is saved. */); 5287Backing up is done before the first time the file is saved. */);
5288 5288
5289 DEFVAR_PER_BUFFER ("buffer-saved-size", &current_buffer->save_length, 5289 DEFVAR_PER_BUFFER ("buffer-saved-size", &current_buffer->save_length,
5290 make_number (Lisp_Int) 5290 make_number (Lisp_Int),
5291 /* Length of current buffer when last read in, saved or auto-saved. 5291 doc: /* Length of current buffer when last read in, saved or auto-saved.
52920 initially. */); 52920 initially. */);
5293 5293
5294 DEFVAR_PER_BUFFER ("selective-display", &current_buffer->selective_display, 5294 DEFVAR_PER_BUFFER ("selective-display", &current_buffer->selective_display,
5295 Qnil 5295 Qnil,
5296 /* Non-nil enables selective display: 5296 doc: /* Non-nil enables selective display:
5297Integer N as value means display only lines 5297Integer N as value means display only lines
5298 that start with less than n columns of space. 5298 that start with less than n columns of space.
5299A value of t means, after a ^M, all the rest of the line is invisible. 5299A value of t means, after a ^M, all the rest of the line is invisible.
@@ -5302,12 +5302,12 @@ A value of t means, after a ^M, all the rest of the line is invisible.
5302#ifndef old 5302#ifndef old
5303 DEFVAR_PER_BUFFER ("selective-display-ellipses", 5303 DEFVAR_PER_BUFFER ("selective-display-ellipses",
5304 &current_buffer->selective_display_ellipses, 5304 &current_buffer->selective_display_ellipses,
5305 Qnil 5305 Qnil,
5306 /* t means display ... on previous line when a line is invisible. */); 5306 doc: /* t means display ... on previous line when a line is invisible. */);
5307#endif 5307#endif
5308 5308
5309 DEFVAR_PER_BUFFER ("overwrite-mode", &current_buffer->overwrite_mode, Qnil 5309 DEFVAR_PER_BUFFER ("overwrite-mode", &current_buffer->overwrite_mode, Qnil,
5310 /* Non-nil if self-insertion should replace existing text. 5310 doc: /* Non-nil if self-insertion should replace existing text.
5311The value should be one of `overwrite-mode-textual', 5311The value should be one of `overwrite-mode-textual',
5312`overwrite-mode-binary', or nil. 5312`overwrite-mode-binary', or nil.
5313If it is `overwrite-mode-textual', self-insertion still 5313If it is `overwrite-mode-textual', self-insertion still
@@ -5316,8 +5316,8 @@ until the tab is filled in.
5316If `overwrite-mode-binary', self-insertion replaces newlines and tabs too. */); 5316If `overwrite-mode-binary', self-insertion replaces newlines and tabs too. */);
5317 5317
5318 DEFVAR_PER_BUFFER ("buffer-display-table", &current_buffer->display_table, 5318 DEFVAR_PER_BUFFER ("buffer-display-table", &current_buffer->display_table,
5319 Qnil 5319 Qnil,
5320 /* Display table that controls display of the contents of current buffer. 5320 doc: /* Display table that controls display of the contents of current buffer.
5321 5321
5322If this variable is nil, the value of `standard-display-table' is used. 5322If this variable is nil, the value of `standard-display-table' is used.
5323Each window can have its own, overriding display table, see 5323Each window can have its own, overriding display table, see
@@ -5353,31 +5353,31 @@ In addition, a char-table has six extra slots to control the display of:
5353See also the functions `display-table-slot' and `set-display-table-slot'. */); 5353See also the functions `display-table-slot' and `set-display-table-slot'. */);
5354 5354
5355 DEFVAR_PER_BUFFER ("left-margin-width", &current_buffer->left_margin_width, 5355 DEFVAR_PER_BUFFER ("left-margin-width", &current_buffer->left_margin_width,
5356 Qnil 5356 Qnil,
5357 /* *Width of left marginal area for display of a buffer. 5357 doc: /* *Width of left marginal area for display of a buffer.
5358A value of nil means no marginal area. */); 5358A value of nil means no marginal area. */);
5359 5359
5360 DEFVAR_PER_BUFFER ("right-margin-width", &current_buffer->right_margin_width, 5360 DEFVAR_PER_BUFFER ("right-margin-width", &current_buffer->right_margin_width,
5361 Qnil 5361 Qnil,
5362 /* *Width of right marginal area for display of a buffer. 5362 doc: /* *Width of right marginal area for display of a buffer.
5363A value of nil means no marginal area. */); 5363A value of nil means no marginal area. */);
5364 5364
5365 DEFVAR_PER_BUFFER ("indicate-empty-lines", 5365 DEFVAR_PER_BUFFER ("indicate-empty-lines",
5366 &current_buffer->indicate_empty_lines, Qnil 5366 &current_buffer->indicate_empty_lines, Qnil,
5367 /* *Visually indicate empty lines after the buffer end. 5367 doc: /* *Visually indicate empty lines after the buffer end.
5368If non-nil, a bitmap is displayed in the left fringe of a window on 5368If non-nil, a bitmap is displayed in the left fringe of a window on
5369window-systems. */); 5369window-systems. */);
5370 5370
5371 DEFVAR_PER_BUFFER ("scroll-up-aggressively", 5371 DEFVAR_PER_BUFFER ("scroll-up-aggressively",
5372 &current_buffer->scroll_up_aggressively, Qnil 5372 &current_buffer->scroll_up_aggressively, Qnil,
5373 /* *If a number, scroll display up aggressively. 5373 doc: /* *If a number, scroll display up aggressively.
5374If scrolling a window because point is above the window start, choose 5374If scrolling a window because point is above the window start, choose
5375a new window start so that point ends up that fraction of the window's 5375a new window start so that point ends up that fraction of the window's
5376height from the top of the window. */); 5376height from the top of the window. */);
5377 5377
5378 DEFVAR_PER_BUFFER ("scroll-down-aggressively", 5378 DEFVAR_PER_BUFFER ("scroll-down-aggressively",
5379 &current_buffer->scroll_down_aggressively, Qnil 5379 &current_buffer->scroll_down_aggressively, Qnil,
5380 /* *If a number, scroll display down aggressively. 5380 doc: /* *If a number, scroll display down aggressively.
5381If scrolling a window because point is below the window end, choose 5381If scrolling a window because point is below the window end, choose
5382a new window start so that point ends up that fraction of the window's 5382a new window start so that point ends up that fraction of the window's
5383height from the bottom of the window. */); 5383height from the bottom of the window. */);
@@ -5386,8 +5386,8 @@ height from the bottom of the window. */);
5386 "Don't ask."); 5386 "Don't ask.");
5387*/ 5387*/
5388 5388
5389 DEFVAR_LISP ("before-change-functions", &Vbefore_change_functions 5389 DEFVAR_LISP ("before-change-functions", &Vbefore_change_functions,
5390 /* List of functions to call before each text change. 5390 doc: /* List of functions to call before each text change.
5391Two arguments are passed to each function: the positions of 5391Two arguments are passed to each function: the positions of
5392the beginning and end of the range of old text to be changed. 5392the beginning and end of the range of old text to be changed.
5393\(For an insertion, the beginning and end are at the same place.) 5393\(For an insertion, the beginning and end are at the same place.)
@@ -5405,8 +5405,8 @@ the variable's value remains nil. That prevents the error
5405from happening repeatedly and making Emacs nonfunctional. */); 5405from happening repeatedly and making Emacs nonfunctional. */);
5406 Vbefore_change_functions = Qnil; 5406 Vbefore_change_functions = Qnil;
5407 5407
5408 DEFVAR_LISP ("after-change-functions", &Vafter_change_functions 5408 DEFVAR_LISP ("after-change-functions", &Vafter_change_functions,
5409 /* List of function to call after each text change. 5409 doc: /* List of function to call after each text change.
5410Three arguments are passed to each function: the positions of 5410Three arguments are passed to each function: the positions of
5411the beginning and end of the range of changed text, 5411the beginning and end of the range of changed text,
5412and the length in bytes of the pre-change text replaced by that range. 5412and the length in bytes of the pre-change text replaced by that range.
@@ -5426,13 +5426,13 @@ the variable's value remains nil. That prevents the error
5426from happening repeatedly and making Emacs nonfunctional. */); 5426from happening repeatedly and making Emacs nonfunctional. */);
5427 Vafter_change_functions = Qnil; 5427 Vafter_change_functions = Qnil;
5428 5428
5429 DEFVAR_LISP ("first-change-hook", &Vfirst_change_hook 5429 DEFVAR_LISP ("first-change-hook", &Vfirst_change_hook,
5430 /* A list of functions to call before changing a buffer which is unmodified. 5430 doc: /* A list of functions to call before changing a buffer which is unmodified.
5431The functions are run using the `run-hooks' function. */); 5431The functions are run using the `run-hooks' function. */);
5432 Vfirst_change_hook = Qnil; 5432 Vfirst_change_hook = Qnil;
5433 5433
5434 DEFVAR_PER_BUFFER ("buffer-undo-list", &current_buffer->undo_list, Qnil 5434 DEFVAR_PER_BUFFER ("buffer-undo-list", &current_buffer->undo_list, Qnil,
5435 /* List of undo entries in current buffer. 5435 doc: /* List of undo entries in current buffer.
5436Recent changes come first; older changes follow newer. 5436Recent changes come first; older changes follow newer.
5437 5437
5438An entry (BEG . END) represents an insertion which begins at 5438An entry (BEG . END) represents an insertion which begins at
@@ -5464,11 +5464,11 @@ between two undo boundaries as a single step to be undone.
5464 5464
5465If the value of the variable is t, undo information is not recorded. */); 5465If the value of the variable is t, undo information is not recorded. */);
5466 5466
5467 DEFVAR_PER_BUFFER ("mark-active", &current_buffer->mark_active, Qnil 5467 DEFVAR_PER_BUFFER ("mark-active", &current_buffer->mark_active, Qnil,
5468 /* Non-nil means the mark and region are currently active in this buffer. */); 5468 doc: /* Non-nil means the mark and region are currently active in this buffer. */);
5469 5469
5470 DEFVAR_PER_BUFFER ("cache-long-line-scans", &current_buffer->cache_long_line_scans, Qnil 5470 DEFVAR_PER_BUFFER ("cache-long-line-scans", &current_buffer->cache_long_line_scans, Qnil,
5471 /* Non-nil means that Emacs should use caches to handle long lines more quickly. 5471 doc: /* Non-nil means that Emacs should use caches to handle long lines more quickly.
5472 5472
5473Normally, the line-motion functions work by scanning the buffer for 5473Normally, the line-motion functions work by scanning the buffer for
5474newlines. Columnar operations (like move-to-column and 5474newlines. Columnar operations (like move-to-column and
@@ -5495,17 +5495,17 @@ maintained internally by the Emacs primitives. Enabling or disabling
5495the cache should not affect the behavior of any of the motion 5495the cache should not affect the behavior of any of the motion
5496functions; it should only affect their performance. */); 5496functions; it should only affect their performance. */);
5497 5497
5498 DEFVAR_PER_BUFFER ("point-before-scroll", &current_buffer->point_before_scroll, Qnil 5498 DEFVAR_PER_BUFFER ("point-before-scroll", &current_buffer->point_before_scroll, Qnil,
5499 /* Value of point before the last series of scroll operations, or nil. */); 5499 doc: /* Value of point before the last series of scroll operations, or nil. */);
5500 5500
5501 DEFVAR_PER_BUFFER ("buffer-file-format", &current_buffer->file_format, Qnil 5501 DEFVAR_PER_BUFFER ("buffer-file-format", &current_buffer->file_format, Qnil,
5502 /* List of formats to use when saving this buffer. 5502 doc: /* List of formats to use when saving this buffer.
5503Formats are defined by `format-alist'. This variable is 5503Formats are defined by `format-alist'. This variable is
5504set when a file is visited. Automatically local in all buffers. */); 5504set when a file is visited. Automatically local in all buffers. */);
5505 5505
5506 DEFVAR_PER_BUFFER ("buffer-invisibility-spec", 5506 DEFVAR_PER_BUFFER ("buffer-invisibility-spec",
5507 &current_buffer->invisibility_spec, Qnil 5507 &current_buffer->invisibility_spec, Qnil,
5508 /* Invisibility spec of this buffer. 5508 doc: /* Invisibility spec of this buffer.
5509The default is t, which means that text is invisible 5509The default is t, which means that text is invisible
5510if it has a non-nil `invisible' property. 5510if it has a non-nil `invisible' property.
5511If the value is a list, a text character is invisible if its `invisible' 5511If the value is a list, a text character is invisible if its `invisible'
@@ -5515,34 +5515,34 @@ then characters with property value PROP are invisible,
5515and they have an ellipsis as well if ELLIPSIS is non-nil. */); 5515and they have an ellipsis as well if ELLIPSIS is non-nil. */);
5516 5516
5517 DEFVAR_PER_BUFFER ("buffer-display-count", 5517 DEFVAR_PER_BUFFER ("buffer-display-count",
5518 &current_buffer->display_count, Qnil 5518 &current_buffer->display_count, Qnil,
5519 /* A number incremented each time this buffer is displayed in a window. 5519 doc: /* A number incremented each time this buffer is displayed in a window.
5520The function `set-window-buffer' increments it. */); 5520The function `set-window-buffer' increments it. */);
5521 5521
5522 DEFVAR_PER_BUFFER ("buffer-display-time", 5522 DEFVAR_PER_BUFFER ("buffer-display-time",
5523 &current_buffer->display_time, Qnil 5523 &current_buffer->display_time, Qnil,
5524 /* Time stamp updated each time this buffer is displayed in a window. 5524 doc: /* Time stamp updated each time this buffer is displayed in a window.
5525The function `set-window-buffer' updates this variable 5525The function `set-window-buffer' updates this variable
5526to the value obtained by calling `current-time'. 5526to the value obtained by calling `current-time'.
5527If the buffer has never been shown in a window, the value is nil. */); 5527If the buffer has never been shown in a window, the value is nil. */);
5528 5528
5529 DEFVAR_LISP ("transient-mark-mode", &Vtransient_mark_mode 5529 DEFVAR_LISP ("transient-mark-mode", &Vtransient_mark_mode,
5530 /* *Non-nil means deactivate the mark when the buffer contents change. 5530 doc: /* *Non-nil means deactivate the mark when the buffer contents change.
5531Non-nil also enables highlighting of the region whenever the mark is active. 5531Non-nil also enables highlighting of the region whenever the mark is active.
5532The variable `highlight-nonselected-windows' controls whether to highlight 5532The variable `highlight-nonselected-windows' controls whether to highlight
5533all windows or just the selected window. */); 5533all windows or just the selected window. */);
5534 Vtransient_mark_mode = Qnil; 5534 Vtransient_mark_mode = Qnil;
5535 5535
5536 DEFVAR_LISP ("inhibit-read-only", &Vinhibit_read_only 5536 DEFVAR_LISP ("inhibit-read-only", &Vinhibit_read_only,
5537 /* *Non-nil means disregard read-only status of buffers or characters. 5537 doc: /* *Non-nil means disregard read-only status of buffers or characters.
5538If the value is t, disregard `buffer-read-only' and all `read-only' 5538If the value is t, disregard `buffer-read-only' and all `read-only'
5539text properties. If the value is a list, disregard `buffer-read-only' 5539text properties. If the value is a list, disregard `buffer-read-only'
5540and disregard a `read-only' text property if the property value 5540and disregard a `read-only' text property if the property value
5541is a member of the list. */); 5541is a member of the list. */);
5542 Vinhibit_read_only = Qnil; 5542 Vinhibit_read_only = Qnil;
5543 5543
5544 DEFVAR_PER_BUFFER ("cursor-type", &current_buffer->cursor_type, Qnil 5544 DEFVAR_PER_BUFFER ("cursor-type", &current_buffer->cursor_type, Qnil,
5545 /* Cursor to use in window displaying this buffer. 5545 doc: /* Cursor to use in window displaying this buffer.
5546Values are interpreted as follows: 5546Values are interpreted as follows:
5547 5547
5548 t use the cursor specified for the frame 5548 t use the cursor specified for the frame
@@ -5552,12 +5552,12 @@ Values are interpreted as follows:
5552 others display a box cursor. */); 5552 others display a box cursor. */);
5553 5553
5554 DEFVAR_PER_BUFFER ("line-spacing", 5554 DEFVAR_PER_BUFFER ("line-spacing",
5555 &current_buffer->extra_line_spacing, Qnil 5555 &current_buffer->extra_line_spacing, Qnil,
5556 /* Additional space to put between lines when displaying a buffer. 5556 doc: /* Additional space to put between lines when displaying a buffer.
5557The space is measured in pixels, and put below lines on window systems. */); 5557The space is measured in pixels, and put below lines on window systems. */);
5558 5558
5559 DEFVAR_LISP ("kill-buffer-query-functions", &Vkill_buffer_query_functions 5559 DEFVAR_LISP ("kill-buffer-query-functions", &Vkill_buffer_query_functions,
5560 /* List of functions called with no args to query before killing a buffer. */); 5560 doc: /* List of functions called with no args to query before killing a buffer. */);
5561 Vkill_buffer_query_functions = Qnil; 5561 Vkill_buffer_query_functions = Qnil;
5562 5562
5563 defsubr (&Sbuffer_live_p); 5563 defsubr (&Sbuffer_live_p);
diff --git a/src/dispnew.c b/src/dispnew.c
index d5cbb7d7db5..d75aa837c87 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -19,8 +19,6 @@ along with GNU Emacs; see the file COPYING. If not, write to
19the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 19the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20Boston, MA 02111-1307, USA. */ 20Boston, MA 02111-1307, USA. */
21 21
22#define DOC_STRINGS_IN_COMMENTS
23
24#include <config.h> 22#include <config.h>
25#include <signal.h> 23#include <signal.h>
26#include <stdio.h> 24#include <stdio.h>
@@ -412,8 +410,8 @@ add_frame_display_history (f, paused_p)
412 410
413DEFUN ("dump-redisplay-history", Fdump_redisplay_history, 411DEFUN ("dump-redisplay-history", Fdump_redisplay_history,
414 Sdump_redisplay_history, 0, 0, "", 412 Sdump_redisplay_history, 0, 0, "",
415 /* Dump redisplay history to stderr. */ 413 doc: /* Dump redisplay history to stderr. */)
416 ()) 414 ()
417{ 415{
418 int i; 416 int i;
419 417
@@ -3307,8 +3305,8 @@ window_to_frame_hpos (w, hpos)
3307 **********************************************************************/ 3305 **********************************************************************/
3308 3306
3309DEFUN ("redraw-frame", Fredraw_frame, Sredraw_frame, 1, 1, 0, 3307DEFUN ("redraw-frame", Fredraw_frame, Sredraw_frame, 1, 1, 0,
3310 /* Clear frame FRAME and output again what is supposed to appear on it. */ 3308 doc: /* Clear frame FRAME and output again what is supposed to appear on it. */)
3311 (frame)) 3309 (frame)
3312 Lisp_Object frame; 3310 Lisp_Object frame;
3313{ 3311{
3314 struct frame *f; 3312 struct frame *f;
@@ -3353,8 +3351,8 @@ redraw_frame (f)
3353 3351
3354 3352
3355DEFUN ("redraw-display", Fredraw_display, Sredraw_display, 0, 0, "", 3353DEFUN ("redraw-display", Fredraw_display, Sredraw_display, 0, 0, "",
3356 /* Clear and redisplay all visible frames. */ 3354 doc: /* Clear and redisplay all visible frames. */)
3357 ()) 3355 ()
3358{ 3356{
3359 Lisp_Object tail, frame; 3357 Lisp_Object tail, frame;
3360 3358
@@ -6043,9 +6041,9 @@ change_frame_size_1 (f, newheight, newwidth, pretend, delay, safe)
6043 6041
6044DEFUN ("open-termscript", Fopen_termscript, Sopen_termscript, 6042DEFUN ("open-termscript", Fopen_termscript, Sopen_termscript,
6045 1, 1, "FOpen termscript file: ", 6043 1, 1, "FOpen termscript file: ",
6046 /* Start writing all terminal output to FILE as well as the terminal. 6044 doc: /* Start writing all terminal output to FILE as well as the terminal.
6047FILE = nil means just close any termscript file currently open. */ 6045FILE = nil means just close any termscript file currently open. */)
6048 (file)) 6046 (file)
6049 Lisp_Object file; 6047 Lisp_Object file;
6050{ 6048{
6051 if (termscript != 0) fclose (termscript); 6049 if (termscript != 0) fclose (termscript);
@@ -6064,9 +6062,9 @@ FILE = nil means just close any termscript file currently open. */
6064 6062
6065DEFUN ("send-string-to-terminal", Fsend_string_to_terminal, 6063DEFUN ("send-string-to-terminal", Fsend_string_to_terminal,
6066 Ssend_string_to_terminal, 1, 1, 0, 6064 Ssend_string_to_terminal, 1, 1, 0,
6067 /* Send STRING to the terminal without alteration. 6065 doc: /* Send STRING to the terminal without alteration.
6068Control characters in STRING will have terminal-dependent effects. */ 6066Control characters in STRING will have terminal-dependent effects. */)
6069 (string)) 6067 (string)
6070 Lisp_Object string; 6068 Lisp_Object string;
6071{ 6069{
6072 /* ??? Perhaps we should do something special for multibyte strings here. */ 6070 /* ??? Perhaps we should do something special for multibyte strings here. */
@@ -6084,10 +6082,10 @@ Control characters in STRING will have terminal-dependent effects. */
6084 6082
6085 6083
6086DEFUN ("ding", Fding, Sding, 0, 1, 0, 6084DEFUN ("ding", Fding, Sding, 0, 1, 0,
6087 /* Beep, or flash the screen. 6085 doc: /* Beep, or flash the screen.
6088Also, unless an argument is given, 6086Also, unless an argument is given,
6089terminate any keyboard macro currently executing. */ 6087terminate any keyboard macro currently executing. */)
6090 (arg)) 6088 (arg)
6091 Lisp_Object arg; 6089 Lisp_Object arg;
6092{ 6090{
6093 if (!NILP (arg)) 6091 if (!NILP (arg))
@@ -6123,13 +6121,13 @@ bitch_at_user ()
6123 ***********************************************************************/ 6121 ***********************************************************************/
6124 6122
6125DEFUN ("sleep-for", Fsleep_for, Ssleep_for, 1, 2, 0, 6123DEFUN ("sleep-for", Fsleep_for, Ssleep_for, 1, 2, 0,
6126 /* Pause, without updating display, for SECONDS seconds. 6124 doc: /* Pause, without updating display, for SECONDS seconds.
6127SECONDS may be a floating-point value, meaning that you can wait for a 6125SECONDS may be a floating-point value, meaning that you can wait for a
6128fraction of a second. Optional second arg MILLISECONDS specifies an 6126fraction of a second. Optional second arg MILLISECONDS specifies an
6129additional wait period, in milliseconds; this may be useful if your 6127additional wait period, in milliseconds; this may be useful if your
6130Emacs was built without floating point support. 6128Emacs was built without floating point support.
6131\(Not all operating systems support waiting for a fraction of a second.) */ 6129\(Not all operating systems support waiting for a fraction of a second.) */)
6132 (seconds, milliseconds)) 6130 (seconds, milliseconds)
6133 Lisp_Object seconds, milliseconds; 6131 Lisp_Object seconds, milliseconds;
6134{ 6132{
6135 int sec, usec; 6133 int sec, usec;
@@ -6246,7 +6244,7 @@ sit_for (sec, usec, reading, display, initial_display)
6246 6244
6247 6245
6248DEFUN ("sit-for", Fsit_for, Ssit_for, 1, 3, 0, 6246DEFUN ("sit-for", Fsit_for, Ssit_for, 1, 3, 0,
6249 /* Perform redisplay, then wait for SECONDS seconds or until input is available. 6247 doc: /* Perform redisplay, then wait for SECONDS seconds or until input is available.
6250SECONDS may be a floating-point value, meaning that you can wait for a 6248SECONDS may be a floating-point value, meaning that you can wait for a
6251fraction of a second. Optional second arg MILLISECONDS specifies an 6249fraction of a second. Optional second arg MILLISECONDS specifies an
6252additional wait period, in milliseconds; this may be useful if your 6250additional wait period, in milliseconds; this may be useful if your
@@ -6255,8 +6253,8 @@ Emacs was built without floating point support.
6255Optional third arg NODISP non-nil means don't redisplay, just wait for input. 6253Optional third arg NODISP non-nil means don't redisplay, just wait for input.
6256Redisplay is preempted as always if input arrives, and does not happen 6254Redisplay is preempted as always if input arrives, and does not happen
6257if input is available before it starts. 6255if input is available before it starts.
6258Value is t if waited the full time with no input arriving. */ 6256Value is t if waited the full time with no input arriving. */)
6259 (seconds, milliseconds, nodisp)) 6257 (seconds, milliseconds, nodisp)
6260 Lisp_Object seconds, milliseconds, nodisp; 6258 Lisp_Object seconds, milliseconds, nodisp;
6261{ 6259{
6262 int sec, usec; 6260 int sec, usec;
@@ -6297,14 +6295,14 @@ static Lisp_Object frame_and_buffer_state;
6297 6295
6298DEFUN ("frame-or-buffer-changed-p", Fframe_or_buffer_changed_p, 6296DEFUN ("frame-or-buffer-changed-p", Fframe_or_buffer_changed_p,
6299 Sframe_or_buffer_changed_p, 0, 0, 0, 6297 Sframe_or_buffer_changed_p, 0, 0, 0,
6300 /* Return non-nil if the frame and buffer state appears to have changed. 6298 doc: /* Return non-nil if the frame and buffer state appears to have changed.
6301The state variable is an internal vector containing all frames and buffers, 6299The state variable is an internal vector containing all frames and buffers,
6302aside from buffers whose names start with space, 6300aside from buffers whose names start with space,
6303along with the buffers' read-only and modified flags, which allows a fast 6301along with the buffers' read-only and modified flags, which allows a fast
6304check to see whether the menu bars might need to be recomputed. 6302check to see whether the menu bars might need to be recomputed.
6305If this function returns non-nil, it updates the internal vector to reflect 6303If this function returns non-nil, it updates the internal vector to reflect
6306the current state. */ 6304the current state. */)
6307 ()) 6305 ()
6308{ 6306{
6309 Lisp_Object tail, frame, buf; 6307 Lisp_Object tail, frame, buf;
6310 Lisp_Object *vecp; 6308 Lisp_Object *vecp;
@@ -6569,11 +6567,11 @@ For types not defined in VMS, use define emacs_term \"TYPE\".\n\
6569 6567
6570DEFUN ("internal-show-cursor", Finternal_show_cursor, 6568DEFUN ("internal-show-cursor", Finternal_show_cursor,
6571 Sinternal_show_cursor, 2, 2, 0, 6569 Sinternal_show_cursor, 2, 2, 0,
6572 /* Set the cursor-visibility flag of WINDOW to SHOW. 6570 doc: /* Set the cursor-visibility flag of WINDOW to SHOW.
6573WINDOW nil means use the selected window. SHOW non-nil means 6571WINDOW nil means use the selected window. SHOW non-nil means
6574show a cursor in WINDOW in the next redisplay. SHOW nil means 6572show a cursor in WINDOW in the next redisplay. SHOW nil means
6575don't show a cursor. */ 6573don't show a cursor. */)
6576 (window, show)) 6574 (window, show)
6577 Lisp_Object window, show; 6575 Lisp_Object window, show;
6578{ 6576{
6579 /* Don't change cursor state while redisplaying. This could confuse 6577 /* Don't change cursor state while redisplaying. This could confuse
@@ -6594,9 +6592,9 @@ don't show a cursor. */
6594 6592
6595DEFUN ("internal-show-cursor-p", Finternal_show_cursor_p, 6593DEFUN ("internal-show-cursor-p", Finternal_show_cursor_p,
6596 Sinternal_show_cursor_p, 0, 1, 0, 6594 Sinternal_show_cursor_p, 0, 1, 0,
6597 /* Value is non-nil if next redisplay will display a cursor in WINDOW. 6595 doc: /* Value is non-nil if next redisplay will display a cursor in WINDOW.
6598WINDOW nil or omitted means report on the selected window. */ 6596WINDOW nil or omitted means report on the selected window. */)
6599 (window)) 6597 (window)
6600 Lisp_Object window; 6598 Lisp_Object window;
6601{ 6599{
6602 struct window *w; 6600 struct window *w;
@@ -6641,37 +6639,37 @@ syms_of_display ()
6641 Qredisplay_dont_pause = intern ("redisplay-dont-pause"); 6639 Qredisplay_dont_pause = intern ("redisplay-dont-pause");
6642 staticpro (&Qredisplay_dont_pause); 6640 staticpro (&Qredisplay_dont_pause);
6643 6641
6644 DEFVAR_INT ("baud-rate", &baud_rate 6642 DEFVAR_INT ("baud-rate", &baud_rate,
6645 /* *The output baud rate of the terminal. 6643 doc: /* *The output baud rate of the terminal.
6646On most systems, changing this value will affect the amount of padding 6644On most systems, changing this value will affect the amount of padding
6647and the other strategic decisions made during redisplay. */); 6645and the other strategic decisions made during redisplay. */);
6648 6646
6649 DEFVAR_BOOL ("inverse-video", &inverse_video 6647 DEFVAR_BOOL ("inverse-video", &inverse_video,
6650 /* *Non-nil means invert the entire frame display. 6648 doc: /* *Non-nil means invert the entire frame display.
6651This means everything is in inverse video which otherwise would not be. */); 6649This means everything is in inverse video which otherwise would not be. */);
6652 6650
6653 DEFVAR_BOOL ("visible-bell", &visible_bell 6651 DEFVAR_BOOL ("visible-bell", &visible_bell,
6654 /* *Non-nil means try to flash the frame to represent a bell. */); 6652 doc: /* *Non-nil means try to flash the frame to represent a bell. */);
6655 6653
6656 DEFVAR_BOOL ("no-redraw-on-reenter", &no_redraw_on_reenter 6654 DEFVAR_BOOL ("no-redraw-on-reenter", &no_redraw_on_reenter,
6657 /* *Non-nil means no need to redraw entire frame after suspending. 6655 doc: /* *Non-nil means no need to redraw entire frame after suspending.
6658A non-nil value is useful if the terminal can automatically preserve 6656A non-nil value is useful if the terminal can automatically preserve
6659Emacs's frame display when you reenter Emacs. 6657Emacs's frame display when you reenter Emacs.
6660It is up to you to set this variable if your terminal can do that. */); 6658It is up to you to set this variable if your terminal can do that. */);
6661 6659
6662 DEFVAR_LISP ("window-system", &Vwindow_system 6660 DEFVAR_LISP ("window-system", &Vwindow_system,
6663 /* A symbol naming the window-system under which Emacs is running 6661 doc: /* A symbol naming the window-system under which Emacs is running
6664\(such as `x'), or nil if emacs is running on an ordinary terminal. */); 6662\(such as `x'), or nil if emacs is running on an ordinary terminal. */);
6665 6663
6666 DEFVAR_LISP ("window-system-version", &Vwindow_system_version 6664 DEFVAR_LISP ("window-system-version", &Vwindow_system_version,
6667 /* The version number of the window system in use. 6665 doc: /* The version number of the window system in use.
6668For X windows, this is 10 or 11. */); 6666For X windows, this is 10 or 11. */);
6669 6667
6670 DEFVAR_BOOL ("cursor-in-echo-area", &cursor_in_echo_area 6668 DEFVAR_BOOL ("cursor-in-echo-area", &cursor_in_echo_area,
6671 /* Non-nil means put cursor in minibuffer, at end of any message there. */); 6669 doc: /* Non-nil means put cursor in minibuffer, at end of any message there. */);
6672 6670
6673 DEFVAR_LISP ("glyph-table", &Vglyph_table 6671 DEFVAR_LISP ("glyph-table", &Vglyph_table,
6674 /* Table defining how to output a glyph code to the frame. 6672 doc: /* Table defining how to output a glyph code to the frame.
6675If not nil, this is a vector indexed by glyph code to define the glyph. 6673If not nil, this is a vector indexed by glyph code to define the glyph.
6676Each element can be: 6674Each element can be:
6677 integer: a glyph code which this glyph is an alias for. 6675 integer: a glyph code which this glyph is an alias for.
@@ -6681,13 +6679,13 @@ Each element can be:
6681 while outputting it. */); 6679 while outputting it. */);
6682 Vglyph_table = Qnil; 6680 Vglyph_table = Qnil;
6683 6681
6684 DEFVAR_LISP ("standard-display-table", &Vstandard_display_table 6682 DEFVAR_LISP ("standard-display-table", &Vstandard_display_table,
6685 /* Display table to use for buffers that specify none. 6683 doc: /* Display table to use for buffers that specify none.
6686See `buffer-display-table' for more information. */); 6684See `buffer-display-table' for more information. */);
6687 Vstandard_display_table = Qnil; 6685 Vstandard_display_table = Qnil;
6688 6686
6689 DEFVAR_BOOL ("redisplay-dont-pause", &redisplay_dont_pause 6687 DEFVAR_BOOL ("redisplay-dont-pause", &redisplay_dont_pause,
6690 /* *Non-nil means update isn't paused when input is detected. */); 6688 doc: /* *Non-nil means update isn't paused when input is detected. */);
6691 redisplay_dont_pause = 0; 6689 redisplay_dont_pause = 0;
6692 6690
6693 /* Initialize `window-system', unless init_display already decided it. */ 6691 /* Initialize `window-system', unless init_display already decided it. */
diff --git a/src/editfns.c b/src/editfns.c
index af2839f4f0a..51d328ab2ec 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -34,7 +34,6 @@ Boston, MA 02111-1307, USA. */
34#include <unistd.h> 34#include <unistd.h>
35#endif 35#endif
36 36
37#define DOC_STRINGS_IN_COMMENTS
38#include "lisp.h" 37#include "lisp.h"
39#include "intervals.h" 38#include "intervals.h"
40#include "buffer.h" 39#include "buffer.h"
@@ -165,8 +164,8 @@ init_editfns ()
165} 164}
166 165
167DEFUN ("char-to-string", Fchar_to_string, Schar_to_string, 1, 1, 0, 166DEFUN ("char-to-string", Fchar_to_string, Schar_to_string, 1, 1, 0,
168 /* Convert arg CHARACTER to a string containing that character. */ 167 doc: /* Convert arg CHARACTER to a string containing that character. */)
169 (character)) 168 (character)
170 Lisp_Object character; 169 Lisp_Object character;
171{ 170{
172 int len; 171 int len;
@@ -181,9 +180,9 @@ DEFUN ("char-to-string", Fchar_to_string, Schar_to_string, 1, 1, 0,
181} 180}
182 181
183DEFUN ("string-to-char", Fstring_to_char, Sstring_to_char, 1, 1, 0, 182DEFUN ("string-to-char", Fstring_to_char, Sstring_to_char, 1, 1, 0,
184 /* Convert arg STRING to a character, the first character of that string. 183 doc: /* Convert arg STRING to a character, the first character of that string.
185A multibyte character is handled correctly. */ 184A multibyte character is handled correctly. */)
186 (string)) 185 (string)
187 register Lisp_Object string; 186 register Lisp_Object string;
188{ 187{
189 register Lisp_Object val; 188 register Lisp_Object val;
@@ -213,9 +212,9 @@ buildmark (charpos, bytepos)
213} 212}
214 213
215DEFUN ("point", Fpoint, Spoint, 0, 0, 0, 214DEFUN ("point", Fpoint, Spoint, 0, 0, 0,
216 /* Return value of point, as an integer. 215 doc: /* Return value of point, as an integer.
217Beginning of buffer is position (point-min). */ 216Beginning of buffer is position (point-min). */)
218 ()) 217 ()
219{ 218{
220 Lisp_Object temp; 219 Lisp_Object temp;
221 XSETFASTINT (temp, PT); 220 XSETFASTINT (temp, PT);
@@ -223,8 +222,8 @@ Beginning of buffer is position (point-min). */
223} 222}
224 223
225DEFUN ("point-marker", Fpoint_marker, Spoint_marker, 0, 0, 0, 224DEFUN ("point-marker", Fpoint_marker, Spoint_marker, 0, 0, 0,
226 /* Return value of point, as a marker object. */ 225 doc: /* Return value of point, as a marker object. */)
227 ()) 226 ()
228{ 227{
229 return buildmark (PT, PT_BYTE); 228 return buildmark (PT, PT_BYTE);
230} 229}
@@ -242,12 +241,12 @@ clip_to_bounds (lower, num, upper)
242} 241}
243 242
244DEFUN ("goto-char", Fgoto_char, Sgoto_char, 1, 1, "NGoto char: ", 243DEFUN ("goto-char", Fgoto_char, Sgoto_char, 1, 1, "NGoto char: ",
245 /* Set point to POSITION, a number or marker. 244 doc: /* Set point to POSITION, a number or marker.
246Beginning of buffer is position (point-min), end is (point-max). 245Beginning of buffer is position (point-min), end is (point-max).
247If the position is in the middle of a multibyte form, 246If the position is in the middle of a multibyte form,
248the actual point is set at the head of the multibyte form 247the actual point is set at the head of the multibyte form
249except in the case that `enable-multibyte-characters' is nil. */ 248except in the case that `enable-multibyte-characters' is nil. */)
250 (position)) 249 (position)
251 register Lisp_Object position; 250 register Lisp_Object position;
252{ 251{
253 int pos; 252 int pos;
@@ -300,24 +299,24 @@ region_limit (beginningp)
300} 299}
301 300
302DEFUN ("region-beginning", Fregion_beginning, Sregion_beginning, 0, 0, 0, 301DEFUN ("region-beginning", Fregion_beginning, Sregion_beginning, 0, 0, 0,
303 /* Return position of beginning of region, as an integer. */ 302 doc: /* Return position of beginning of region, as an integer. */)
304 ()) 303 ()
305{ 304{
306 return region_limit (1); 305 return region_limit (1);
307} 306}
308 307
309DEFUN ("region-end", Fregion_end, Sregion_end, 0, 0, 0, 308DEFUN ("region-end", Fregion_end, Sregion_end, 0, 0, 0,
310 /* Return position of end of region, as an integer. */ 309 doc: /* Return position of end of region, as an integer. */)
311 ()) 310 ()
312{ 311{
313 return region_limit (0); 312 return region_limit (0);
314} 313}
315 314
316DEFUN ("mark-marker", Fmark_marker, Smark_marker, 0, 0, 0, 315DEFUN ("mark-marker", Fmark_marker, Smark_marker, 0, 0, 0,
317 /* Return this buffer's mark, as a marker object. 316 doc: /* Return this buffer's mark, as a marker object.
318Watch out! Moving this marker changes the mark position. 317Watch out! Moving this marker changes the mark position.
319If you set the marker not to point anywhere, the buffer will have no mark. */ 318If you set the marker not to point anywhere, the buffer will have no mark. */)
320 ()) 319 ()
321{ 320{
322 return current_buffer->mark; 321 return current_buffer->mark;
323} 322}
@@ -557,10 +556,10 @@ find_field (pos, merge_at_boundary, beg, end)
557 556
558 557
559DEFUN ("delete-field", Fdelete_field, Sdelete_field, 0, 1, 0, 558DEFUN ("delete-field", Fdelete_field, Sdelete_field, 0, 1, 0,
560 /* Delete the field surrounding POS. 559 doc: /* Delete the field surrounding POS.
561A field is a region of text with the same `field' property. 560A field is a region of text with the same `field' property.
562If POS is nil, the value of point is used for POS. */ 561If POS is nil, the value of point is used for POS. */)
563 (pos)) 562 (pos)
564 Lisp_Object pos; 563 Lisp_Object pos;
565{ 564{
566 int beg, end; 565 int beg, end;
@@ -571,10 +570,10 @@ If POS is nil, the value of point is used for POS. */
571} 570}
572 571
573DEFUN ("field-string", Ffield_string, Sfield_string, 0, 1, 0, 572DEFUN ("field-string", Ffield_string, Sfield_string, 0, 1, 0,
574 /* Return the contents of the field surrounding POS as a string. 573 doc: /* Return the contents of the field surrounding POS as a string.
575A field is a region of text with the same `field' property. 574A field is a region of text with the same `field' property.
576If POS is nil, the value of point is used for POS. */ 575If POS is nil, the value of point is used for POS. */)
577 (pos)) 576 (pos)
578 Lisp_Object pos; 577 Lisp_Object pos;
579{ 578{
580 int beg, end; 579 int beg, end;
@@ -583,10 +582,10 @@ If POS is nil, the value of point is used for POS. */
583} 582}
584 583
585DEFUN ("field-string-no-properties", Ffield_string_no_properties, Sfield_string_no_properties, 0, 1, 0, 584DEFUN ("field-string-no-properties", Ffield_string_no_properties, Sfield_string_no_properties, 0, 1, 0,
586 /* Return the contents of the field around POS, without text-properties. 585 doc: /* Return the contents of the field around POS, without text-properties.
587A field is a region of text with the same `field' property. 586A field is a region of text with the same `field' property.
588If POS is nil, the value of point is used for POS. */ 587If POS is nil, the value of point is used for POS. */)
589 (pos)) 588 (pos)
590 Lisp_Object pos; 589 Lisp_Object pos;
591{ 590{
592 int beg, end; 591 int beg, end;
@@ -595,12 +594,12 @@ If POS is nil, the value of point is used for POS. */
595} 594}
596 595
597DEFUN ("field-beginning", Ffield_beginning, Sfield_beginning, 0, 2, 0, 596DEFUN ("field-beginning", Ffield_beginning, Sfield_beginning, 0, 2, 0,
598 /* Return the beginning of the field surrounding POS. 597 doc: /* Return the beginning of the field surrounding POS.
599A field is a region of text with the same `field' property. 598A field is a region of text with the same `field' property.
600If POS is nil, the value of point is used for POS. 599If POS is nil, the value of point is used for POS.
601If ESCAPE-FROM-EDGE is non-nil and POS is at the beginning of its 600If ESCAPE-FROM-EDGE is non-nil and POS is at the beginning of its
602field, then the beginning of the *previous* field is returned. */ 601field, then the beginning of the *previous* field is returned. */)
603 (pos, escape_from_edge)) 602 (pos, escape_from_edge)
604 Lisp_Object pos, escape_from_edge; 603 Lisp_Object pos, escape_from_edge;
605{ 604{
606 int beg; 605 int beg;
@@ -609,12 +608,12 @@ field, then the beginning of the *previous* field is returned. */
609} 608}
610 609
611DEFUN ("field-end", Ffield_end, Sfield_end, 0, 2, 0, 610DEFUN ("field-end", Ffield_end, Sfield_end, 0, 2, 0,
612 /* Return the end of the field surrounding POS. 611 doc: /* Return the end of the field surrounding POS.
613A field is a region of text with the same `field' property. 612A field is a region of text with the same `field' property.
614If POS is nil, the value of point is used for POS. 613If POS is nil, the value of point is used for POS.
615If ESCAPE-FROM-EDGE is non-nil and POS is at the end of its field, 614If ESCAPE-FROM-EDGE is non-nil and POS is at the end of its field,
616then the end of the *following* field is returned. */ 615then the end of the *following* field is returned. */)
617 (pos, escape_from_edge)) 616 (pos, escape_from_edge)
618 Lisp_Object pos, escape_from_edge; 617 Lisp_Object pos, escape_from_edge;
619{ 618{
620 int end; 619 int end;
@@ -623,7 +622,7 @@ then the end of the *following* field is returned. */
623} 622}
624 623
625DEFUN ("constrain-to-field", Fconstrain_to_field, Sconstrain_to_field, 2, 5, 0, 624DEFUN ("constrain-to-field", Fconstrain_to_field, Sconstrain_to_field, 2, 5, 0,
626 /* Return the position closest to NEW-POS that is in the same field as OLD-POS. 625 doc: /* Return the position closest to NEW-POS that is in the same field as OLD-POS.
627 626
628A field is a region of text with the same `field' property. 627A field is a region of text with the same `field' property.
629If NEW-POS is nil, then the current point is used instead, and set to the 628If NEW-POS is nil, then the current point is used instead, and set to the
@@ -648,8 +647,8 @@ only in the case where they can still move to the right line.
648If the optional argument INHIBIT-CAPTURE-PROPERTY is non-nil, and OLD-POS has 647If the optional argument INHIBIT-CAPTURE-PROPERTY is non-nil, and OLD-POS has
649a non-nil property of that name, then any field boundaries are ignored. 648a non-nil property of that name, then any field boundaries are ignored.
650 649
651Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. */ 650Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. */)
652 (new_pos, old_pos, escape_from_edge, only_in_line, inhibit_capture_property)) 651 (new_pos, old_pos, escape_from_edge, only_in_line, inhibit_capture_property)
653 Lisp_Object new_pos, old_pos; 652 Lisp_Object new_pos, old_pos;
654 Lisp_Object escape_from_edge, only_in_line, inhibit_capture_property; 653 Lisp_Object escape_from_edge, only_in_line, inhibit_capture_property;
655{ 654{
@@ -716,7 +715,7 @@ Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. */
716 715
717DEFUN ("line-beginning-position", Fline_beginning_position, Sline_beginning_position, 716DEFUN ("line-beginning-position", Fline_beginning_position, Sline_beginning_position,
718 0, 1, 0, 717 0, 1, 0,
719 /* Return the character position of the first character on the current line. 718 doc: /* Return the character position of the first character on the current line.
720With argument N not nil or 1, move forward N - 1 lines first. 719With argument N not nil or 1, move forward N - 1 lines first.
721If scan reaches end of buffer, return that position. 720If scan reaches end of buffer, return that position.
722The scan does not cross a field boundary unless it would move 721The scan does not cross a field boundary unless it would move
@@ -724,8 +723,8 @@ beyond there to a different line. Field boundaries are not noticed if
724`inhibit-field-text-motion' is non-nil. And if N is nil or 1, 723`inhibit-field-text-motion' is non-nil. And if N is nil or 1,
725and scan starts at a field boundary, the scan stops as soon as it starts. 724and scan starts at a field boundary, the scan stops as soon as it starts.
726 725
727This function does not move point. */ 726This function does not move point. */)
728 (n)) 727 (n)
729 Lisp_Object n; 728 Lisp_Object n;
730{ 729{
731 int orig, orig_byte, end; 730 int orig, orig_byte, end;
@@ -750,11 +749,11 @@ This function does not move point. */
750 749
751DEFUN ("line-end-position", Fline_end_position, Sline_end_position, 750DEFUN ("line-end-position", Fline_end_position, Sline_end_position,
752 0, 1, 0, 751 0, 1, 0,
753 /* Return the character position of the last character on the current line. 752 doc: /* Return the character position of the last character on the current line.
754With argument N not nil or 1, move forward N - 1 lines first. 753With argument N not nil or 1, move forward N - 1 lines first.
755If scan reaches end of buffer, return that position. 754If scan reaches end of buffer, return that position.
756This function does not move point. */ 755This function does not move point. */)
757 (n)) 756 (n)
758 Lisp_Object n; 757 Lisp_Object n;
759{ 758{
760 int end_pos; 759 int end_pos;
@@ -871,7 +870,7 @@ save_excursion_restore (info)
871} 870}
872 871
873DEFUN ("save-excursion", Fsave_excursion, Ssave_excursion, 0, UNEVALLED, 0, 872DEFUN ("save-excursion", Fsave_excursion, Ssave_excursion, 0, UNEVALLED, 0,
874 /* Save point, mark, and current buffer; execute BODY; restore those things. 873 doc: /* Save point, mark, and current buffer; execute BODY; restore those things.
875Executes BODY just like `progn'. 874Executes BODY just like `progn'.
876The values of point, mark and the current buffer are restored 875The values of point, mark and the current buffer are restored
877even in case of abnormal exit (throw or error). 876even in case of abnormal exit (throw or error).
@@ -880,8 +879,8 @@ The state of activation of the mark is also restored.
880This construct does not save `deactivate-mark', and therefore 879This construct does not save `deactivate-mark', and therefore
881functions that change the buffer will still cause deactivation 880functions that change the buffer will still cause deactivation
882of the mark at the end of the command. To prevent that, bind 881of the mark at the end of the command. To prevent that, bind
883`deactivate-mark' with `let'. */ 882`deactivate-mark' with `let'. */)
884 (args)) 883 (args)
885 Lisp_Object args; 884 Lisp_Object args;
886{ 885{
887 register Lisp_Object val; 886 register Lisp_Object val;
@@ -894,9 +893,9 @@ of the mark at the end of the command. To prevent that, bind
894} 893}
895 894
896DEFUN ("save-current-buffer", Fsave_current_buffer, Ssave_current_buffer, 0, UNEVALLED, 0, 895DEFUN ("save-current-buffer", Fsave_current_buffer, Ssave_current_buffer, 0, UNEVALLED, 0,
897 /* Save the current buffer; execute BODY; restore the current buffer. 896 doc: /* Save the current buffer; execute BODY; restore the current buffer.
898Executes BODY just like `progn'. */ 897Executes BODY just like `progn'. */)
899 (args)) 898 (args)
900 Lisp_Object args; 899 Lisp_Object args;
901{ 900{
902 Lisp_Object val; 901 Lisp_Object val;
@@ -909,9 +908,9 @@ Executes BODY just like `progn'. */
909} 908}
910 909
911DEFUN ("buffer-size", Fbufsize, Sbufsize, 0, 1, 0, 910DEFUN ("buffer-size", Fbufsize, Sbufsize, 0, 1, 0,
912 /* Return the number of characters in the current buffer. 911 doc: /* Return the number of characters in the current buffer.
913If BUFFER, return the number of characters in that buffer instead. */ 912If BUFFER, return the number of characters in that buffer instead. */)
914 (buffer)) 913 (buffer)
915 Lisp_Object buffer; 914 Lisp_Object buffer;
916{ 915{
917 if (NILP (buffer)) 916 if (NILP (buffer))
@@ -925,9 +924,9 @@ If BUFFER, return the number of characters in that buffer instead. */
925} 924}
926 925
927DEFUN ("point-min", Fpoint_min, Spoint_min, 0, 0, 0, 926DEFUN ("point-min", Fpoint_min, Spoint_min, 0, 0, 0,
928 /* Return the minimum permissible value of point in the current buffer. 927 doc: /* Return the minimum permissible value of point in the current buffer.
929This is 1, unless narrowing (a buffer restriction) is in effect. */ 928This is 1, unless narrowing (a buffer restriction) is in effect. */)
930 ()) 929 ()
931{ 930{
932 Lisp_Object temp; 931 Lisp_Object temp;
933 XSETFASTINT (temp, BEGV); 932 XSETFASTINT (temp, BEGV);
@@ -935,18 +934,18 @@ This is 1, unless narrowing (a buffer restriction) is in effect. */
935} 934}
936 935
937DEFUN ("point-min-marker", Fpoint_min_marker, Spoint_min_marker, 0, 0, 0, 936DEFUN ("point-min-marker", Fpoint_min_marker, Spoint_min_marker, 0, 0, 0,
938 /* Return a marker to the minimum permissible value of point in this buffer. 937 doc: /* Return a marker to the minimum permissible value of point in this buffer.
939This is the beginning, unless narrowing (a buffer restriction) is in effect. */ 938This is the beginning, unless narrowing (a buffer restriction) is in effect. */)
940 ()) 939 ()
941{ 940{
942 return buildmark (BEGV, BEGV_BYTE); 941 return buildmark (BEGV, BEGV_BYTE);
943} 942}
944 943
945DEFUN ("point-max", Fpoint_max, Spoint_max, 0, 0, 0, 944DEFUN ("point-max", Fpoint_max, Spoint_max, 0, 0, 0,
946 /* Return the maximum permissible value of point in the current buffer. 945 doc: /* Return the maximum permissible value of point in the current buffer.
947This is (1+ (buffer-size)), unless narrowing (a buffer restriction) 946This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
948is in effect, in which case it is less. */ 947is in effect, in which case it is less. */)
949 ()) 948 ()
950{ 949{
951 Lisp_Object temp; 950 Lisp_Object temp;
952 XSETFASTINT (temp, ZV); 951 XSETFASTINT (temp, ZV);
@@ -954,18 +953,18 @@ is in effect, in which case it is less. */
954} 953}
955 954
956DEFUN ("point-max-marker", Fpoint_max_marker, Spoint_max_marker, 0, 0, 0, 955DEFUN ("point-max-marker", Fpoint_max_marker, Spoint_max_marker, 0, 0, 0,
957 /* Return a marker to the maximum permissible value of point in this buffer. 956 doc: /* Return a marker to the maximum permissible value of point in this buffer.
958This is (1+ (buffer-size)), unless narrowing (a buffer restriction) 957This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
959is in effect, in which case it is less. */ 958is in effect, in which case it is less. */)
960 ()) 959 ()
961{ 960{
962 return buildmark (ZV, ZV_BYTE); 961 return buildmark (ZV, ZV_BYTE);
963} 962}
964 963
965DEFUN ("gap-position", Fgap_position, Sgap_position, 0, 0, 0, 964DEFUN ("gap-position", Fgap_position, Sgap_position, 0, 0, 0,
966 /* Return the position of the gap, in the current buffer. 965 doc: /* Return the position of the gap, in the current buffer.
967See also `gap-size'. */ 966See also `gap-size'. */)
968 ()) 967 ()
969{ 968{
970 Lisp_Object temp; 969 Lisp_Object temp;
971 XSETFASTINT (temp, GPT); 970 XSETFASTINT (temp, GPT);
@@ -973,9 +972,9 @@ See also `gap-size'. */
973} 972}
974 973
975DEFUN ("gap-size", Fgap_size, Sgap_size, 0, 0, 0, 974DEFUN ("gap-size", Fgap_size, Sgap_size, 0, 0, 0,
976 /* Return the size of the current buffer's gap. 975 doc: /* Return the size of the current buffer's gap.
977See also `gap-position'. */ 976See also `gap-position'. */)
978 ()) 977 ()
979{ 978{
980 Lisp_Object temp; 979 Lisp_Object temp;
981 XSETFASTINT (temp, GAP_SIZE); 980 XSETFASTINT (temp, GAP_SIZE);
@@ -983,9 +982,9 @@ See also `gap-position'. */
983} 982}
984 983
985DEFUN ("position-bytes", Fposition_bytes, Sposition_bytes, 1, 1, 0, 984DEFUN ("position-bytes", Fposition_bytes, Sposition_bytes, 1, 1, 0,
986 /* Return the byte position for character position POSITION. 985 doc: /* Return the byte position for character position POSITION.
987If POSITION is out of range, the value is nil. */ 986If POSITION is out of range, the value is nil. */)
988 (position)) 987 (position)
989 Lisp_Object position; 988 Lisp_Object position;
990{ 989{
991 CHECK_NUMBER_COERCE_MARKER (position, 1); 990 CHECK_NUMBER_COERCE_MARKER (position, 1);
@@ -995,9 +994,9 @@ If POSITION is out of range, the value is nil. */
995} 994}
996 995
997DEFUN ("byte-to-position", Fbyte_to_position, Sbyte_to_position, 1, 1, 0, 996DEFUN ("byte-to-position", Fbyte_to_position, Sbyte_to_position, 1, 1, 0,
998 /* Return the character position for byte position BYTEPOS. 997 doc: /* Return the character position for byte position BYTEPOS.
999If BYTEPOS is out of range, the value is nil. */ 998If BYTEPOS is out of range, the value is nil. */)
1000 (bytepos)) 999 (bytepos)
1001 Lisp_Object bytepos; 1000 Lisp_Object bytepos;
1002{ 1001{
1003 CHECK_NUMBER (bytepos, 1); 1002 CHECK_NUMBER (bytepos, 1);
@@ -1007,9 +1006,9 @@ If BYTEPOS is out of range, the value is nil. */
1007} 1006}
1008 1007
1009DEFUN ("following-char", Ffollowing_char, Sfollowing_char, 0, 0, 0, 1008DEFUN ("following-char", Ffollowing_char, Sfollowing_char, 0, 0, 0,
1010 /* Return the character following point, as a number. 1009 doc: /* Return the character following point, as a number.
1011At the end of the buffer or accessible region, return 0. */ 1010At the end of the buffer or accessible region, return 0. */)
1012 ()) 1011 ()
1013{ 1012{
1014 Lisp_Object temp; 1013 Lisp_Object temp;
1015 if (PT >= ZV) 1014 if (PT >= ZV)
@@ -1020,9 +1019,9 @@ At the end of the buffer or accessible region, return 0. */
1020} 1019}
1021 1020
1022DEFUN ("preceding-char", Fprevious_char, Sprevious_char, 0, 0, 0, 1021DEFUN ("preceding-char", Fprevious_char, Sprevious_char, 0, 0, 0,
1023 /* Return the character preceding point, as a number. 1022 doc: /* Return the character preceding point, as a number.
1024At the beginning of the buffer or accessible region, return 0. */ 1023At the beginning of the buffer or accessible region, return 0. */)
1025 ()) 1024 ()
1026{ 1025{
1027 Lisp_Object temp; 1026 Lisp_Object temp;
1028 if (PT <= BEGV) 1027 if (PT <= BEGV)
@@ -1039,9 +1038,9 @@ At the beginning of the buffer or accessible region, return 0. */
1039} 1038}
1040 1039
1041DEFUN ("bobp", Fbobp, Sbobp, 0, 0, 0, 1040DEFUN ("bobp", Fbobp, Sbobp, 0, 0, 0,
1042 /* Return t if point is at the beginning of the buffer. 1041 doc: /* Return t if point is at the beginning of the buffer.
1043If the buffer is narrowed, this means the beginning of the narrowed part. */ 1042If the buffer is narrowed, this means the beginning of the narrowed part. */)
1044 ()) 1043 ()
1045{ 1044{
1046 if (PT == BEGV) 1045 if (PT == BEGV)
1047 return Qt; 1046 return Qt;
@@ -1049,9 +1048,9 @@ If the buffer is narrowed, this means the beginning of the narrowed part. */
1049} 1048}
1050 1049
1051DEFUN ("eobp", Feobp, Seobp, 0, 0, 0, 1050DEFUN ("eobp", Feobp, Seobp, 0, 0, 0,
1052 /* Return t if point is at the end of the buffer. 1051 doc: /* Return t if point is at the end of the buffer.
1053If the buffer is narrowed, this means the end of the narrowed part. */ 1052If the buffer is narrowed, this means the end of the narrowed part. */)
1054 ()) 1053 ()
1055{ 1054{
1056 if (PT == ZV) 1055 if (PT == ZV)
1057 return Qt; 1056 return Qt;
@@ -1059,8 +1058,8 @@ If the buffer is narrowed, this means the end of the narrowed part. */
1059} 1058}
1060 1059
1061DEFUN ("bolp", Fbolp, Sbolp, 0, 0, 0, 1060DEFUN ("bolp", Fbolp, Sbolp, 0, 0, 0,
1062 /* Return t if point is at the beginning of a line. */ 1061 doc: /* Return t if point is at the beginning of a line. */)
1063 ()) 1062 ()
1064{ 1063{
1065 if (PT == BEGV || FETCH_BYTE (PT_BYTE - 1) == '\n') 1064 if (PT == BEGV || FETCH_BYTE (PT_BYTE - 1) == '\n')
1066 return Qt; 1065 return Qt;
@@ -1068,9 +1067,9 @@ DEFUN ("bolp", Fbolp, Sbolp, 0, 0, 0,
1068} 1067}
1069 1068
1070DEFUN ("eolp", Feolp, Seolp, 0, 0, 0, 1069DEFUN ("eolp", Feolp, Seolp, 0, 0, 0,
1071 /* Return t if point is at the end of a line. 1070 doc: /* Return t if point is at the end of a line.
1072`End of a line' includes point being at the end of the buffer. */ 1071`End of a line' includes point being at the end of the buffer. */)
1073 ()) 1072 ()
1074{ 1073{
1075 if (PT == ZV || FETCH_BYTE (PT_BYTE) == '\n') 1074 if (PT == ZV || FETCH_BYTE (PT_BYTE) == '\n')
1076 return Qt; 1075 return Qt;
@@ -1078,10 +1077,10 @@ DEFUN ("eolp", Feolp, Seolp, 0, 0, 0,
1078} 1077}
1079 1078
1080DEFUN ("char-after", Fchar_after, Schar_after, 0, 1, 0, 1079DEFUN ("char-after", Fchar_after, Schar_after, 0, 1, 0,
1081 /* Return character in current buffer at position POS. 1080 doc: /* Return character in current buffer at position POS.
1082POS is an integer or a marker. 1081POS is an integer or a marker.
1083If POS is out of range, the value is nil. */ 1082If POS is out of range, the value is nil. */)
1084 (pos)) 1083 (pos)
1085 Lisp_Object pos; 1084 Lisp_Object pos;
1086{ 1085{
1087 register int pos_byte; 1086 register int pos_byte;
@@ -1111,10 +1110,10 @@ If POS is out of range, the value is nil. */
1111} 1110}
1112 1111
1113DEFUN ("char-before", Fchar_before, Schar_before, 0, 1, 0, 1112DEFUN ("char-before", Fchar_before, Schar_before, 0, 1, 0,
1114 /* Return character in current buffer preceding position POS. 1113 doc: /* Return character in current buffer preceding position POS.
1115POS is an integer or a marker. 1114POS is an integer or a marker.
1116If POS is out of range, the value is nil. */ 1115If POS is out of range, the value is nil. */)
1117 (pos)) 1116 (pos)
1118 Lisp_Object pos; 1117 Lisp_Object pos;
1119{ 1118{
1120 register Lisp_Object val; 1119 register Lisp_Object val;
@@ -1157,14 +1156,14 @@ If POS is out of range, the value is nil. */
1157} 1156}
1158 1157
1159DEFUN ("user-login-name", Fuser_login_name, Suser_login_name, 0, 1, 0, 1158DEFUN ("user-login-name", Fuser_login_name, Suser_login_name, 0, 1, 0,
1160 /* Return the name under which the user logged in, as a string. 1159 doc: /* Return the name under which the user logged in, as a string.
1161This is based on the effective uid, not the real uid. 1160This is based on the effective uid, not the real uid.
1162Also, if the environment variable LOGNAME or USER is set, 1161Also, if the environment variable LOGNAME or USER is set,
1163that determines the value of this function. 1162that determines the value of this function.
1164 1163
1165If optional argument UID is an integer, return the login name of the user 1164If optional argument UID is an integer, return the login name of the user
1166with that uid, or nil if there is no such user. */ 1165with that uid, or nil if there is no such user. */)
1167 (uid)) 1166 (uid)
1168 Lisp_Object uid; 1167 Lisp_Object uid;
1169{ 1168{
1170 struct passwd *pw; 1169 struct passwd *pw;
@@ -1185,10 +1184,10 @@ with that uid, or nil if there is no such user. */
1185 1184
1186DEFUN ("user-real-login-name", Fuser_real_login_name, Suser_real_login_name, 1185DEFUN ("user-real-login-name", Fuser_real_login_name, Suser_real_login_name,
1187 0, 0, 0, 1186 0, 0, 0,
1188 /* Return the name of the user's real uid, as a string. 1187 doc: /* Return the name of the user's real uid, as a string.
1189This ignores the environment variables LOGNAME and USER, so it differs from 1188This ignores the environment variables LOGNAME and USER, so it differs from
1190`user-login-name' when running under `su'. */ 1189`user-login-name' when running under `su'. */)
1191 ()) 1190 ()
1192{ 1191{
1193 /* Set up the user name info if we didn't do it before. 1192 /* Set up the user name info if we didn't do it before.
1194 (That can happen if Emacs is dumpable 1193 (That can happen if Emacs is dumpable
@@ -1199,31 +1198,31 @@ This ignores the environment variables LOGNAME and USER, so it differs from
1199} 1198}
1200 1199
1201DEFUN ("user-uid", Fuser_uid, Suser_uid, 0, 0, 0, 1200DEFUN ("user-uid", Fuser_uid, Suser_uid, 0, 0, 0,
1202 /* Return the effective uid of Emacs. 1201 doc: /* Return the effective uid of Emacs.
1203Value is an integer or float, depending on the value. */ 1202Value is an integer or float, depending on the value. */)
1204 ()) 1203 ()
1205{ 1204{
1206 return make_fixnum_or_float (geteuid ()); 1205 return make_fixnum_or_float (geteuid ());
1207} 1206}
1208 1207
1209DEFUN ("user-real-uid", Fuser_real_uid, Suser_real_uid, 0, 0, 0, 1208DEFUN ("user-real-uid", Fuser_real_uid, Suser_real_uid, 0, 0, 0,
1210 /* Return the real uid of Emacs. 1209 doc: /* Return the real uid of Emacs.
1211Value is an integer or float, depending on the value. */ 1210Value is an integer or float, depending on the value. */)
1212 ()) 1211 ()
1213{ 1212{
1214 return make_fixnum_or_float (getuid ()); 1213 return make_fixnum_or_float (getuid ());
1215} 1214}
1216 1215
1217DEFUN ("user-full-name", Fuser_full_name, Suser_full_name, 0, 1, 0, 1216DEFUN ("user-full-name", Fuser_full_name, Suser_full_name, 0, 1, 0,
1218 /* Return the full name of the user logged in, as a string. 1217 doc: /* Return the full name of the user logged in, as a string.
1219If the full name corresponding to Emacs's userid is not known, 1218If the full name corresponding to Emacs's userid is not known,
1220return "unknown". 1219return "unknown".
1221 1220
1222If optional argument UID is an integer or float, return the full name 1221If optional argument UID is an integer or float, return the full name
1223of the user with that uid, or nil if there is no such user. 1222of the user with that uid, or nil if there is no such user.
1224If UID is a string, return the full name of the user with that login 1223If UID is a string, return the full name of the user with that login
1225name, or nil if there is no such user. */ 1224name, or nil if there is no such user. */)
1226 (uid)) 1225 (uid)
1227 Lisp_Object uid; 1226 Lisp_Object uid;
1228{ 1227{
1229 struct passwd *pw; 1228 struct passwd *pw;
@@ -1271,8 +1270,8 @@ name, or nil if there is no such user. */
1271} 1270}
1272 1271
1273DEFUN ("system-name", Fsystem_name, Ssystem_name, 0, 0, 0, 1272DEFUN ("system-name", Fsystem_name, Ssystem_name, 0, 0, 0,
1274 /* Return the name of the machine you are running on, as a string. */ 1273 doc: /* Return the name of the machine you are running on, as a string. */)
1275 ()) 1274 ()
1276{ 1275{
1277 return Vsystem_name; 1276 return Vsystem_name;
1278} 1277}
@@ -1289,22 +1288,22 @@ get_system_name ()
1289} 1288}
1290 1289
1291DEFUN ("emacs-pid", Femacs_pid, Semacs_pid, 0, 0, 0, 1290DEFUN ("emacs-pid", Femacs_pid, Semacs_pid, 0, 0, 0,
1292 /* Return the process ID of Emacs, as an integer. */ 1291 doc: /* Return the process ID of Emacs, as an integer. */)
1293 ()) 1292 ()
1294{ 1293{
1295 return make_number (getpid ()); 1294 return make_number (getpid ());
1296} 1295}
1297 1296
1298DEFUN ("current-time", Fcurrent_time, Scurrent_time, 0, 0, 0, 1297DEFUN ("current-time", Fcurrent_time, Scurrent_time, 0, 0, 0,
1299 /* Return the current time, as the number of seconds since 1970-01-01 00:00:00. 1298 doc: /* Return the current time, as the number of seconds since 1970-01-01 00:00:00.
1300The time is returned as a list of three integers. The first has the 1299The time is returned as a list of three integers. The first has the
1301most significant 16 bits of the seconds, while the second has the 1300most significant 16 bits of the seconds, while the second has the
1302least significant 16 bits. The third integer gives the microsecond 1301least significant 16 bits. The third integer gives the microsecond
1303count. 1302count.
1304 1303
1305The microsecond count is zero on systems that do not provide 1304The microsecond count is zero on systems that do not provide
1306resolution finer than a second. */ 1305resolution finer than a second. */)
1307 ()) 1306 ()
1308{ 1307{
1309 EMACS_TIME t; 1308 EMACS_TIME t;
1310 Lisp_Object result[3]; 1309 Lisp_Object result[3];
@@ -1370,7 +1369,7 @@ lisp_time_argument (specified_time, result, usec)
1370} 1369}
1371 1370
1372DEFUN ("float-time", Ffloat_time, Sfloat_time, 0, 1, 0, 1371DEFUN ("float-time", Ffloat_time, Sfloat_time, 0, 1, 0,
1373 /* Return the current time, as a float number of seconds since the epoch. 1372 doc: /* Return the current time, as a float number of seconds since the epoch.
1374If an argument is given, it specifies a time to convert to float 1373If an argument is given, it specifies a time to convert to float
1375instead of the current time. The argument should have the forms: 1374instead of the current time. The argument should have the forms:
1376 (HIGH . LOW) or (HIGH LOW USEC) or (HIGH LOW . USEC). 1375 (HIGH . LOW) or (HIGH LOW USEC) or (HIGH LOW . USEC).
@@ -1378,8 +1377,8 @@ Thus, you can use times obtained from `current-time'
1378and from `file-attributes'. 1377and from `file-attributes'.
1379 1378
1380WARNING: Since the result is floating point, it may not be exact. 1379WARNING: Since the result is floating point, it may not be exact.
1381Do not use this function if precise time stamps are required. */ 1380Do not use this function if precise time stamps are required. */)
1382 (specified_time)) 1381 (specified_time)
1383 Lisp_Object specified_time; 1382 Lisp_Object specified_time;
1384{ 1383{
1385 time_t sec; 1384 time_t sec;
@@ -1446,7 +1445,7 @@ emacs_memftimeu (s, maxsize, format, format_len, tp, ut)
1446} 1445}
1447 1446
1448DEFUN ("format-time-string", Fformat_time_string, Sformat_time_string, 1, 3, 0, 1447DEFUN ("format-time-string", Fformat_time_string, Sformat_time_string, 1, 3, 0,
1449 /* Use FORMAT-STRING to format the time TIME, or now if omitted. 1448 doc: /* Use FORMAT-STRING to format the time TIME, or now if omitted.
1450TIME is specified as (HIGH LOW . IGNORED) or (HIGH . LOW), as returned by 1449TIME is specified as (HIGH LOW . IGNORED) or (HIGH . LOW), as returned by
1451`current-time' or `file-attributes'. 1450`current-time' or `file-attributes'.
1452The third, optional, argument UNIVERSAL, if non-nil, means describe TIME 1451The third, optional, argument UNIVERSAL, if non-nil, means describe TIME
@@ -1494,8 +1493,8 @@ The modifiers are `E' and `O'. For certain characters X,
1494%EX is a locale's alternative version of %X; 1493%EX is a locale's alternative version of %X;
1495%OX is like %X, but uses the locale's number symbols. 1494%OX is like %X, but uses the locale's number symbols.
1496 1495
1497For example, to produce full ISO 8601 format, use "%Y-%m-%dT%T%z". */ 1496For example, to produce full ISO 8601 format, use "%Y-%m-%dT%T%z". */)
1498 (format_string, time, universal)) 1497 (format_string, time, universal)
1499 Lisp_Object format_string, time, universal; 1498 Lisp_Object format_string, time, universal;
1500{ 1499{
1501 time_t value; 1500 time_t value;
@@ -1543,7 +1542,7 @@ For example, to produce full ISO 8601 format, use "%Y-%m-%dT%T%z". */
1543} 1542}
1544 1543
1545DEFUN ("decode-time", Fdecode_time, Sdecode_time, 0, 1, 0, 1544DEFUN ("decode-time", Fdecode_time, Sdecode_time, 0, 1, 0,
1546 /* Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST ZONE). 1545 doc: /* Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST ZONE).
1547The optional SPECIFIED-TIME should be a list of (HIGH LOW . IGNORED) 1546The optional SPECIFIED-TIME should be a list of (HIGH LOW . IGNORED)
1548or (HIGH . LOW), as from `current-time' and `file-attributes', or `nil' 1547or (HIGH . LOW), as from `current-time' and `file-attributes', or `nil'
1549to use the current time. The list has the following nine members: 1548to use the current time. The list has the following nine members:
@@ -1554,8 +1553,8 @@ MONTH is an integer between 1 and 12. YEAR is an integer indicating the
1554four-digit year. DOW is the day of week, an integer between 0 and 6, where 1553four-digit year. DOW is the day of week, an integer between 0 and 6, where
15550 is Sunday. DST is t if daylight savings time is effect, otherwise nil. 15540 is Sunday. DST is t if daylight savings time is effect, otherwise nil.
1556ZONE is an integer indicating the number of seconds east of Greenwich. 1555ZONE is an integer indicating the number of seconds east of Greenwich.
1557(Note that Common Lisp has different meanings for DOW and ZONE.) */ 1556(Note that Common Lisp has different meanings for DOW and ZONE.) */)
1558 (specified_time)) 1557 (specified_time)
1559 Lisp_Object specified_time; 1558 Lisp_Object specified_time;
1560{ 1559{
1561 time_t time_spec; 1560 time_t time_spec;
@@ -1589,7 +1588,7 @@ ZONE is an integer indicating the number of seconds east of Greenwich.
1589} 1588}
1590 1589
1591DEFUN ("encode-time", Fencode_time, Sencode_time, 6, MANY, 0, 1590DEFUN ("encode-time", Fencode_time, Sencode_time, 6, MANY, 0,
1592 /* Convert SECOND, MINUTE, HOUR, DAY, MONTH, YEAR and ZONE to internal time. 1591 doc: /* Convert SECOND, MINUTE, HOUR, DAY, MONTH, YEAR and ZONE to internal time.
1593This is the reverse operation of `decode-time', which see. 1592This is the reverse operation of `decode-time', which see.
1594ZONE defaults to the current time zone rule. This can 1593ZONE defaults to the current time zone rule. This can
1595be a string or t (as from `set-time-zone-rule'), or it can be a list 1594be a string or t (as from `set-time-zone-rule'), or it can be a list
@@ -1604,8 +1603,8 @@ This feature lets (apply 'encode-time (decode-time ...)) work.
1604Out-of-range values for SEC, MINUTE, HOUR, DAY, or MONTH are allowed; 1603Out-of-range values for SEC, MINUTE, HOUR, DAY, or MONTH are allowed;
1605for example, a DAY of 0 means the day preceding the given month. 1604for example, a DAY of 0 means the day preceding the given month.
1606Year numbers less than 100 are treated just like other year numbers. 1605Year numbers less than 100 are treated just like other year numbers.
1607If you want them to stand for years in this century, you must do that yourself. */ 1606If you want them to stand for years in this century, you must do that yourself. */)
1608 (nargs, args)) 1607 (nargs, args)
1609 int nargs; 1608 int nargs;
1610 register Lisp_Object *args; 1609 register Lisp_Object *args;
1611{ 1610{
@@ -1674,7 +1673,7 @@ If you want them to stand for years in this century, you must do that yourself.
1674} 1673}
1675 1674
1676DEFUN ("current-time-string", Fcurrent_time_string, Scurrent_time_string, 0, 1, 0, 1675DEFUN ("current-time-string", Fcurrent_time_string, Scurrent_time_string, 0, 1, 0,
1677 /* Return the current time, as a human-readable string. 1676 doc: /* Return the current time, as a human-readable string.
1678Programs can use this function to decode a time, 1677Programs can use this function to decode a time,
1679since the number of columns in each field is fixed. 1678since the number of columns in each field is fixed.
1680The format is `Sun Sep 16 01:03:52 1973'. 1679The format is `Sun Sep 16 01:03:52 1973'.
@@ -1687,8 +1686,8 @@ instead of the current time. The argument should have the form:
1687or the form: 1686or the form:
1688 (HIGH LOW . IGNORED). 1687 (HIGH LOW . IGNORED).
1689Thus, you can use times obtained from `current-time' 1688Thus, you can use times obtained from `current-time'
1690and from `file-attributes'. */ 1689and from `file-attributes'. */)
1691 (specified_time)) 1690 (specified_time)
1692 Lisp_Object specified_time; 1691 Lisp_Object specified_time;
1693{ 1692{
1694 time_t value; 1693 time_t value;
@@ -1732,7 +1731,7 @@ tm_diff (a, b)
1732} 1731}
1733 1732
1734DEFUN ("current-time-zone", Fcurrent_time_zone, Scurrent_time_zone, 0, 1, 0, 1733DEFUN ("current-time-zone", Fcurrent_time_zone, Scurrent_time_zone, 0, 1, 0,
1735 /* Return the offset and name for the local time zone. 1734 doc: /* Return the offset and name for the local time zone.
1736This returns a list of the form (OFFSET NAME). 1735This returns a list of the form (OFFSET NAME).
1737OFFSET is an integer number of seconds ahead of UTC (east of Greenwich). 1736OFFSET is an integer number of seconds ahead of UTC (east of Greenwich).
1738 A negative value means west of Greenwich. 1737 A negative value means west of Greenwich.
@@ -1747,8 +1746,8 @@ and from `file-attributes'.
1747 1746
1748Some operating systems cannot provide all this information to Emacs; 1747Some operating systems cannot provide all this information to Emacs;
1749in this case, `current-time-zone' returns a list containing nil for 1748in this case, `current-time-zone' returns a list containing nil for
1750the data it can't find. */ 1749the data it can't find. */)
1751 (specified_time)) 1750 (specified_time)
1752 Lisp_Object specified_time; 1751 Lisp_Object specified_time;
1753{ 1752{
1754 time_t value; 1753 time_t value;
@@ -1804,10 +1803,10 @@ the data it can't find. */
1804static char **environbuf; 1803static char **environbuf;
1805 1804
1806DEFUN ("set-time-zone-rule", Fset_time_zone_rule, Sset_time_zone_rule, 1, 1, 0, 1805DEFUN ("set-time-zone-rule", Fset_time_zone_rule, Sset_time_zone_rule, 1, 1, 0,
1807 /* Set the local time zone using TZ, a string specifying a time zone rule. 1806 doc: /* Set the local time zone using TZ, a string specifying a time zone rule.
1808If TZ is nil, use implementation-defined default time zone information. 1807If TZ is nil, use implementation-defined default time zone information.
1809If TZ is t, use Universal Time. */ 1808If TZ is t, use Universal Time. */)
1810 (tz)) 1809 (tz)
1811 Lisp_Object tz; 1810 Lisp_Object tz;
1812{ 1811{
1813 char *tzstring; 1812 char *tzstring;
@@ -1991,7 +1990,7 @@ insert1 (arg)
1991 we don't care if it gets trashed. */ 1990 we don't care if it gets trashed. */
1992 1991
1993DEFUN ("insert", Finsert, Sinsert, 0, MANY, 0, 1992DEFUN ("insert", Finsert, Sinsert, 0, MANY, 0,
1994 /* Insert the arguments, either strings or characters, at point. 1993 doc: /* Insert the arguments, either strings or characters, at point.
1995Point and before-insertion markers move forward to end up 1994Point and before-insertion markers move forward to end up
1996 after the inserted text. 1995 after the inserted text.
1997Any other markers at the point of insertion remain before the text. 1996Any other markers at the point of insertion remain before the text.
@@ -1999,8 +1998,8 @@ Any other markers at the point of insertion remain before the text.
1999If the current buffer is multibyte, unibyte strings are converted 1998If the current buffer is multibyte, unibyte strings are converted
2000to multibyte for insertion (see `unibyte-char-to-multibyte'). 1999to multibyte for insertion (see `unibyte-char-to-multibyte').
2001If the current buffer is unibyte, multibyte strings are converted 2000If the current buffer is unibyte, multibyte strings are converted
2002to unibyte for insertion. */ 2001to unibyte for insertion. */)
2003 (nargs, args)) 2002 (nargs, args)
2004 int nargs; 2003 int nargs;
2005 register Lisp_Object *args; 2004 register Lisp_Object *args;
2006{ 2005{
@@ -2010,7 +2009,7 @@ to unibyte for insertion. */
2010 2009
2011DEFUN ("insert-and-inherit", Finsert_and_inherit, Sinsert_and_inherit, 2010DEFUN ("insert-and-inherit", Finsert_and_inherit, Sinsert_and_inherit,
2012 0, MANY, 0, 2011 0, MANY, 0,
2013 /* Insert the arguments at point, inheriting properties from adjoining text. 2012 doc: /* Insert the arguments at point, inheriting properties from adjoining text.
2014Point and before-insertion markers move forward to end up 2013Point and before-insertion markers move forward to end up
2015 after the inserted text. 2014 after the inserted text.
2016Any other markers at the point of insertion remain before the text. 2015Any other markers at the point of insertion remain before the text.
@@ -2018,8 +2017,8 @@ Any other markers at the point of insertion remain before the text.
2018If the current buffer is multibyte, unibyte strings are converted 2017If the current buffer is multibyte, unibyte strings are converted
2019to multibyte for insertion (see `unibyte-char-to-multibyte'). 2018to multibyte for insertion (see `unibyte-char-to-multibyte').
2020If the current buffer is unibyte, multibyte strings are converted 2019If the current buffer is unibyte, multibyte strings are converted
2021to unibyte for insertion. */ 2020to unibyte for insertion. */)
2022 (nargs, args)) 2021 (nargs, args)
2023 int nargs; 2022 int nargs;
2024 register Lisp_Object *args; 2023 register Lisp_Object *args;
2025{ 2024{
@@ -2029,14 +2028,14 @@ to unibyte for insertion. */
2029} 2028}
2030 2029
2031DEFUN ("insert-before-markers", Finsert_before_markers, Sinsert_before_markers, 0, MANY, 0, 2030DEFUN ("insert-before-markers", Finsert_before_markers, Sinsert_before_markers, 0, MANY, 0,
2032 /* Insert strings or characters at point, relocating markers after the text. 2031 doc: /* Insert strings or characters at point, relocating markers after the text.
2033Point and markers move forward to end up after the inserted text. 2032Point and markers move forward to end up after the inserted text.
2034 2033
2035If the current buffer is multibyte, unibyte strings are converted 2034If the current buffer is multibyte, unibyte strings are converted
2036to multibyte for insertion (see `unibyte-char-to-multibyte'). 2035to multibyte for insertion (see `unibyte-char-to-multibyte').
2037If the current buffer is unibyte, multibyte strings are converted 2036If the current buffer is unibyte, multibyte strings are converted
2038to unibyte for insertion. */ 2037to unibyte for insertion. */)
2039 (nargs, args)) 2038 (nargs, args)
2040 int nargs; 2039 int nargs;
2041 register Lisp_Object *args; 2040 register Lisp_Object *args;
2042{ 2041{
@@ -2048,14 +2047,14 @@ to unibyte for insertion. */
2048 2047
2049DEFUN ("insert-before-markers-and-inherit", Finsert_and_inherit_before_markers, 2048DEFUN ("insert-before-markers-and-inherit", Finsert_and_inherit_before_markers,
2050 Sinsert_and_inherit_before_markers, 0, MANY, 0, 2049 Sinsert_and_inherit_before_markers, 0, MANY, 0,
2051 /* Insert text at point, relocating markers and inheriting properties. 2050 doc: /* Insert text at point, relocating markers and inheriting properties.
2052Point and markers move forward to end up after the inserted text. 2051Point and markers move forward to end up after the inserted text.
2053 2052
2054If the current buffer is multibyte, unibyte strings are converted 2053If the current buffer is multibyte, unibyte strings are converted
2055to multibyte for insertion (see `unibyte-char-to-multibyte'). 2054to multibyte for insertion (see `unibyte-char-to-multibyte').
2056If the current buffer is unibyte, multibyte strings are converted 2055If the current buffer is unibyte, multibyte strings are converted
2057to unibyte for insertion. */ 2056to unibyte for insertion. */)
2058 (nargs, args)) 2057 (nargs, args)
2059 int nargs; 2058 int nargs;
2060 register Lisp_Object *args; 2059 register Lisp_Object *args;
2061{ 2060{
@@ -2066,12 +2065,12 @@ to unibyte for insertion. */
2066} 2065}
2067 2066
2068DEFUN ("insert-char", Finsert_char, Sinsert_char, 2, 3, 0, 2067DEFUN ("insert-char", Finsert_char, Sinsert_char, 2, 3, 0,
2069 /* Insert COUNT (second arg) copies of CHARACTER (first arg). 2068 doc: /* Insert COUNT (second arg) copies of CHARACTER (first arg).
2070Both arguments are required. 2069Both arguments are required.
2071Point, and before-insertion markers, are relocated as in the function `insert'. 2070Point, and before-insertion markers, are relocated as in the function `insert'.
2072The optional third arg INHERIT, if non-nil, says to inherit text properties 2071The optional third arg INHERIT, if non-nil, says to inherit text properties
2073from adjoining text, if those properties are sticky. */ 2072from adjoining text, if those properties are sticky. */)
2074 (character, count, inherit)) 2073 (character, count, inherit)
2075 Lisp_Object character, count, inherit; 2074 Lisp_Object character, count, inherit;
2076{ 2075{
2077 register unsigned char *string; 2076 register unsigned char *string;
@@ -2222,15 +2221,15 @@ update_buffer_properties (start, end)
2222} 2221}
2223 2222
2224DEFUN ("buffer-substring", Fbuffer_substring, Sbuffer_substring, 2, 2, 0, 2223DEFUN ("buffer-substring", Fbuffer_substring, Sbuffer_substring, 2, 2, 0,
2225 /* Return the contents of part of the current buffer as a string. 2224 doc: /* Return the contents of part of the current buffer as a string.
2226The two arguments START and END are character positions; 2225The two arguments START and END are character positions;
2227they can be in either order. 2226they can be in either order.
2228The string returned is multibyte if the buffer is multibyte. 2227The string returned is multibyte if the buffer is multibyte.
2229 2228
2230This function copies the text properties of that part of the buffer 2229This function copies the text properties of that part of the buffer
2231into the result string; if you don't want the text properties, 2230into the result string; if you don't want the text properties,
2232use `buffer-substring-no-properties' instead. */ 2231use `buffer-substring-no-properties' instead. */)
2233 (start, end)) 2232 (start, end)
2234 Lisp_Object start, end; 2233 Lisp_Object start, end;
2235{ 2234{
2236 register int b, e; 2235 register int b, e;
@@ -2244,10 +2243,10 @@ use `buffer-substring-no-properties' instead. */
2244 2243
2245DEFUN ("buffer-substring-no-properties", Fbuffer_substring_no_properties, 2244DEFUN ("buffer-substring-no-properties", Fbuffer_substring_no_properties,
2246 Sbuffer_substring_no_properties, 2, 2, 0, 2245 Sbuffer_substring_no_properties, 2, 2, 0,
2247 /* Return the characters of part of the buffer, without the text properties. 2246 doc: /* Return the characters of part of the buffer, without the text properties.
2248The two arguments START and END are character positions; 2247The two arguments START and END are character positions;
2249they can be in either order. */ 2248they can be in either order. */)
2250 (start, end)) 2249 (start, end)
2251 Lisp_Object start, end; 2250 Lisp_Object start, end;
2252{ 2251{
2253 register int b, e; 2252 register int b, e;
@@ -2260,21 +2259,21 @@ they can be in either order. */
2260} 2259}
2261 2260
2262DEFUN ("buffer-string", Fbuffer_string, Sbuffer_string, 0, 0, 0, 2261DEFUN ("buffer-string", Fbuffer_string, Sbuffer_string, 0, 0, 0,
2263 /* Return the contents of the current buffer as a string. 2262 doc: /* Return the contents of the current buffer as a string.
2264If narrowing is in effect, this function returns only the visible part 2263If narrowing is in effect, this function returns only the visible part
2265of the buffer. */ 2264of the buffer. */)
2266 ()) 2265 ()
2267{ 2266{
2268 return make_buffer_string (BEGV, ZV, 1); 2267 return make_buffer_string (BEGV, ZV, 1);
2269} 2268}
2270 2269
2271DEFUN ("insert-buffer-substring", Finsert_buffer_substring, Sinsert_buffer_substring, 2270DEFUN ("insert-buffer-substring", Finsert_buffer_substring, Sinsert_buffer_substring,
2272 1, 3, 0, 2271 1, 3, 0,
2273 /* Insert before point a substring of the contents of buffer BUFFER. 2272 doc: /* Insert before point a substring of the contents of buffer BUFFER.
2274BUFFER may be a buffer or a buffer name. 2273BUFFER may be a buffer or a buffer name.
2275Arguments START and END are character numbers specifying the substring. 2274Arguments START and END are character numbers specifying the substring.
2276They default to the beginning and the end of BUFFER. */ 2275They default to the beginning and the end of BUFFER. */)
2277 (buf, start, end)) 2276 (buf, start, end)
2278 Lisp_Object buf, start, end; 2277 Lisp_Object buf, start, end;
2279{ 2278{
2280 register int b, e, temp; 2279 register int b, e, temp;
@@ -2320,15 +2319,15 @@ They default to the beginning and the end of BUFFER. */
2320 2319
2321DEFUN ("compare-buffer-substrings", Fcompare_buffer_substrings, Scompare_buffer_substrings, 2320DEFUN ("compare-buffer-substrings", Fcompare_buffer_substrings, Scompare_buffer_substrings,
2322 6, 6, 0, 2321 6, 6, 0,
2323 /* Compare two substrings of two buffers; return result as number. 2322 doc: /* Compare two substrings of two buffers; return result as number.
2324the value is -N if first string is less after N-1 chars, 2323the value is -N if first string is less after N-1 chars,
2325+N if first string is greater after N-1 chars, or 0 if strings match. 2324+N if first string is greater after N-1 chars, or 0 if strings match.
2326Each substring is represented as three arguments: BUFFER, START and END. 2325Each substring is represented as three arguments: BUFFER, START and END.
2327That makes six args in all, three for each substring. 2326That makes six args in all, three for each substring.
2328 2327
2329The value of `case-fold-search' in the current buffer 2328The value of `case-fold-search' in the current buffer
2330determines whether case is significant or ignored. */ 2329determines whether case is significant or ignored. */)
2331 (buffer1, start1, end1, buffer2, start2, end2)) 2330 (buffer1, start1, end1, buffer2, start2, end2)
2332 Lisp_Object buffer1, start1, end1, buffer2, start2, end2; 2331 Lisp_Object buffer1, start1, end1, buffer2, start2, end2;
2333{ 2332{
2334 register int begp1, endp1, begp2, endp2, temp; 2333 register int begp1, endp1, begp2, endp2, temp;
@@ -2492,11 +2491,11 @@ subst_char_in_region_unwind_1 (arg)
2492 2491
2493DEFUN ("subst-char-in-region", Fsubst_char_in_region, 2492DEFUN ("subst-char-in-region", Fsubst_char_in_region,
2494 Ssubst_char_in_region, 4, 5, 0, 2493 Ssubst_char_in_region, 4, 5, 0,
2495 /* From START to END, replace FROMCHAR with TOCHAR each time it occurs. 2494 doc: /* From START to END, replace FROMCHAR with TOCHAR each time it occurs.
2496If optional arg NOUNDO is non-nil, don't record this change for undo 2495If optional arg NOUNDO is non-nil, don't record this change for undo
2497and don't mark the buffer as really changed. 2496and don't mark the buffer as really changed.
2498Both characters must have the same length of multi-byte form. */ 2497Both characters must have the same length of multi-byte form. */)
2499 (start, end, fromchar, tochar, noundo)) 2498 (start, end, fromchar, tochar, noundo)
2500 Lisp_Object start, end, fromchar, tochar, noundo; 2499 Lisp_Object start, end, fromchar, tochar, noundo;
2501{ 2500{
2502 register int pos, pos_byte, stop, i, len, end_byte; 2501 register int pos, pos_byte, stop, i, len, end_byte;
@@ -2659,12 +2658,12 @@ Both characters must have the same length of multi-byte form. */
2659} 2658}
2660 2659
2661DEFUN ("translate-region", Ftranslate_region, Stranslate_region, 3, 3, 0, 2660DEFUN ("translate-region", Ftranslate_region, Stranslate_region, 3, 3, 0,
2662 /* From START to END, translate characters according to TABLE. 2661 doc: /* From START to END, translate characters according to TABLE.
2663TABLE is a string; the Nth character in it is the mapping 2662TABLE is a string; the Nth character in it is the mapping
2664for the character with code N. 2663for the character with code N.
2665This function does not alter multibyte characters. 2664This function does not alter multibyte characters.
2666It returns the number of characters changed. */ 2665It returns the number of characters changed. */)
2667 (start, end, table)) 2666 (start, end, table)
2668 Lisp_Object start; 2667 Lisp_Object start;
2669 Lisp_Object end; 2668 Lisp_Object end;
2670 register Lisp_Object table; 2669 register Lisp_Object table;
@@ -2748,10 +2747,10 @@ It returns the number of characters changed. */
2748} 2747}
2749 2748
2750DEFUN ("delete-region", Fdelete_region, Sdelete_region, 2, 2, "r", 2749DEFUN ("delete-region", Fdelete_region, Sdelete_region, 2, 2, "r",
2751 /* Delete the text between point and mark. 2750 doc: /* Delete the text between point and mark.
2752When called from a program, expects two arguments, 2751When called from a program, expects two arguments,
2753positions (integers or markers) specifying the stretch to be deleted. */ 2752positions (integers or markers) specifying the stretch to be deleted. */)
2754 (start, end)) 2753 (start, end)
2755 Lisp_Object start, end; 2754 Lisp_Object start, end;
2756{ 2755{
2757 validate_region (&start, &end); 2756 validate_region (&start, &end);
@@ -2761,8 +2760,8 @@ positions (integers or markers) specifying the stretch to be deleted. */
2761 2760
2762DEFUN ("delete-and-extract-region", Fdelete_and_extract_region, 2761DEFUN ("delete-and-extract-region", Fdelete_and_extract_region,
2763 Sdelete_and_extract_region, 2, 2, 0, 2762 Sdelete_and_extract_region, 2, 2, 0,
2764 /* Delete the text between START and END and return it. */ 2763 doc: /* Delete the text between START and END and return it. */)
2765 (start, end)) 2764 (start, end)
2766 Lisp_Object start, end; 2765 Lisp_Object start, end;
2767{ 2766{
2768 validate_region (&start, &end); 2767 validate_region (&start, &end);
@@ -2770,9 +2769,9 @@ DEFUN ("delete-and-extract-region", Fdelete_and_extract_region,
2770} 2769}
2771 2770
2772DEFUN ("widen", Fwiden, Swiden, 0, 0, "", 2771DEFUN ("widen", Fwiden, Swiden, 0, 0, "",
2773 /* Remove restrictions (narrowing) from current buffer. 2772 doc: /* Remove restrictions (narrowing) from current buffer.
2774This allows the buffer's full text to be seen and edited. */ 2773This allows the buffer's full text to be seen and edited. */)
2775 ()) 2774 ()
2776{ 2775{
2777 if (BEG != BEGV || Z != ZV) 2776 if (BEG != BEGV || Z != ZV)
2778 current_buffer->clip_changed = 1; 2777 current_buffer->clip_changed = 1;
@@ -2785,15 +2784,15 @@ This allows the buffer's full text to be seen and edited. */
2785} 2784}
2786 2785
2787DEFUN ("narrow-to-region", Fnarrow_to_region, Snarrow_to_region, 2, 2, "r", 2786DEFUN ("narrow-to-region", Fnarrow_to_region, Snarrow_to_region, 2, 2, "r",
2788 /* Restrict editing in this buffer to the current region. 2787 doc: /* Restrict editing in this buffer to the current region.
2789The rest of the text becomes temporarily invisible and untouchable 2788The rest of the text becomes temporarily invisible and untouchable
2790but is not deleted; if you save the buffer in a file, the invisible 2789but is not deleted; if you save the buffer in a file, the invisible
2791text is included in the file. \\[widen] makes all visible again. 2790text is included in the file. \\[widen] makes all visible again.
2792See also `save-restriction'. 2791See also `save-restriction'.
2793 2792
2794When calling from a program, pass two arguments; positions (integers 2793When calling from a program, pass two arguments; positions (integers
2795or markers) bounding the text that should remain visible. */ 2794or markers) bounding the text that should remain visible. */)
2796 (start, end)) 2795 (start, end)
2797 register Lisp_Object start, end; 2796 register Lisp_Object start, end;
2798{ 2797{
2799 CHECK_NUMBER_COERCE_MARKER (start, 0); 2798 CHECK_NUMBER_COERCE_MARKER (start, 0);
@@ -2895,7 +2894,7 @@ save_restriction_restore (data)
2895} 2894}
2896 2895
2897DEFUN ("save-restriction", Fsave_restriction, Ssave_restriction, 0, UNEVALLED, 0, 2896DEFUN ("save-restriction", Fsave_restriction, Ssave_restriction, 0, UNEVALLED, 0,
2898 /* Execute BODY, saving and restoring current buffer's restrictions. 2897 doc: /* Execute BODY, saving and restoring current buffer's restrictions.
2899The buffer's restrictions make parts of the beginning and end invisible. 2898The buffer's restrictions make parts of the beginning and end invisible.
2900(They are set up with `narrow-to-region' and eliminated with `widen'.) 2899(They are set up with `narrow-to-region' and eliminated with `widen'.)
2901This special form, `save-restriction', saves the current buffer's restrictions 2900This special form, `save-restriction', saves the current buffer's restrictions
@@ -2908,8 +2907,8 @@ The value returned is the value of the last form in BODY.
2908 2907
2909Note: if you are using both `save-excursion' and `save-restriction', 2908Note: if you are using both `save-excursion' and `save-restriction',
2910use `save-excursion' outermost: 2909use `save-excursion' outermost:
2911 (save-excursion (save-restriction ...)) */ 2910 (save-excursion (save-restriction ...)) */)
2912 (body)) 2911 (body)
2913 Lisp_Object body; 2912 Lisp_Object body;
2914{ 2913{
2915 register Lisp_Object val; 2914 register Lisp_Object val;
@@ -2927,13 +2926,13 @@ static char *message_text;
2927static int message_length; 2926static int message_length;
2928 2927
2929DEFUN ("message", Fmessage, Smessage, 1, MANY, 0, 2928DEFUN ("message", Fmessage, Smessage, 1, MANY, 0,
2930 /* Print a one-line message at the bottom of the screen. 2929 doc: /* Print a one-line message at the bottom of the screen.
2931The first argument is a format control string, and the rest are data 2930The first argument is a format control string, and the rest are data
2932to be formatted under control of the string. See `format' for details. 2931to be formatted under control of the string. See `format' for details.
2933 2932
2934If the first argument is nil, clear any existing message; let the 2933If the first argument is nil, clear any existing message; let the
2935minibuffer contents show. */ 2934minibuffer contents show. */)
2936 (nargs, args)) 2935 (nargs, args)
2937 int nargs; 2936 int nargs;
2938 Lisp_Object *args; 2937 Lisp_Object *args;
2939{ 2938{
@@ -2952,14 +2951,14 @@ minibuffer contents show. */
2952} 2951}
2953 2952
2954DEFUN ("message-box", Fmessage_box, Smessage_box, 1, MANY, 0, 2953DEFUN ("message-box", Fmessage_box, Smessage_box, 1, MANY, 0,
2955 /* Display a message, in a dialog box if possible. 2954 doc: /* Display a message, in a dialog box if possible.
2956If a dialog box is not available, use the echo area. 2955If a dialog box is not available, use the echo area.
2957The first argument is a format control string, and the rest are data 2956The first argument is a format control string, and the rest are data
2958to be formatted under control of the string. See `format' for details. 2957to be formatted under control of the string. See `format' for details.
2959 2958
2960If the first argument is nil, clear any existing message; let the 2959If the first argument is nil, clear any existing message; let the
2961minibuffer contents show. */ 2960minibuffer contents show. */)
2962 (nargs, args)) 2961 (nargs, args)
2963 int nargs; 2962 int nargs;
2964 Lisp_Object *args; 2963 Lisp_Object *args;
2965{ 2964{
@@ -3010,7 +3009,7 @@ extern Lisp_Object last_nonmenu_event;
3010#endif 3009#endif
3011 3010
3012DEFUN ("message-or-box", Fmessage_or_box, Smessage_or_box, 1, MANY, 0, 3011DEFUN ("message-or-box", Fmessage_or_box, Smessage_or_box, 1, MANY, 0,
3013 /* Display a message in a dialog box or in the echo area. 3012 doc: /* Display a message in a dialog box or in the echo area.
3014If this command was invoked with the mouse, use a dialog box if 3013If this command was invoked with the mouse, use a dialog box if
3015`use-dialog-box' is non-nil. 3014`use-dialog-box' is non-nil.
3016Otherwise, use the echo area. 3015Otherwise, use the echo area.
@@ -3018,8 +3017,8 @@ The first argument is a format control string, and the rest are data
3018to be formatted under control of the string. See `format' for details. 3017to be formatted under control of the string. See `format' for details.
3019 3018
3020If the first argument is nil, clear any existing message; let the 3019If the first argument is nil, clear any existing message; let the
3021minibuffer contents show. */ 3020minibuffer contents show. */)
3022 (nargs, args)) 3021 (nargs, args)
3023 int nargs; 3022 int nargs;
3024 Lisp_Object *args; 3023 Lisp_Object *args;
3025{ 3024{
@@ -3032,19 +3031,19 @@ minibuffer contents show. */
3032} 3031}
3033 3032
3034DEFUN ("current-message", Fcurrent_message, Scurrent_message, 0, 0, 0, 3033DEFUN ("current-message", Fcurrent_message, Scurrent_message, 0, 0, 0,
3035 /* Return the string currently displayed in the echo area, or nil if none. */ 3034 doc: /* Return the string currently displayed in the echo area, or nil if none. */)
3036 ()) 3035 ()
3037{ 3036{
3038 return current_message (); 3037 return current_message ();
3039} 3038}
3040 3039
3041 3040
3042DEFUN ("propertize", Fpropertize, Spropertize, 3, MANY, 0, 3041DEFUN ("propertize", Fpropertize, Spropertize, 3, MANY, 0,
3043 /* Return a copy of STRING with text properties added. 3042 doc: /* Return a copy of STRING with text properties added.
3044First argument is the string to copy. 3043First argument is the string to copy.
3045Remaining arguments form a sequence of PROPERTY VALUE pairs for text 3044Remaining arguments form a sequence of PROPERTY VALUE pairs for text
3046properties to add to the result. */ 3045properties to add to the result. */)
3047 (nargs, args)) 3046 (nargs, args)
3048 int nargs; 3047 int nargs;
3049 Lisp_Object *args; 3048 Lisp_Object *args;
3050{ 3049{
@@ -3086,7 +3085,7 @@ properties to add to the result. */
3086 : STRING_BYTES (XSTRING (STRING))) 3085 : STRING_BYTES (XSTRING (STRING)))
3087 3086
3088DEFUN ("format", Fformat, Sformat, 1, MANY, 0, 3087DEFUN ("format", Fformat, Sformat, 1, MANY, 0,
3089 /* Format a string out of a control-string and arguments. 3088 doc: /* Format a string out of a control-string and arguments.
3090The first argument is a control string. 3089The first argument is a control string.
3091The other arguments are substituted into it to make the result, a string. 3090The other arguments are substituted into it to make the result, a string.
3092It may contain %-sequences meaning to substitute the next argument. 3091It may contain %-sequences meaning to substitute the next argument.
@@ -3100,8 +3099,8 @@ It may contain %-sequences meaning to substitute the next argument.
3100%c means print a number as a single character. 3099%c means print a number as a single character.
3101%S means print any object as an s-expression (using `prin1'). 3100%S means print any object as an s-expression (using `prin1').
3102 The argument used for %d, %o, %x, %e, %f, %g or %c must be a number. 3101 The argument used for %d, %o, %x, %e, %f, %g or %c must be a number.
3103Use %% to put a single % into the output. */ 3102Use %% to put a single % into the output. */)
3104 (nargs, args)) 3103 (nargs, args)
3105 int nargs; 3104 int nargs;
3106 register Lisp_Object *args; 3105 register Lisp_Object *args;
3107{ 3106{
@@ -3525,10 +3524,10 @@ format1 (string1)
3525} 3524}
3526 3525
3527DEFUN ("char-equal", Fchar_equal, Schar_equal, 2, 2, 0, 3526DEFUN ("char-equal", Fchar_equal, Schar_equal, 2, 2, 0,
3528 /* Return t if two characters match, optionally ignoring case. 3527 doc: /* Return t if two characters match, optionally ignoring case.
3529Both arguments must be characters (i.e. integers). 3528Both arguments must be characters (i.e. integers).
3530Case is ignored if `case-fold-search' is non-nil in the current buffer. */ 3529Case is ignored if `case-fold-search' is non-nil in the current buffer. */)
3531 (c1, c2)) 3530 (c1, c2)
3532 register Lisp_Object c1, c2; 3531 register Lisp_Object c1, c2;
3533{ 3532{
3534 int i1, i2; 3533 int i1, i2;
@@ -3634,15 +3633,15 @@ transpose_markers (start1, end1, start2, end2,
3634} 3633}
3635 3634
3636DEFUN ("transpose-regions", Ftranspose_regions, Stranspose_regions, 4, 5, 0, 3635DEFUN ("transpose-regions", Ftranspose_regions, Stranspose_regions, 4, 5, 0,
3637 /* Transpose region START1 to END1 with START2 to END2. 3636 doc: /* Transpose region START1 to END1 with START2 to END2.
3638The regions may not be overlapping, because the size of the buffer is 3637The regions may not be overlapping, because the size of the buffer is
3639never changed in a transposition. 3638never changed in a transposition.
3640 3639
3641Optional fifth arg LEAVE_MARKERS, if non-nil, means don't update 3640Optional fifth arg LEAVE_MARKERS, if non-nil, means don't update
3642any markers that happen to be located in the regions. 3641any markers that happen to be located in the regions.
3643 3642
3644Transposing beyond buffer boundaries is an error. */ 3643Transposing beyond buffer boundaries is an error. */)
3645 (startr1, endr1, startr2, endr2, leave_markers)) 3644 (startr1, endr1, startr2, endr2, leave_markers)
3646 Lisp_Object startr1, endr1, startr2, endr2, leave_markers; 3645 Lisp_Object startr1, endr1, startr2, endr2, leave_markers;
3647{ 3646{
3648 register int start1, end1, start2, end2; 3647 register int start1, end1, start2, end2;
@@ -3932,13 +3931,13 @@ syms_of_editfns ()
3932 = intern ("buffer-access-fontify-functions"); 3931 = intern ("buffer-access-fontify-functions");
3933 staticpro (&Qbuffer_access_fontify_functions); 3932 staticpro (&Qbuffer_access_fontify_functions);
3934 3933
3935 DEFVAR_LISP ("inhibit-field-text-motion", &Vinhibit_field_text_motion 3934 DEFVAR_LISP ("inhibit-field-text-motion", &Vinhibit_field_text_motion,
3936 /* Non-nil means.text motion commands don't notice fields. */); 3935 doc: /* Non-nil means.text motion commands don't notice fields. */);
3937 Vinhibit_field_text_motion = Qnil; 3936 Vinhibit_field_text_motion = Qnil;
3938 3937
3939 DEFVAR_LISP ("buffer-access-fontify-functions", 3938 DEFVAR_LISP ("buffer-access-fontify-functions",
3940 &Vbuffer_access_fontify_functions 3939 &Vbuffer_access_fontify_functions,
3941 /* List of functions called by `buffer-substring' to fontify if necessary. 3940 doc: /* List of functions called by `buffer-substring' to fontify if necessary.
3942Each function is called with two arguments which specify the range 3941Each function is called with two arguments which specify the range
3943of the buffer being accessed. */); 3942of the buffer being accessed. */);
3944 Vbuffer_access_fontify_functions = Qnil; 3943 Vbuffer_access_fontify_functions = Qnil;
@@ -3956,23 +3955,23 @@ of the buffer being accessed. */);
3956 } 3955 }
3957 3956
3958 DEFVAR_LISP ("buffer-access-fontified-property", 3957 DEFVAR_LISP ("buffer-access-fontified-property",
3959 &Vbuffer_access_fontified_property 3958 &Vbuffer_access_fontified_property,
3960 /* Property which (if non-nil) indicates text has been fontified. 3959 doc: /* Property which (if non-nil) indicates text has been fontified.
3961`buffer-substring' need not call the `buffer-access-fontify-functions' 3960`buffer-substring' need not call the `buffer-access-fontify-functions'
3962functions if all the text being accessed has this property. */); 3961functions if all the text being accessed has this property. */);
3963 Vbuffer_access_fontified_property = Qnil; 3962 Vbuffer_access_fontified_property = Qnil;
3964 3963
3965 DEFVAR_LISP ("system-name", &Vsystem_name 3964 DEFVAR_LISP ("system-name", &Vsystem_name,
3966 /* The name of the machine Emacs is running on. */); 3965 doc: /* The name of the machine Emacs is running on. */);
3967 3966
3968 DEFVAR_LISP ("user-full-name", &Vuser_full_name 3967 DEFVAR_LISP ("user-full-name", &Vuser_full_name,
3969 /* The full name of the user logged in. */); 3968 doc: /* The full name of the user logged in. */);
3970 3969
3971 DEFVAR_LISP ("user-login-name", &Vuser_login_name 3970 DEFVAR_LISP ("user-login-name", &Vuser_login_name,
3972 /* The user's name, taken from environment variables if possible. */); 3971 doc: /* The user's name, taken from environment variables if possible. */);
3973 3972
3974 DEFVAR_LISP ("user-real-login-name", &Vuser_real_login_name 3973 DEFVAR_LISP ("user-real-login-name", &Vuser_real_login_name,
3975 /* The user's name, based upon the real uid only. */); 3974 doc: /* The user's name, based upon the real uid only. */);
3976 3975
3977 defsubr (&Spropertize); 3976 defsubr (&Spropertize);
3978 defsubr (&Schar_equal); 3977 defsubr (&Schar_equal);
diff --git a/src/term.c b/src/term.c
index 1ef1f2da929..65d0c8cedac 100644
--- a/src/term.c
+++ b/src/term.c
@@ -25,9 +25,9 @@ Boston, MA 02111-1307, USA. */
25#include <stdio.h> 25#include <stdio.h>
26#include <ctype.h> 26#include <ctype.h>
27#include <string.h> 27#include <string.h>
28
28#include "termchar.h" 29#include "termchar.h"
29#include "termopts.h" 30#include "termopts.h"
30#define DOC_STRINGS_IN_COMMENTS
31#include "lisp.h" 31#include "lisp.h"
32#include "charset.h" 32#include "charset.h"
33#include "coding.h" 33#include "coding.h"
@@ -2176,8 +2176,8 @@ turn_off_face (f, face_id)
2176 2176
2177DEFUN ("tty-display-color-p", Ftty_display_color_p, Stty_display_color_p, 2177DEFUN ("tty-display-color-p", Ftty_display_color_p, Stty_display_color_p,
2178 0, 1, 0, 2178 0, 1, 0,
2179 /* Return non-nil if TTY can display colors on FRAME. */ 2179 doc: /* Return non-nil if TTY can display colors on FRAME. */)
2180 (frame)) 2180 (frame)
2181 Lisp_Object frame; 2181 Lisp_Object frame;
2182{ 2182{
2183 return TN_max_colors > 0 ? Qt : Qnil; 2183 return TN_max_colors > 0 ? Qt : Qnil;
@@ -2608,8 +2608,8 @@ fatal (str, arg1, arg2)
2608void 2608void
2609syms_of_term () 2609syms_of_term ()
2610{ 2610{
2611 DEFVAR_BOOL ("system-uses-terminfo", &system_uses_terminfo 2611 DEFVAR_BOOL ("system-uses-terminfo", &system_uses_terminfo,
2612 /* Non-nil means the system uses terminfo rather than termcap. 2612 doc: /* Non-nil means the system uses terminfo rather than termcap.
2613This variable can be used by terminal emulator packages. */); 2613This variable can be used by terminal emulator packages. */);
2614#ifdef TERMINFO 2614#ifdef TERMINFO
2615 system_uses_terminfo = 1; 2615 system_uses_terminfo = 1;
@@ -2617,8 +2617,8 @@ This variable can be used by terminal emulator packages. */);
2617 system_uses_terminfo = 0; 2617 system_uses_terminfo = 0;
2618#endif 2618#endif
2619 2619
2620 DEFVAR_LISP ("ring-bell-function", &Vring_bell_function 2620 DEFVAR_LISP ("ring-bell-function", &Vring_bell_function,
2621 /* Non-nil means call this function to ring the bell. 2621 doc: /* Non-nil means call this function to ring the bell.
2622The function should accept no arguments. */); 2622The function should accept no arguments. */);
2623 Vring_bell_function = Qnil; 2623 Vring_bell_function = Qnil;
2624 2624
diff --git a/src/xdisp.c b/src/xdisp.c
index 08a378e689d..d967ac8d438 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -169,7 +169,7 @@ Boston, MA 02111-1307, USA. */
169 169
170#include <config.h> 170#include <config.h>
171#include <stdio.h> 171#include <stdio.h>
172#define DOC_STRINGS_IN_COMMENTS 172
173#include "lisp.h" 173#include "lisp.h"
174#include "keyboard.h" 174#include "keyboard.h"
175#include "frame.h" 175#include "frame.h"
@@ -7792,8 +7792,8 @@ tool_bar_lines_needed (f)
7792 7792
7793DEFUN ("tool-bar-lines-needed", Ftool_bar_lines_needed, Stool_bar_lines_needed, 7793DEFUN ("tool-bar-lines-needed", Ftool_bar_lines_needed, Stool_bar_lines_needed,
7794 0, 1, 0, 7794 0, 1, 0,
7795 /* Return the number of lines occupied by the tool bar of FRAME. */ 7795 doc: /* Return the number of lines occupied by the tool bar of FRAME. */)
7796 (frame)) 7796 (frame)
7797 Lisp_Object frame; 7797 Lisp_Object frame;
7798{ 7798{
7799 struct frame *f; 7799 struct frame *f;
@@ -12161,11 +12161,11 @@ dump_glyph_row (row, vpos, glyphs)
12161 12161
12162DEFUN ("dump-glyph-matrix", Fdump_glyph_matrix, 12162DEFUN ("dump-glyph-matrix", Fdump_glyph_matrix,
12163 Sdump_glyph_matrix, 0, 1, "p", 12163 Sdump_glyph_matrix, 0, 1, "p",
12164 /* Dump the current matrix of the selected window to stderr. 12164 doc: /* Dump the current matrix of the selected window to stderr.
12165Shows contents of glyph row structures. With non-nil 12165Shows contents of glyph row structures. With non-nil
12166parameter GLYPHS, dump glyphs as well. If GLYPHS is 1 show 12166parameter GLYPHS, dump glyphs as well. If GLYPHS is 1 show
12167glyphs in short form, otherwise show glyphs in long form. */ 12167glyphs in short form, otherwise show glyphs in long form. */)
12168 (glyphs)) 12168 (glyphs)
12169 Lisp_Object glyphs; 12169 Lisp_Object glyphs;
12170{ 12170{
12171 struct window *w = XWINDOW (selected_window); 12171 struct window *w = XWINDOW (selected_window);
@@ -12183,11 +12183,11 @@ glyphs in short form, otherwise show glyphs in long form. */
12183 12183
12184 12184
12185DEFUN ("dump-glyph-row", Fdump_glyph_row, Sdump_glyph_row, 1, 2, "", 12185DEFUN ("dump-glyph-row", Fdump_glyph_row, Sdump_glyph_row, 1, 2, "",
12186 /* Dump glyph row ROW to stderr. 12186 doc: /* Dump glyph row ROW to stderr.
12187GLYPH 0 means don't dump glyphs. 12187GLYPH 0 means don't dump glyphs.
12188GLYPH 1 means dump glyphs in short form. 12188GLYPH 1 means dump glyphs in short form.
12189GLYPH > 1 or omitted means dump glyphs in long form. */ 12189GLYPH > 1 or omitted means dump glyphs in long form. */)
12190 (row, glyphs)) 12190 (row, glyphs)
12191 Lisp_Object row, glyphs; 12191 Lisp_Object row, glyphs;
12192{ 12192{
12193 struct glyph_matrix *matrix; 12193 struct glyph_matrix *matrix;
@@ -12205,11 +12205,11 @@ GLYPH > 1 or omitted means dump glyphs in long form. */
12205 12205
12206 12206
12207DEFUN ("dump-tool-bar-row", Fdump_tool_bar_row, Sdump_tool_bar_row, 1, 2, "", 12207DEFUN ("dump-tool-bar-row", Fdump_tool_bar_row, Sdump_tool_bar_row, 1, 2, "",
12208 /* Dump glyph row ROW of the tool-bar of the current frame to stderr. 12208 doc: /* Dump glyph row ROW of the tool-bar of the current frame to stderr.
12209GLYPH 0 means don't dump glyphs. 12209GLYPH 0 means don't dump glyphs.
12210GLYPH 1 means dump glyphs in short form. 12210GLYPH 1 means dump glyphs in short form.
12211GLYPH > 1 or omitted means dump glyphs in long form. */ 12211GLYPH > 1 or omitted means dump glyphs in long form. */)
12212 (row, glyphs)) 12212 (row, glyphs)
12213 Lisp_Object row, glyphs; 12213 Lisp_Object row, glyphs;
12214{ 12214{
12215 struct frame *sf = SELECTED_FRAME (); 12215 struct frame *sf = SELECTED_FRAME ();
@@ -12226,9 +12226,9 @@ GLYPH > 1 or omitted means dump glyphs in long form. */
12226 12226
12227 12227
12228DEFUN ("trace-redisplay", Ftrace_redisplay, Strace_redisplay, 0, 1, "P", 12228DEFUN ("trace-redisplay", Ftrace_redisplay, Strace_redisplay, 0, 1, "P",
12229 /* Toggle tracing of redisplay. 12229 doc: /* Toggle tracing of redisplay.
12230With ARG, turn tracing on if and only if ARG is positive. */ 12230With ARG, turn tracing on if and only if ARG is positive. */)
12231 (arg)) 12231 (arg)
12232 Lisp_Object arg; 12232 Lisp_Object arg;
12233{ 12233{
12234 if (NILP (arg)) 12234 if (NILP (arg))
@@ -12244,8 +12244,8 @@ With ARG, turn tracing on if and only if ARG is positive. */
12244 12244
12245 12245
12246DEFUN ("trace-to-stderr", Ftrace_to_stderr, Strace_to_stderr, 1, MANY, "", 12246DEFUN ("trace-to-stderr", Ftrace_to_stderr, Strace_to_stderr, 1, MANY, "",
12247 /* Like `format', but print result to stderr. */ 12247 doc: /* Like `format', but print result to stderr. */)
12248 (nargs, args)) 12248 (nargs, args)
12249 int nargs; 12249 int nargs;
12250 Lisp_Object *args; 12250 Lisp_Object *args;
12251{ 12251{
@@ -14662,97 +14662,97 @@ syms_of_xdisp ()
14662 Vmessages_buffer_name = build_string ("*Messages*"); 14662 Vmessages_buffer_name = build_string ("*Messages*");
14663 staticpro (&Vmessages_buffer_name); 14663 staticpro (&Vmessages_buffer_name);
14664 14664
14665 DEFVAR_LISP ("show-trailing-whitespace", &Vshow_trailing_whitespace 14665 DEFVAR_LISP ("show-trailing-whitespace", &Vshow_trailing_whitespace,
14666 /* Non-nil means highlight trailing whitespace. 14666 doc: /* Non-nil means highlight trailing whitespace.
14667The face used for trailing whitespace is `trailing-whitespace'. */); 14667The face used for trailing whitespace is `trailing-whitespace'. */);
14668 Vshow_trailing_whitespace = Qnil; 14668 Vshow_trailing_whitespace = Qnil;
14669 14669
14670 DEFVAR_LISP ("inhibit-redisplay", &Vinhibit_redisplay 14670 DEFVAR_LISP ("inhibit-redisplay", &Vinhibit_redisplay,
14671 /* Non-nil means don't actually do any redisplay. 14671 doc: /* Non-nil means don't actually do any redisplay.
14672This is used for internal purposes. */); 14672This is used for internal purposes. */);
14673 Vinhibit_redisplay = Qnil; 14673 Vinhibit_redisplay = Qnil;
14674 14674
14675 DEFVAR_LISP ("global-mode-string", &Vglobal_mode_string 14675 DEFVAR_LISP ("global-mode-string", &Vglobal_mode_string,
14676 /* String (or mode line construct) included (normally) in `mode-line-format'. */); 14676 doc: /* String (or mode line construct) included (normally) in `mode-line-format'. */);
14677 Vglobal_mode_string = Qnil; 14677 Vglobal_mode_string = Qnil;
14678 14678
14679 DEFVAR_LISP ("overlay-arrow-position", &Voverlay_arrow_position 14679 DEFVAR_LISP ("overlay-arrow-position", &Voverlay_arrow_position,
14680 /* Marker for where to display an arrow on top of the buffer text. 14680 doc: /* Marker for where to display an arrow on top of the buffer text.
14681This must be the beginning of a line in order to work. 14681This must be the beginning of a line in order to work.
14682See also `overlay-arrow-string'. */); 14682See also `overlay-arrow-string'. */);
14683 Voverlay_arrow_position = Qnil; 14683 Voverlay_arrow_position = Qnil;
14684 14684
14685 DEFVAR_LISP ("overlay-arrow-string", &Voverlay_arrow_string 14685 DEFVAR_LISP ("overlay-arrow-string", &Voverlay_arrow_string,
14686 /* String to display as an arrow. See also `overlay-arrow-position'. */); 14686 doc: /* String to display as an arrow. See also `overlay-arrow-position'. */);
14687 Voverlay_arrow_string = Qnil; 14687 Voverlay_arrow_string = Qnil;
14688 14688
14689 DEFVAR_INT ("scroll-step", &scroll_step 14689 DEFVAR_INT ("scroll-step", &scroll_step,
14690 /* *The number of lines to try scrolling a window by when point moves out. 14690 doc: /* *The number of lines to try scrolling a window by when point moves out.
14691If that fails to bring point back on frame, point is centered instead. 14691If that fails to bring point back on frame, point is centered instead.
14692If this is zero, point is always centered after it moves off frame. 14692If this is zero, point is always centered after it moves off frame.
14693If you want scrolling to always be a line at a time, you should set 14693If you want scrolling to always be a line at a time, you should set
14694`scroll-conservatively' to a large value rather than set this to 1. */); 14694`scroll-conservatively' to a large value rather than set this to 1. */);
14695 14695
14696 DEFVAR_INT ("scroll-conservatively", &scroll_conservatively 14696 DEFVAR_INT ("scroll-conservatively", &scroll_conservatively,
14697 /* *Scroll up to this many lines, to bring point back on screen. 14697 doc: /* *Scroll up to this many lines, to bring point back on screen.
14698A value of zero means to scroll the text to center point vertically 14698A value of zero means to scroll the text to center point vertically
14699in the window. */); 14699in the window. */);
14700 scroll_conservatively = 0; 14700 scroll_conservatively = 0;
14701 14701
14702 DEFVAR_INT ("scroll-margin", &scroll_margin 14702 DEFVAR_INT ("scroll-margin", &scroll_margin,
14703 /* *Number of lines of margin at the top and bottom of a window. 14703 doc: /* *Number of lines of margin at the top and bottom of a window.
14704Recenter the window whenever point gets within this many lines 14704Recenter the window whenever point gets within this many lines
14705of the top or bottom of the window. */); 14705of the top or bottom of the window. */);
14706 scroll_margin = 0; 14706 scroll_margin = 0;
14707 14707
14708#if GLYPH_DEBUG 14708#if GLYPH_DEBUG
14709 DEFVAR_INT ("debug-end-pos", &debug_end_pos /* Don't ask. */); 14709 DEFVAR_INT ("debug-end-pos", &debug_end_pos, doc: /* Don't ask. */);
14710#endif 14710#endif
14711 14711
14712 DEFVAR_BOOL ("truncate-partial-width-windows", 14712 DEFVAR_BOOL ("truncate-partial-width-windows",
14713 &truncate_partial_width_windows 14713 &truncate_partial_width_windows,
14714 /* *Non-nil means truncate lines in all windows less than full frame wide. */); 14714 doc: /* *Non-nil means truncate lines in all windows less than full frame wide. */);
14715 truncate_partial_width_windows = 1; 14715 truncate_partial_width_windows = 1;
14716 14716
14717 DEFVAR_BOOL ("mode-line-inverse-video", &mode_line_inverse_video 14717 DEFVAR_BOOL ("mode-line-inverse-video", &mode_line_inverse_video,
14718 /* nil means display the mode-line/header-line/menu-bar in the default face. 14718 doc: /* nil means display the mode-line/header-line/menu-bar in the default face.
14719Any other value means to use the appropriate face, `mode-line', 14719Any other value means to use the appropriate face, `mode-line',
14720`header-line', or `menu' respectively. 14720`header-line', or `menu' respectively.
14721 14721
14722This variable is deprecated; please change the above faces instead. */); 14722This variable is deprecated; please change the above faces instead. */);
14723 mode_line_inverse_video = 1; 14723 mode_line_inverse_video = 1;
14724 14724
14725 DEFVAR_LISP ("line-number-display-limit", &Vline_number_display_limit 14725 DEFVAR_LISP ("line-number-display-limit", &Vline_number_display_limit,
14726 /* *Maximum buffer size for which line number should be displayed. 14726 doc: /* *Maximum buffer size for which line number should be displayed.
14727If the buffer is bigger than this, the line number does not appear 14727If the buffer is bigger than this, the line number does not appear
14728in the mode line. A value of nil means no limit. */); 14728in the mode line. A value of nil means no limit. */);
14729 Vline_number_display_limit = Qnil; 14729 Vline_number_display_limit = Qnil;
14730 14730
14731 DEFVAR_INT ("line-number-display-limit-width", 14731 DEFVAR_INT ("line-number-display-limit-width",
14732 &line_number_display_limit_width 14732 &line_number_display_limit_width,
14733 /* *Maximum line width (in characters) for line number display. 14733 doc: /* *Maximum line width (in characters) for line number display.
14734If the average length of the lines near point is bigger than this, then the 14734If the average length of the lines near point is bigger than this, then the
14735line number may be omitted from the mode line. */); 14735line number may be omitted from the mode line. */);
14736 line_number_display_limit_width = 200; 14736 line_number_display_limit_width = 200;
14737 14737
14738 DEFVAR_BOOL ("highlight-nonselected-windows", &highlight_nonselected_windows 14738 DEFVAR_BOOL ("highlight-nonselected-windows", &highlight_nonselected_windows,
14739 /* *Non-nil means highlight region even in nonselected windows. */); 14739 doc: /* *Non-nil means highlight region even in nonselected windows. */);
14740 highlight_nonselected_windows = 0; 14740 highlight_nonselected_windows = 0;
14741 14741
14742 DEFVAR_BOOL ("multiple-frames", &multiple_frames 14742 DEFVAR_BOOL ("multiple-frames", &multiple_frames,
14743 /* Non-nil if more than one frame is visible on this display. 14743 doc: /* Non-nil if more than one frame is visible on this display.
14744Minibuffer-only frames don't count, but iconified frames do. 14744Minibuffer-only frames don't count, but iconified frames do.
14745This variable is not guaranteed to be accurate except while processing 14745This variable is not guaranteed to be accurate except while processing
14746`frame-title-format' and `icon-title-format'. */); 14746`frame-title-format' and `icon-title-format'. */);
14747 14747
14748 DEFVAR_LISP ("frame-title-format", &Vframe_title_format 14748 DEFVAR_LISP ("frame-title-format", &Vframe_title_format,
14749 /* Template for displaying the title bar of visible frames. 14749 doc: /* Template for displaying the title bar of visible frames.
14750\(Assuming the window manager supports this feature.) 14750\(Assuming the window manager supports this feature.)
14751This variable has the same structure as `mode-line-format' (which see), 14751This variable has the same structure as `mode-line-format' (which see),
14752and is used only on frames for which no explicit name has been set 14752and is used only on frames for which no explicit name has been set
14753\(see `modify-frame-parameters'). */); 14753\(see `modify-frame-parameters'). */);
14754 DEFVAR_LISP ("icon-title-format", &Vicon_title_format 14754 DEFVAR_LISP ("icon-title-format", &Vicon_title_format,
14755 /* Template for displaying the title bar of an iconified frame. 14755 doc: /* Template for displaying the title bar of an iconified frame.
14756\(Assuming the window manager supports this feature.) 14756\(Assuming the window manager supports this feature.)
14757This variable has the same structure as `mode-line-format' (which see), 14757This variable has the same structure as `mode-line-format' (which see),
14758and is used only on frames for which no explicit name has been set 14758and is used only on frames for which no explicit name has been set
@@ -14768,52 +14768,52 @@ and is used only on frames for which no explicit name has been set
14768 Qnil)))), 14768 Qnil)))),
14769 Qnil))); 14769 Qnil)));
14770 14770
14771 DEFVAR_LISP ("message-log-max", &Vmessage_log_max 14771 DEFVAR_LISP ("message-log-max", &Vmessage_log_max,
14772 /* Maximum number of lines to keep in the message log buffer. 14772 doc: /* Maximum number of lines to keep in the message log buffer.
14773If nil, disable message logging. If t, log messages but don't truncate 14773If nil, disable message logging. If t, log messages but don't truncate
14774the buffer when it becomes large. */); 14774the buffer when it becomes large. */);
14775 Vmessage_log_max = make_number (50); 14775 Vmessage_log_max = make_number (50);
14776 14776
14777 DEFVAR_LISP ("window-size-change-functions", &Vwindow_size_change_functions 14777 DEFVAR_LISP ("window-size-change-functions", &Vwindow_size_change_functions,
14778 /* Functions called before redisplay, if window sizes have changed. 14778 doc: /* Functions called before redisplay, if window sizes have changed.
14779The value should be a list of functions that take one argument. 14779The value should be a list of functions that take one argument.
14780Just before redisplay, for each frame, if any of its windows have changed 14780Just before redisplay, for each frame, if any of its windows have changed
14781size since the last redisplay, or have been split or deleted, 14781size since the last redisplay, or have been split or deleted,
14782all the functions in the list are called, with the frame as argument. */); 14782all the functions in the list are called, with the frame as argument. */);
14783 Vwindow_size_change_functions = Qnil; 14783 Vwindow_size_change_functions = Qnil;
14784 14784
14785 DEFVAR_LISP ("window-scroll-functions", &Vwindow_scroll_functions 14785 DEFVAR_LISP ("window-scroll-functions", &Vwindow_scroll_functions,
14786 /* List of Functions to call before redisplaying a window with scrolling. 14786 doc: /* List of Functions to call before redisplaying a window with scrolling.
14787Each function is called with two arguments, the window 14787Each function is called with two arguments, the window
14788and its new display-start position. Note that the value of `window-end' 14788and its new display-start position. Note that the value of `window-end'
14789is not valid when these functions are called. */); 14789is not valid when these functions are called. */);
14790 Vwindow_scroll_functions = Qnil; 14790 Vwindow_scroll_functions = Qnil;
14791 14791
14792 DEFVAR_BOOL ("auto-resize-tool-bars", &auto_resize_tool_bars_p 14792 DEFVAR_BOOL ("auto-resize-tool-bars", &auto_resize_tool_bars_p,
14793 /* *Non-nil means automatically resize tool-bars. 14793 doc: /* *Non-nil means automatically resize tool-bars.
14794This increases a tool-bar's height if not all tool-bar items are visible. 14794This increases a tool-bar's height if not all tool-bar items are visible.
14795It decreases a tool-bar's height when it would display blank lines 14795It decreases a tool-bar's height when it would display blank lines
14796otherwise. */); 14796otherwise. */);
14797 auto_resize_tool_bars_p = 1; 14797 auto_resize_tool_bars_p = 1;
14798 14798
14799 DEFVAR_BOOL ("auto-raise-tool-bar-buttons", &auto_raise_tool_bar_buttons_p 14799 DEFVAR_BOOL ("auto-raise-tool-bar-buttons", &auto_raise_tool_bar_buttons_p,
14800 /* *Non-nil means raise tool-bar buttons when the mouse moves over them. */); 14800 doc: /* *Non-nil means raise tool-bar buttons when the mouse moves over them. */);
14801 auto_raise_tool_bar_buttons_p = 1; 14801 auto_raise_tool_bar_buttons_p = 1;
14802 14802
14803 DEFVAR_LISP ("tool-bar-button-margin", &Vtool_bar_button_margin 14803 DEFVAR_LISP ("tool-bar-button-margin", &Vtool_bar_button_margin,
14804 /* *Margin around tool-bar buttons in pixels. 14804 doc: /* *Margin around tool-bar buttons in pixels.
14805If an integer, use that for both horizontal and vertical margins. 14805If an integer, use that for both horizontal and vertical margins.
14806Otherwise, value should be a pair of integers `(HORZ : VERT)' with 14806Otherwise, value should be a pair of integers `(HORZ : VERT)' with
14807HORZ specifying the horizontal margin, and VERT specifying the 14807HORZ specifying the horizontal margin, and VERT specifying the
14808vertical margin. */); 14808vertical margin. */);
14809 Vtool_bar_button_margin = make_number (DEFAULT_TOOL_BAR_BUTTON_MARGIN); 14809 Vtool_bar_button_margin = make_number (DEFAULT_TOOL_BAR_BUTTON_MARGIN);
14810 14810
14811 DEFVAR_INT ("tool-bar-button-relief", &tool_bar_button_relief 14811 DEFVAR_INT ("tool-bar-button-relief", &tool_bar_button_relief,
14812 /* Relief thickness of tool-bar buttons. */); 14812 doc: /* Relief thickness of tool-bar buttons. */);
14813 tool_bar_button_relief = DEFAULT_TOOL_BAR_BUTTON_RELIEF; 14813 tool_bar_button_relief = DEFAULT_TOOL_BAR_BUTTON_RELIEF;
14814 14814
14815 DEFVAR_LISP ("fontification-functions", &Vfontification_functions 14815 DEFVAR_LISP ("fontification-functions", &Vfontification_functions,
14816 /* List of functions to call to fontify regions of text. 14816 doc: /* List of functions to call to fontify regions of text.
14817Each function is called with one argument POS. Functions must 14817Each function is called with one argument POS. Functions must
14818fontify a region starting at POS in the current buffer, and give 14818fontify a region starting at POS in the current buffer, and give
14819fontified regions the property `fontified'. */); 14819fontified regions the property `fontified'. */);
@@ -14821,22 +14821,22 @@ fontified regions the property `fontified'. */);
14821 Fmake_variable_buffer_local (Qfontification_functions); 14821 Fmake_variable_buffer_local (Qfontification_functions);
14822 14822
14823 DEFVAR_BOOL ("unibyte-display-via-language-environment", 14823 DEFVAR_BOOL ("unibyte-display-via-language-environment",
14824 &unibyte_display_via_language_environment 14824 &unibyte_display_via_language_environment,
14825 /* *Non-nil means display unibyte text according to language environment. 14825 doc: /* *Non-nil means display unibyte text according to language environment.
14826Specifically this means that unibyte non-ASCII characters 14826Specifically this means that unibyte non-ASCII characters
14827are displayed by converting them to the equivalent multibyte characters 14827are displayed by converting them to the equivalent multibyte characters
14828according to the current language environment. As a result, they are 14828according to the current language environment. As a result, they are
14829displayed according to the current fontset. */); 14829displayed according to the current fontset. */);
14830 unibyte_display_via_language_environment = 0; 14830 unibyte_display_via_language_environment = 0;
14831 14831
14832 DEFVAR_LISP ("max-mini-window-height", &Vmax_mini_window_height 14832 DEFVAR_LISP ("max-mini-window-height", &Vmax_mini_window_height,
14833 /* *Maximum height for resizing mini-windows. 14833 doc: /* *Maximum height for resizing mini-windows.
14834If a float, it specifies a fraction of the mini-window frame's height. 14834If a float, it specifies a fraction of the mini-window frame's height.
14835If an integer, it specifies a number of lines. */); 14835If an integer, it specifies a number of lines. */);
14836 Vmax_mini_window_height = make_float (0.25); 14836 Vmax_mini_window_height = make_float (0.25);
14837 14837
14838 DEFVAR_LISP ("resize-mini-windows", &Vresize_mini_windows 14838 DEFVAR_LISP ("resize-mini-windows", &Vresize_mini_windows,
14839 /* *How to resize mini-windows. 14839 doc: /* *How to resize mini-windows.
14840A value of nil means don't automatically resize mini-windows. 14840A value of nil means don't automatically resize mini-windows.
14841A value of t means resize them to fit the text displayed in them. 14841A value of t means resize them to fit the text displayed in them.
14842A value of `grow-only', the default, means let mini-windows grow 14842A value of `grow-only', the default, means let mini-windows grow
@@ -14845,36 +14845,36 @@ go back to their normal size. */);
14845 Vresize_mini_windows = Qgrow_only; 14845 Vresize_mini_windows = Qgrow_only;
14846 14846
14847 DEFVAR_BOOL ("cursor-in-non-selected-windows", 14847 DEFVAR_BOOL ("cursor-in-non-selected-windows",
14848 &cursor_in_non_selected_windows 14848 &cursor_in_non_selected_windows,
14849 /* *Non-nil means display a hollow cursor in non-selected windows. 14849 doc: /* *Non-nil means display a hollow cursor in non-selected windows.
14850Nil means don't display a cursor there. */); 14850Nil means don't display a cursor there. */);
14851 cursor_in_non_selected_windows = 1; 14851 cursor_in_non_selected_windows = 1;
14852 14852
14853 DEFVAR_BOOL ("automatic-hscrolling", &automatic_hscrolling_p 14853 DEFVAR_BOOL ("automatic-hscrolling", &automatic_hscrolling_p,
14854 /* *Non-nil means scroll the display automatically to make point visible. */); 14854 doc: /* *Non-nil means scroll the display automatically to make point visible. */);
14855 automatic_hscrolling_p = 1; 14855 automatic_hscrolling_p = 1;
14856 14856
14857 DEFVAR_LISP ("image-types", &Vimage_types 14857 DEFVAR_LISP ("image-types", &Vimage_types,
14858 /* List of supported image types. 14858 doc: /* List of supported image types.
14859Each element of the list is a symbol for a supported image type. */); 14859Each element of the list is a symbol for a supported image type. */);
14860 Vimage_types = Qnil; 14860 Vimage_types = Qnil;
14861 14861
14862 DEFVAR_BOOL ("message-truncate-lines", &message_truncate_lines 14862 DEFVAR_BOOL ("message-truncate-lines", &message_truncate_lines,
14863 /* If non-nil, messages are truncated instead of resizing the echo area. 14863 doc: /* If non-nil, messages are truncated instead of resizing the echo area.
14864Bind this around calls to `message' to let it take effect. */); 14864Bind this around calls to `message' to let it take effect. */);
14865 message_truncate_lines = 0; 14865 message_truncate_lines = 0;
14866 14866
14867 DEFVAR_LISP ("menu-bar-update-hook", &Vmenu_bar_update_hook 14867 DEFVAR_LISP ("menu-bar-update-hook", &Vmenu_bar_update_hook,
14868 /* Normal hook run for clicks on menu bar, before displaying a submenu. 14868 doc: /* Normal hook run for clicks on menu bar, before displaying a submenu.
14869Can be used to update submenus whose contents should vary. */); 14869Can be used to update submenus whose contents should vary. */);
14870 Vmenu_bar_update_hook = Qnil; 14870 Vmenu_bar_update_hook = Qnil;
14871 14871
14872 DEFVAR_BOOL ("inhibit-menubar-update", &inhibit_menubar_update 14872 DEFVAR_BOOL ("inhibit-menubar-update", &inhibit_menubar_update,
14873 /* Non-nil means don't update menu bars. Internal use only. */); 14873 doc: /* Non-nil means don't update menu bars. Internal use only. */);
14874 inhibit_menubar_update = 0; 14874 inhibit_menubar_update = 0;
14875 14875
14876 DEFVAR_BOOL ("inhibit-eval-during-redisplay", &inhibit_eval_during_redisplay 14876 DEFVAR_BOOL ("inhibit-eval-during-redisplay", &inhibit_eval_during_redisplay,
14877 /* Non-nil means don't eval Lisp during redisplay. */); 14877 doc: /* Non-nil means don't eval Lisp during redisplay. */);
14878 inhibit_eval_during_redisplay = 0; 14878 inhibit_eval_during_redisplay = 0;
14879} 14879}
14880 14880
diff --git a/src/xfaces.c b/src/xfaces.c
index c9867c4ce1f..9971541cd31 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -194,7 +194,7 @@ Boston, MA 02111-1307, USA. */
194#include <config.h> 194#include <config.h>
195#include <sys/types.h> 195#include <sys/types.h>
196#include <sys/stat.h> 196#include <sys/stat.h>
197#define DOC_STRINGS_IN_COMMENTS 197
198#include "lisp.h" 198#include "lisp.h"
199#include "charset.h" 199#include "charset.h"
200#include "keyboard.h" 200#include "keyboard.h"
@@ -669,8 +669,8 @@ unregister_colors (pixels, n)
669 669
670 670
671DEFUN ("dump-colors", Fdump_colors, Sdump_colors, 0, 0, 0, 671DEFUN ("dump-colors", Fdump_colors, Sdump_colors, 0, 0, 0,
672 /* Dump currently allocated colors to stderr. */ 672 doc: /* Dump currently allocated colors to stderr. */)
673 ()) 673 ()
674{ 674{
675 int i, n; 675 int i, n;
676 676
@@ -1017,9 +1017,9 @@ clear_face_cache (clear_fonts_p)
1017 1017
1018 1018
1019DEFUN ("clear-face-cache", Fclear_face_cache, Sclear_face_cache, 0, 1, 0, 1019DEFUN ("clear-face-cache", Fclear_face_cache, Sclear_face_cache, 0, 1, 0,
1020 /* Clear face caches on all frames. 1020 doc: /* Clear face caches on all frames.
1021Optional THOROUGHLY non-nil means try to free unused fonts, too. */ 1021Optional THOROUGHLY non-nil means try to free unused fonts, too. */)
1022 (thoroughly)) 1022 (thoroughly)
1023 Lisp_Object thoroughly; 1023 Lisp_Object thoroughly;
1024{ 1024{
1025 clear_face_cache (!NILP (thoroughly)); 1025 clear_face_cache (!NILP (thoroughly));
@@ -1098,13 +1098,13 @@ clear_font_table (dpyinfo)
1098#ifdef HAVE_WINDOW_SYSTEM 1098#ifdef HAVE_WINDOW_SYSTEM
1099 1099
1100DEFUN ("bitmap-spec-p", Fbitmap_spec_p, Sbitmap_spec_p, 1, 1, 0, 1100DEFUN ("bitmap-spec-p", Fbitmap_spec_p, Sbitmap_spec_p, 1, 1, 0,
1101 /* Value is non-nil if OBJECT is a valid bitmap specification. 1101 doc: /* Value is non-nil if OBJECT is a valid bitmap specification.
1102A bitmap specification is either a string, a file name, or a list 1102A bitmap specification is either a string, a file name, or a list
1103\(WIDTH HEIGHT DATA) where WIDTH is the pixel width of the bitmap, 1103\(WIDTH HEIGHT DATA) where WIDTH is the pixel width of the bitmap,
1104HEIGHT is its height, and DATA is a string containing the bits of 1104HEIGHT is its height, and DATA is a string containing the bits of
1105the pixmap. Bits are stored row by row, each row occupies 1105the pixmap. Bits are stored row by row, each row occupies
1106\(WIDTH + 7)/8 bytes. */ 1106\(WIDTH + 7)/8 bytes. */)
1107 (object)) 1107 (object)
1108 Lisp_Object object; 1108 Lisp_Object object;
1109{ 1109{
1110 int pixmap_p = 0; 1110 int pixmap_p = 0;
@@ -1482,10 +1482,10 @@ face_color_supported_p (f, color_name, background_p)
1482 1482
1483 1483
1484DEFUN ("color-gray-p", Fcolor_gray_p, Scolor_gray_p, 1, 2, 0, 1484DEFUN ("color-gray-p", Fcolor_gray_p, Scolor_gray_p, 1, 2, 0,
1485 /* Return non-nil if COLOR is a shade of gray (or white or black). 1485 doc: /* Return non-nil if COLOR is a shade of gray (or white or black).
1486FRAME specifies the frame and thus the display for interpreting COLOR. 1486FRAME specifies the frame and thus the display for interpreting COLOR.
1487If FRAME is nil or omitted, use the selected frame. */ 1487If FRAME is nil or omitted, use the selected frame. */)
1488 (color, frame)) 1488 (color, frame)
1489 Lisp_Object color, frame; 1489 Lisp_Object color, frame;
1490{ 1490{
1491 struct frame *f; 1491 struct frame *f;
@@ -1499,11 +1499,11 @@ If FRAME is nil or omitted, use the selected frame. */
1499 1499
1500DEFUN ("color-supported-p", Fcolor_supported_p, 1500DEFUN ("color-supported-p", Fcolor_supported_p,
1501 Scolor_supported_p, 2, 3, 0, 1501 Scolor_supported_p, 2, 3, 0,
1502 /* Return non-nil if COLOR can be displayed on FRAME. 1502 doc: /* Return non-nil if COLOR can be displayed on FRAME.
1503BACKGROUND-P non-nil means COLOR is used as a background. 1503BACKGROUND-P non-nil means COLOR is used as a background.
1504If FRAME is nil or omitted, use the selected frame. 1504If FRAME is nil or omitted, use the selected frame.
1505COLOR must be a valid color name. */ 1505COLOR must be a valid color name. */)
1506 (color, frame, background_p)) 1506 (color, frame, background_p)
1507 Lisp_Object frame, color, background_p; 1507 Lisp_Object frame, color, background_p;
1508{ 1508{
1509 struct frame *f; 1509 struct frame *f;
@@ -2692,7 +2692,7 @@ remove_duplicates (list)
2692 2692
2693 2693
2694DEFUN ("x-family-fonts", Fx_family_fonts, Sx_family_fonts, 0, 2, 0, 2694DEFUN ("x-family-fonts", Fx_family_fonts, Sx_family_fonts, 0, 2, 0,
2695 /* Return a list of available fonts of family FAMILY on FRAME. 2695 doc: /* Return a list of available fonts of family FAMILY on FRAME.
2696If FAMILY is omitted or nil, list all families. 2696If FAMILY is omitted or nil, list all families.
2697Otherwise, FAMILY must be a string, possibly containing wildcards 2697Otherwise, FAMILY must be a string, possibly containing wildcards
2698`?' and `*'. 2698`?' and `*'.
@@ -2706,8 +2706,8 @@ face attributes. FIXED-P is non-nil if the font is fixed-pitch.
2706FULL is the full name of the font, and REGISTRY-AND-ENCODING is a string 2706FULL is the full name of the font, and REGISTRY-AND-ENCODING is a string
2707giving the registry and encoding of the font. 2707giving the registry and encoding of the font.
2708The result list is sorted according to the current setting of 2708The result list is sorted according to the current setting of
2709the face font sort order. */ 2709the face font sort order. */)
2710 (family, frame)) 2710 (family, frame)
2711 Lisp_Object family, frame; 2711 Lisp_Object family, frame;
2712{ 2712{
2713 struct frame *f = check_x_frame (frame); 2713 struct frame *f = check_x_frame (frame);
@@ -2752,12 +2752,12 @@ the face font sort order. */
2752 2752
2753DEFUN ("x-font-family-list", Fx_font_family_list, Sx_font_family_list, 2753DEFUN ("x-font-family-list", Fx_font_family_list, Sx_font_family_list,
2754 0, 1, 0, 2754 0, 1, 0,
2755 /* Return a list of available font families on FRAME. 2755 doc: /* Return a list of available font families on FRAME.
2756If FRAME is omitted or nil, use the selected frame. 2756If FRAME is omitted or nil, use the selected frame.
2757Value is a list of conses (FAMILY . FIXED-P) where FAMILY 2757Value is a list of conses (FAMILY . FIXED-P) where FAMILY
2758is a font family, and FIXED-P is non-nil if fonts of that family 2758is a font family, and FIXED-P is non-nil if fonts of that family
2759are fixed-pitch. */ 2759are fixed-pitch. */)
2760 (frame)) 2760 (frame)
2761 Lisp_Object frame; 2761 Lisp_Object frame;
2762{ 2762{
2763 struct frame *f = check_x_frame (frame); 2763 struct frame *f = check_x_frame (frame);
@@ -2799,7 +2799,7 @@ are fixed-pitch. */
2799 2799
2800 2800
2801DEFUN ("x-list-fonts", Fx_list_fonts, Sx_list_fonts, 1, 5, 0, 2801DEFUN ("x-list-fonts", Fx_list_fonts, Sx_list_fonts, 1, 5, 0,
2802 /* Return a list of the names of available fonts matching PATTERN. 2802 doc: /* Return a list of the names of available fonts matching PATTERN.
2803If optional arguments FACE and FRAME are specified, return only fonts 2803If optional arguments FACE and FRAME are specified, return only fonts
2804the same size as FACE on FRAME. 2804the same size as FACE on FRAME.
2805PATTERN is a string, perhaps with wildcard characters; 2805PATTERN is a string, perhaps with wildcard characters;
@@ -2817,8 +2817,8 @@ The optional fourth argument MAXIMUM sets a limit on how many
2817fonts to match. The first MAXIMUM fonts are reported. 2817fonts to match. The first MAXIMUM fonts are reported.
2818The optional fifth argument WIDTH, if specified, is a number of columns 2818The optional fifth argument WIDTH, if specified, is a number of columns
2819occupied by a character of a font. In that case, return only fonts 2819occupied by a character of a font. In that case, return only fonts
2820the WIDTH times as wide as FACE on FRAME. */ 2820the WIDTH times as wide as FACE on FRAME. */)
2821 (pattern, face, frame, maximum, width)) 2821 (pattern, face, frame, maximum, width)
2822 Lisp_Object pattern, face, frame, maximum, width; 2822 Lisp_Object pattern, face, frame, maximum, width;
2823{ 2823{
2824 struct frame *f; 2824 struct frame *f;
@@ -3624,12 +3624,12 @@ merge_face_vector_with_property (f, to, prop)
3624 3624
3625DEFUN ("internal-make-lisp-face", Finternal_make_lisp_face, 3625DEFUN ("internal-make-lisp-face", Finternal_make_lisp_face,
3626 Sinternal_make_lisp_face, 1, 2, 0, 3626 Sinternal_make_lisp_face, 1, 2, 0,
3627 /* Make FACE, a symbol, a Lisp face with all attributes nil. 3627 doc: /* Make FACE, a symbol, a Lisp face with all attributes nil.
3628If FACE was not known as a face before, create a new one. 3628If FACE was not known as a face before, create a new one.
3629If optional argument FRAME is specified, make a frame-local face 3629If optional argument FRAME is specified, make a frame-local face
3630for that frame. Otherwise operate on the global face definition. 3630for that frame. Otherwise operate on the global face definition.
3631Value is a vector of face attributes. */ 3631Value is a vector of face attributes. */)
3632 (face, frame)) 3632 (face, frame)
3633 Lisp_Object face, frame; 3633 Lisp_Object face, frame;
3634{ 3634{
3635 Lisp_Object global_lface, lface; 3635 Lisp_Object global_lface, lface;
@@ -3702,11 +3702,11 @@ Value is a vector of face attributes. */
3702 3702
3703DEFUN ("internal-lisp-face-p", Finternal_lisp_face_p, 3703DEFUN ("internal-lisp-face-p", Finternal_lisp_face_p,
3704 Sinternal_lisp_face_p, 1, 2, 0, 3704 Sinternal_lisp_face_p, 1, 2, 0,
3705 /* Return non-nil if FACE names a face. 3705 doc: /* Return non-nil if FACE names a face.
3706If optional second parameter FRAME is non-nil, check for the 3706If optional second parameter FRAME is non-nil, check for the
3707existence of a frame-local face with name FACE on that frame. 3707existence of a frame-local face with name FACE on that frame.
3708Otherwise check for the existence of a global face. */ 3708Otherwise check for the existence of a global face. */)
3709 (face, frame)) 3709 (face, frame)
3710 Lisp_Object face, frame; 3710 Lisp_Object face, frame;
3711{ 3711{
3712 Lisp_Object lface; 3712 Lisp_Object lface;
@@ -3725,14 +3725,14 @@ Otherwise check for the existence of a global face. */
3725 3725
3726DEFUN ("internal-copy-lisp-face", Finternal_copy_lisp_face, 3726DEFUN ("internal-copy-lisp-face", Finternal_copy_lisp_face,
3727 Sinternal_copy_lisp_face, 4, 4, 0, 3727 Sinternal_copy_lisp_face, 4, 4, 0,
3728 /* Copy face FROM to TO. 3728 doc: /* Copy face FROM to TO.
3729If FRAME it t, copy the global face definition of FROM to the 3729If FRAME it t, copy the global face definition of FROM to the
3730global face definition of TO. Otherwise, copy the frame-local 3730global face definition of TO. Otherwise, copy the frame-local
3731definition of FROM on FRAME to the frame-local definition of TO 3731definition of FROM on FRAME to the frame-local definition of TO
3732on NEW-FRAME, or FRAME if NEW-FRAME is nil. 3732on NEW-FRAME, or FRAME if NEW-FRAME is nil.
3733 3733
3734Value is TO. */ 3734Value is TO. */)
3735 (from, to, frame, new_frame)) 3735 (from, to, frame, new_frame)
3736 Lisp_Object from, to, frame, new_frame; 3736 Lisp_Object from, to, frame, new_frame;
3737{ 3737{
3738 Lisp_Object lface, copy; 3738 Lisp_Object lface, copy;
@@ -3767,13 +3767,13 @@ Value is TO. */
3767 3767
3768DEFUN ("internal-set-lisp-face-attribute", Finternal_set_lisp_face_attribute, 3768DEFUN ("internal-set-lisp-face-attribute", Finternal_set_lisp_face_attribute,
3769 Sinternal_set_lisp_face_attribute, 3, 4, 0, 3769 Sinternal_set_lisp_face_attribute, 3, 4, 0,
3770 /* Set attribute ATTR of FACE to VALUE. 3770 doc: /* Set attribute ATTR of FACE to VALUE.
3771FRAME being a frame means change the face on that frame. 3771FRAME being a frame means change the face on that frame.
3772FRAME nil means change the face of the selected frame. 3772FRAME nil means change the face of the selected frame.
3773FRAME t means change the default for new frames. 3773FRAME t means change the default for new frames.
3774FRAME 0 means change the face on all frames, and change the default 3774FRAME 0 means change the face on all frames, and change the default
3775 for new frames. */ 3775 for new frames. */)
3776 (face, attr, value, frame)) 3776 (face, attr, value, frame)
3777 Lisp_Object face, attr, value, frame; 3777 Lisp_Object face, attr, value, frame;
3778{ 3778{
3779 Lisp_Object lface; 3779 Lisp_Object lface;
@@ -4311,9 +4311,8 @@ update_face_from_frame_parameter (f, param, new_value)
4311 doesn't take a frame argument. */ 4311 doesn't take a frame argument. */
4312 4312
4313DEFUN ("internal-face-x-get-resource", Finternal_face_x_get_resource, 4313DEFUN ("internal-face-x-get-resource", Finternal_face_x_get_resource,
4314 Sinternal_face_x_get_resource, 3, 3, 0, 4314 Sinternal_face_x_get_resource, 3, 3, 0, doc: /* */)
4315 /* */ 4315 (resource, class, frame)
4316 (resource, class, frame))
4317 Lisp_Object resource, class, frame; 4316 Lisp_Object resource, class, frame;
4318{ 4317{
4319 Lisp_Object value = Qnil; 4318 Lisp_Object value = Qnil;
@@ -4364,9 +4363,8 @@ face_boolean_x_resource_value (value, signal_p)
4364DEFUN ("internal-set-lisp-face-attribute-from-resource", 4363DEFUN ("internal-set-lisp-face-attribute-from-resource",
4365 Finternal_set_lisp_face_attribute_from_resource, 4364 Finternal_set_lisp_face_attribute_from_resource,
4366 Sinternal_set_lisp_face_attribute_from_resource, 4365 Sinternal_set_lisp_face_attribute_from_resource,
4367 3, 4, 0, 4366 3, 4, 0, doc: /* */)
4368 /* */ 4367 (face, attr, value, frame)
4369 (face, attr, value, frame))
4370 Lisp_Object face, attr, value, frame; 4368 Lisp_Object face, attr, value, frame;
4371{ 4369{
4372 CHECK_SYMBOL (face, 0); 4370 CHECK_SYMBOL (face, 0);
@@ -4495,13 +4493,13 @@ x_update_menu_appearance (f)
4495DEFUN ("internal-get-lisp-face-attribute", Finternal_get_lisp_face_attribute, 4493DEFUN ("internal-get-lisp-face-attribute", Finternal_get_lisp_face_attribute,
4496 Sinternal_get_lisp_face_attribute, 4494 Sinternal_get_lisp_face_attribute,
4497 2, 3, 0, 4495 2, 3, 0,
4498 /* Return face attribute KEYWORD of face SYMBOL. 4496 doc: /* Return face attribute KEYWORD of face SYMBOL.
4499If SYMBOL does not name a valid Lisp face or KEYWORD isn't a valid 4497If SYMBOL does not name a valid Lisp face or KEYWORD isn't a valid
4500face attribute name, signal an error. 4498face attribute name, signal an error.
4501If the optional argument FRAME is given, report on face FACE in that 4499If the optional argument FRAME is given, report on face FACE in that
4502frame. If FRAME is t, report on the defaults for face FACE (for new 4500frame. If FRAME is t, report on the defaults for face FACE (for new
4503frames). If FRAME is omitted or nil, use the selected frame. */ 4501frames). If FRAME is omitted or nil, use the selected frame. */)
4504 (symbol, keyword, frame)) 4502 (symbol, keyword, frame)
4505 Lisp_Object symbol, keyword, frame; 4503 Lisp_Object symbol, keyword, frame;
4506{ 4504{
4507 Lisp_Object lface, value = Qnil; 4505 Lisp_Object lface, value = Qnil;
@@ -4560,9 +4558,9 @@ frames). If FRAME is omitted or nil, use the selected frame. */
4560DEFUN ("internal-lisp-face-attribute-values", 4558DEFUN ("internal-lisp-face-attribute-values",
4561 Finternal_lisp_face_attribute_values, 4559 Finternal_lisp_face_attribute_values,
4562 Sinternal_lisp_face_attribute_values, 1, 1, 0, 4560 Sinternal_lisp_face_attribute_values, 1, 1, 0,
4563 /* Return a list of valid discrete values for face attribute ATTR. 4561 doc: /* Return a list of valid discrete values for face attribute ATTR.
4564Value is nil if ATTR doesn't have a discrete set of valid values. */ 4562Value is nil if ATTR doesn't have a discrete set of valid values. */)
4565 (attr)) 4563 (attr)
4566 Lisp_Object attr; 4564 Lisp_Object attr;
4567{ 4565{
4568 Lisp_Object result = Qnil; 4566 Lisp_Object result = Qnil;
@@ -4612,9 +4610,9 @@ Value is nil if ATTR doesn't have a discrete set of valid values. */
4612 4610
4613DEFUN ("internal-merge-in-global-face", Finternal_merge_in_global_face, 4611DEFUN ("internal-merge-in-global-face", Finternal_merge_in_global_face,
4614 Sinternal_merge_in_global_face, 2, 2, 0, 4612 Sinternal_merge_in_global_face, 2, 2, 0,
4615 /* Add attributes from frame-default definition of FACE to FACE on FRAME. 4613 doc: /* Add attributes from frame-default definition of FACE to FACE on FRAME.
4616Default face attributes override any local face attributes. */ 4614Default face attributes override any local face attributes. */)
4617 (face, frame)) 4615 (face, frame)
4618 Lisp_Object face, frame; 4616 Lisp_Object face, frame;
4619{ 4617{
4620 int i; 4618 int i;
@@ -4647,13 +4645,13 @@ Default face attributes override any local face attributes. */
4647 done in fontset.el. */ 4645 done in fontset.el. */
4648 4646
4649DEFUN ("face-font", Fface_font, Sface_font, 1, 2, 0, 4647DEFUN ("face-font", Fface_font, Sface_font, 1, 2, 0,
4650 /* Return the font name of face FACE, or nil if it is unspecified. 4648 doc: /* Return the font name of face FACE, or nil if it is unspecified.
4651If the optional argument FRAME is given, report on face FACE in that frame. 4649If the optional argument FRAME is given, report on face FACE in that frame.
4652If FRAME is t, report on the defaults for face FACE (for new frames). 4650If FRAME is t, report on the defaults for face FACE (for new frames).
4653 The font default for a face is either nil, or a list 4651 The font default for a face is either nil, or a list
4654 of the form (bold), (italic) or (bold italic). 4652 of the form (bold), (italic) or (bold italic).
4655If FRAME is omitted or nil, use the selected frame. */ 4653If FRAME is omitted or nil, use the selected frame. */)
4656 (face, frame)) 4654 (face, frame)
4657 Lisp_Object face, frame; 4655 Lisp_Object face, frame;
4658{ 4656{
4659 if (EQ (frame, Qt)) 4657 if (EQ (frame, Qt))
@@ -4731,11 +4729,11 @@ lface_equal_p (v1, v2)
4731 4729
4732DEFUN ("internal-lisp-face-equal-p", Finternal_lisp_face_equal_p, 4730DEFUN ("internal-lisp-face-equal-p", Finternal_lisp_face_equal_p,
4733 Sinternal_lisp_face_equal_p, 2, 3, 0, 4731 Sinternal_lisp_face_equal_p, 2, 3, 0,
4734 /* True if FACE1 and FACE2 are equal. 4732 doc: /* True if FACE1 and FACE2 are equal.
4735If the optional argument FRAME is given, report on face FACE in that frame. 4733If the optional argument FRAME is given, report on face FACE in that frame.
4736If FRAME is t, report on the defaults for face FACE (for new frames). 4734If FRAME is t, report on the defaults for face FACE (for new frames).
4737If FRAME is omitted or nil, use the selected frame. */ 4735If FRAME is omitted or nil, use the selected frame. */)
4738 (face1, face2, frame)) 4736 (face1, face2, frame)
4739 Lisp_Object face1, face2, frame; 4737 Lisp_Object face1, face2, frame;
4740{ 4738{
4741 int equal_p; 4739 int equal_p;
@@ -4761,11 +4759,11 @@ If FRAME is omitted or nil, use the selected frame. */
4761 4759
4762DEFUN ("internal-lisp-face-empty-p", Finternal_lisp_face_empty_p, 4760DEFUN ("internal-lisp-face-empty-p", Finternal_lisp_face_empty_p,
4763 Sinternal_lisp_face_empty_p, 1, 2, 0, 4761 Sinternal_lisp_face_empty_p, 1, 2, 0,
4764 /* True if FACE has no attribute specified. 4762 doc: /* True if FACE has no attribute specified.
4765If the optional argument FRAME is given, report on face FACE in that frame. 4763If the optional argument FRAME is given, report on face FACE in that frame.
4766If FRAME is t, report on the defaults for face FACE (for new frames). 4764If FRAME is t, report on the defaults for face FACE (for new frames).
4767If FRAME is omitted or nil, use the selected frame. */ 4765If FRAME is omitted or nil, use the selected frame. */)
4768 (face, frame)) 4766 (face, frame)
4769 Lisp_Object face, frame; 4767 Lisp_Object face, frame;
4770{ 4768{
4771 struct frame *f; 4769 struct frame *f;
@@ -4792,9 +4790,9 @@ If FRAME is omitted or nil, use the selected frame. */
4792 4790
4793DEFUN ("frame-face-alist", Fframe_face_alist, Sframe_face_alist, 4791DEFUN ("frame-face-alist", Fframe_face_alist, Sframe_face_alist,
4794 0, 1, 0, 4792 0, 1, 0,
4795 /* Return an alist of frame-local faces defined on FRAME. 4793 doc: /* Return an alist of frame-local faces defined on FRAME.
4796For internal use only. */ 4794For internal use only. */)
4797 (frame)) 4795 (frame)
4798 Lisp_Object frame; 4796 Lisp_Object frame;
4799{ 4797{
4800 struct frame *f = frame_or_selected_frame (frame, 0); 4798 struct frame *f = frame_or_selected_frame (frame, 0);
@@ -5471,14 +5469,14 @@ lookup_derived_face (f, symbol, c, face_id)
5471DEFUN ("internal-set-font-selection-order", 5469DEFUN ("internal-set-font-selection-order",
5472 Finternal_set_font_selection_order, 5470 Finternal_set_font_selection_order,
5473 Sinternal_set_font_selection_order, 1, 1, 0, 5471 Sinternal_set_font_selection_order, 1, 1, 0,
5474 /* Set font selection order for face font selection to ORDER. 5472 doc: /* Set font selection order for face font selection to ORDER.
5475ORDER must be a list of length 4 containing the symbols `:width', 5473ORDER must be a list of length 4 containing the symbols `:width',
5476`:height', `:weight', and `:slant'. Face attributes appearing 5474`:height', `:weight', and `:slant'. Face attributes appearing
5477first in ORDER are matched first, e.g. if `:height' appears before 5475first in ORDER are matched first, e.g. if `:height' appears before
5478`:weight' in ORDER, font selection first tries to find a font with 5476`:weight' in ORDER, font selection first tries to find a font with
5479a suitable height, and then tries to match the font weight. 5477a suitable height, and then tries to match the font weight.
5480Value is ORDER. */ 5478Value is ORDER. */)
5481 (order)) 5479 (order)
5482 Lisp_Object order; 5480 Lisp_Object order;
5483{ 5481{
5484 Lisp_Object list; 5482 Lisp_Object list;
@@ -5531,11 +5529,11 @@ Value is ORDER. */
5531DEFUN ("internal-set-alternative-font-family-alist", 5529DEFUN ("internal-set-alternative-font-family-alist",
5532 Finternal_set_alternative_font_family_alist, 5530 Finternal_set_alternative_font_family_alist,
5533 Sinternal_set_alternative_font_family_alist, 1, 1, 0, 5531 Sinternal_set_alternative_font_family_alist, 1, 1, 0,
5534 /* Define alternative font families to try in face font selection. 5532 doc: /* Define alternative font families to try in face font selection.
5535ALIST is an alist of (FAMILY ALTERNATIVE1 ALTERNATIVE2 ...) entries. 5533ALIST is an alist of (FAMILY ALTERNATIVE1 ALTERNATIVE2 ...) entries.
5536Each ALTERNATIVE is tried in order if no fonts of font family FAMILY can 5534Each ALTERNATIVE is tried in order if no fonts of font family FAMILY can
5537be found. Value is ALIST. */ 5535be found. Value is ALIST. */)
5538 (alist)) 5536 (alist)
5539 Lisp_Object alist; 5537 Lisp_Object alist;
5540{ 5538{
5541 CHECK_LIST (alist, 0); 5539 CHECK_LIST (alist, 0);
@@ -5548,11 +5546,11 @@ be found. Value is ALIST. */
5548DEFUN ("internal-set-alternative-font-registry-alist", 5546DEFUN ("internal-set-alternative-font-registry-alist",
5549 Finternal_set_alternative_font_registry_alist, 5547 Finternal_set_alternative_font_registry_alist,
5550 Sinternal_set_alternative_font_registry_alist, 1, 1, 0, 5548 Sinternal_set_alternative_font_registry_alist, 1, 1, 0,
5551 /* Define alternative font registries to try in face font selection. 5549 doc: /* Define alternative font registries to try in face font selection.
5552ALIST is an alist of (REGISTRY ALTERNATIVE1 ALTERNATIVE2 ...) entries. 5550ALIST is an alist of (REGISTRY ALTERNATIVE1 ALTERNATIVE2 ...) entries.
5553Each ALTERNATIVE is tried in order if no fonts of font registry REGISTRY can 5551Each ALTERNATIVE is tried in order if no fonts of font registry REGISTRY can
5554be found. Value is ALIST. */ 5552be found. Value is ALIST. */)
5555 (alist)) 5553 (alist)
5556 Lisp_Object alist; 5554 Lisp_Object alist;
5557{ 5555{
5558 CHECK_LIST (alist, 0); 5556 CHECK_LIST (alist, 0);
@@ -6659,13 +6657,13 @@ realize_tty_face (cache, attrs, c)
6659DEFUN ("tty-suppress-bold-inverse-default-colors", 6657DEFUN ("tty-suppress-bold-inverse-default-colors",
6660 Ftty_suppress_bold_inverse_default_colors, 6658 Ftty_suppress_bold_inverse_default_colors,
6661 Stty_suppress_bold_inverse_default_colors, 1, 1, 0, 6659 Stty_suppress_bold_inverse_default_colors, 1, 1, 0,
6662 /* Suppress/allow boldness of faces with inverse default colors. 6660 doc: /* Suppress/allow boldness of faces with inverse default colors.
6663SUPPRESS non-nil means suppress it. 6661SUPPRESS non-nil means suppress it.
6664This affects bold faces on TTYs whose foreground is the default background 6662This affects bold faces on TTYs whose foreground is the default background
6665color of the display and whose background is the default foreground color. 6663color of the display and whose background is the default foreground color.
6666For such faces, the bold face attribute is ignored if this variable 6664For such faces, the bold face attribute is ignored if this variable
6667is non-nil. */ 6665is non-nil. */)
6668 (suppress)) 6666 (suppress)
6669 Lisp_Object suppress; 6667 Lisp_Object suppress;
6670{ 6668{
6671 tty_suppress_bold_inverse_default_colors_p = !NILP (suppress); 6669 tty_suppress_bold_inverse_default_colors_p = !NILP (suppress);
@@ -6981,8 +6979,8 @@ dump_realized_face (face)
6981} 6979}
6982 6980
6983 6981
6984DEFUN ("dump-face", Fdump_face, Sdump_face, 0, 1, 0, /* */ 6982DEFUN ("dump-face", Fdump_face, Sdump_face, 0, 1, 0, doc: /* */)
6985 (n)) 6983 (n)
6986 Lisp_Object n; 6984 Lisp_Object n;
6987{ 6985{
6988 if (NILP (n)) 6986 if (NILP (n))
@@ -7016,8 +7014,8 @@ DEFUN ("dump-face", Fdump_face, Sdump_face, 0, 1, 0, /* */
7016 7014
7017 7015
7018DEFUN ("show-face-resources", Fshow_face_resources, Sshow_face_resources, 7016DEFUN ("show-face-resources", Fshow_face_resources, Sshow_face_resources,
7019 0, 0, 0, /* */ 7017 0, 0, 0, doc: /* */)
7020 ()) 7018 ()
7021{ 7019{
7022 fprintf (stderr, "number of colors = %d\n", ncolors_allocated); 7020 fprintf (stderr, "number of colors = %d\n", ncolors_allocated);
7023 fprintf (stderr, "number of pixmaps = %d\n", npixmaps_allocated); 7021 fprintf (stderr, "number of pixmaps = %d\n", npixmaps_allocated);
@@ -7209,29 +7207,29 @@ syms_of_xfaces ()
7209 defsubr (&Sdump_colors); 7207 defsubr (&Sdump_colors);
7210#endif 7208#endif
7211 7209
7212 DEFVAR_LISP ("font-list-limit", &Vfont_list_limit 7210 DEFVAR_LISP ("font-list-limit", &Vfont_list_limit,
7213 /* *Limit for font matching. 7211 doc: /* *Limit for font matching.
7214If an integer > 0, font matching functions won't load more than 7212If an integer > 0, font matching functions won't load more than
7215that number of fonts when searching for a matching font. */); 7213that number of fonts when searching for a matching font. */);
7216 Vfont_list_limit = make_number (DEFAULT_FONT_LIST_LIMIT); 7214 Vfont_list_limit = make_number (DEFAULT_FONT_LIST_LIMIT);
7217 7215
7218 DEFVAR_LISP ("face-new-frame-defaults", &Vface_new_frame_defaults 7216 DEFVAR_LISP ("face-new-frame-defaults", &Vface_new_frame_defaults,
7219 /* List of global face definitions (for internal use only.) */); 7217 doc: /* List of global face definitions (for internal use only.) */);
7220 Vface_new_frame_defaults = Qnil; 7218 Vface_new_frame_defaults = Qnil;
7221 7219
7222 DEFVAR_LISP ("face-default-stipple", &Vface_default_stipple 7220 DEFVAR_LISP ("face-default-stipple", &Vface_default_stipple,
7223 /* *Default stipple pattern used on monochrome displays. 7221 doc: /* *Default stipple pattern used on monochrome displays.
7224This stipple pattern is used on monochrome displays 7222This stipple pattern is used on monochrome displays
7225instead of shades of gray for a face background color. 7223instead of shades of gray for a face background color.
7226See `set-face-stipple' for possible values for this variable. */); 7224See `set-face-stipple' for possible values for this variable. */);
7227 Vface_default_stipple = build_string ("gray3"); 7225 Vface_default_stipple = build_string ("gray3");
7228 7226
7229 DEFVAR_LISP ("tty-defined-color-alist", &Vtty_defined_color_alist 7227 DEFVAR_LISP ("tty-defined-color-alist", &Vtty_defined_color_alist,
7230 /* An alist of defined terminal colors and their RGB values. */); 7228 doc: /* An alist of defined terminal colors and their RGB values. */);
7231 Vtty_defined_color_alist = Qnil; 7229 Vtty_defined_color_alist = Qnil;
7232 7230
7233 DEFVAR_LISP ("scalable-fonts-allowed", &Vscalable_fonts_allowed 7231 DEFVAR_LISP ("scalable-fonts-allowed", &Vscalable_fonts_allowed,
7234 /* Allowed scalable fonts. 7232 doc: /* Allowed scalable fonts.
7235A value of nil means don't allow any scalable fonts. 7233A value of nil means don't allow any scalable fonts.
7236A value of t means allow any scalable font. 7234A value of t means allow any scalable font.
7237Otherwise, value must be a list of regular expressions. A font may be 7235Otherwise, value must be a list of regular expressions. A font may be
@@ -7240,8 +7238,8 @@ Note that if value is nil, a scalable font might still be used, if no
7240other font of the appropriate family and registry is available. */); 7238other font of the appropriate family and registry is available. */);
7241 Vscalable_fonts_allowed = Qnil; 7239 Vscalable_fonts_allowed = Qnil;
7242 7240
7243 DEFVAR_LISP ("face-ignored-fonts", &Vface_ignored_fonts 7241 DEFVAR_LISP ("face-ignored-fonts", &Vface_ignored_fonts,
7244 /* List of ignored fonts. 7242 doc: /* List of ignored fonts.
7245Each element is a regular expression that matches names of fonts to 7243Each element is a regular expression that matches names of fonts to
7246ignore. */); 7244ignore. */);
7247 Vface_ignored_fonts = Qnil; 7245 Vface_ignored_fonts = Qnil;
diff --git a/src/xfns.c b/src/xfns.c
index c43dd482271..22c5bd91254 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -19,8 +19,6 @@ along with GNU Emacs; see the file COPYING. If not, write to
19the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 19the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20Boston, MA 02111-1307, USA. */ 20Boston, MA 02111-1307, USA. */
21 21
22#define DOC_STRINGS_IN_COMMENTS
23
24#include <config.h> 22#include <config.h>
25#include <signal.h> 23#include <signal.h>
26#include <stdio.h> 24#include <stdio.h>
@@ -2641,7 +2639,7 @@ validate_x_resource_name ()
2641extern char *x_get_string_resource (); 2639extern char *x_get_string_resource ();
2642 2640
2643DEFUN ("x-get-resource", Fx_get_resource, Sx_get_resource, 2, 4, 0, 2641DEFUN ("x-get-resource", Fx_get_resource, Sx_get_resource, 2, 4, 0,
2644 /* Return the value of ATTRIBUTE, of class CLASS, from the X defaults database. 2642 doc: /* Return the value of ATTRIBUTE, of class CLASS, from the X defaults database.
2645This uses `INSTANCE.ATTRIBUTE' as the key and `Emacs.CLASS' as the 2643This uses `INSTANCE.ATTRIBUTE' as the key and `Emacs.CLASS' as the
2646class, where INSTANCE is the name under which Emacs was invoked, or 2644class, where INSTANCE is the name under which Emacs was invoked, or
2647the name specified by the `-name' or `-rn' command-line arguments. 2645the name specified by the `-name' or `-rn' command-line arguments.
@@ -2649,8 +2647,8 @@ the name specified by the `-name' or `-rn' command-line arguments.
2649The optional arguments COMPONENT and SUBCLASS add to the key and the 2647The optional arguments COMPONENT and SUBCLASS add to the key and the
2650class, respectively. You must specify both of them or neither. 2648class, respectively. You must specify both of them or neither.
2651If you specify them, the key is `INSTANCE.COMPONENT.ATTRIBUTE' 2649If you specify them, the key is `INSTANCE.COMPONENT.ATTRIBUTE'
2652and the class is `Emacs.CLASS.SUBCLASS'. */ 2650and the class is `Emacs.CLASS.SUBCLASS'. */)
2653 (attribute, class, component, subclass)) 2651 (attribute, class, component, subclass)
2654 Lisp_Object attribute, class, component, subclass; 2652 Lisp_Object attribute, class, component, subclass;
2655{ 2653{
2656 register char *value; 2654 register char *value;
@@ -2999,13 +2997,13 @@ x_default_scroll_bar_color_parameter (f, alist, prop, xprop, xclass,
2999 2997
3000 2998
3001DEFUN ("x-parse-geometry", Fx_parse_geometry, Sx_parse_geometry, 1, 1, 0, 2999DEFUN ("x-parse-geometry", Fx_parse_geometry, Sx_parse_geometry, 1, 1, 0,
3002 /* Parse an X-style geometry string STRING. 3000 doc: /* Parse an X-style geometry string STRING.
3003Returns an alist of the form ((top . TOP), (left . LEFT) ... ). 3001Returns an alist of the form ((top . TOP), (left . LEFT) ... ).
3004The properties returned may include `top', `left', `height', and `width'. 3002The properties returned may include `top', `left', `height', and `width'.
3005The value of `left' or `top' may be an integer, 3003The value of `left' or `top' may be an integer,
3006or a list (+ N) meaning N pixels relative to top/left corner, 3004or a list (+ N) meaning N pixels relative to top/left corner,
3007or a list (- N) meaning -N pixels relative to bottom/right corner. */ 3005or a list (- N) meaning -N pixels relative to bottom/right corner. */)
3008 (string)) 3006 (string)
3009 Lisp_Object string; 3007 Lisp_Object string;
3010{ 3008{
3011 int geometry, x, y; 3009 int geometry, x, y;
@@ -4092,7 +4090,7 @@ unwind_create_frame (frame)
4092 4090
4093DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame, 4091DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame,
4094 1, 1, 0, 4092 1, 1, 0,
4095 /* Make a new X window, which is called a "frame" in Emacs terms. 4093 doc: /* Make a new X window, which is called a "frame" in Emacs terms.
4096Returns an Emacs frame object. 4094Returns an Emacs frame object.
4097ALIST is an alist of frame parameters. 4095ALIST is an alist of frame parameters.
4098If the parameters specify that the frame should not have a minibuffer, 4096If the parameters specify that the frame should not have a minibuffer,
@@ -4100,8 +4098,8 @@ and do not specify a specific minibuffer window to use,
4100then `default-minibuffer-frame' must be a frame whose minibuffer can 4098then `default-minibuffer-frame' must be a frame whose minibuffer can
4101be shared by the new frame. 4099be shared by the new frame.
4102 4100
4103This function is an internal primitive--use `make-frame' instead. */ 4101This function is an internal primitive--use `make-frame' instead. */)
4104 (parms)) 4102 (parms)
4105 Lisp_Object parms; 4103 Lisp_Object parms;
4106{ 4104{
4107 struct frame *f; 4105 struct frame *f;
@@ -4555,9 +4553,9 @@ x_get_focus_frame (frame)
4555 following a user-command. */ 4553 following a user-command. */
4556 4554
4557DEFUN ("x-focus-frame", Fx_focus_frame, Sx_focus_frame, 1, 1, 0, 4555DEFUN ("x-focus-frame", Fx_focus_frame, Sx_focus_frame, 1, 1, 0,
4558 /* Set the input focus to FRAME. 4556 doc: /* Set the input focus to FRAME.
4559FRAME nil means use the selected frame. */ 4557FRAME nil means use the selected frame. */)
4560 (frame)) 4558 (frame)
4561 Lisp_Object frame; 4559 Lisp_Object frame;
4562{ 4560{
4563 struct frame *f = check_x_frame (frame); 4561 struct frame *f = check_x_frame (frame);
@@ -4576,8 +4574,8 @@ FRAME nil means use the selected frame. */
4576 4574
4577 4575
4578DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, 4576DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
4579 /* Internal function called by `color-defined-p', which see. */ 4577 doc: /* Internal function called by `color-defined-p', which see. */)
4580 (color, frame)) 4578 (color, frame)
4581 Lisp_Object color, frame; 4579 Lisp_Object color, frame;
4582{ 4580{
4583 XColor foo; 4581 XColor foo;
@@ -4592,8 +4590,8 @@ DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
4592} 4590}
4593 4591
4594DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0, 4592DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
4595 /* Internal function called by `color-values', which see. */ 4593 doc: /* Internal function called by `color-values', which see. */)
4596 (color, frame)) 4594 (color, frame)
4597 Lisp_Object color, frame; 4595 Lisp_Object color, frame;
4598{ 4596{
4599 XColor foo; 4597 XColor foo;
@@ -4615,8 +4613,8 @@ DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
4615} 4613}
4616 4614
4617DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0, 4615DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
4618 /* Internal function called by `display-color-p', which see. */ 4616 doc: /* Internal function called by `display-color-p', which see. */)
4619 (display)) 4617 (display)
4620 Lisp_Object display; 4618 Lisp_Object display;
4621{ 4619{
4622 struct x_display_info *dpyinfo = check_x_display_info (display); 4620 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4639,12 +4637,12 @@ DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
4639 4637
4640DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p, Sx_display_grayscale_p, 4638DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p, Sx_display_grayscale_p,
4641 0, 1, 0, 4639 0, 1, 0,
4642 /* Return t if the X display supports shades of gray. 4640 doc: /* Return t if the X display supports shades of gray.
4643Note that color displays do support shades of gray. 4641Note that color displays do support shades of gray.
4644The optional argument DISPLAY specifies which display to ask about. 4642The optional argument DISPLAY specifies which display to ask about.
4645DISPLAY should be either a frame or a display name (a string). 4643DISPLAY should be either a frame or a display name (a string).
4646If omitted or nil, that stands for the selected frame's display. */ 4644If omitted or nil, that stands for the selected frame's display. */)
4647 (display)) 4645 (display)
4648 Lisp_Object display; 4646 Lisp_Object display;
4649{ 4647{
4650 struct x_display_info *dpyinfo = check_x_display_info (display); 4648 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4669,11 +4667,11 @@ If omitted or nil, that stands for the selected frame's display. */
4669 4667
4670DEFUN ("x-display-pixel-width", Fx_display_pixel_width, Sx_display_pixel_width, 4668DEFUN ("x-display-pixel-width", Fx_display_pixel_width, Sx_display_pixel_width,
4671 0, 1, 0, 4669 0, 1, 0,
4672 /* Returns the width in pixels of the X display DISPLAY. 4670 doc: /* Returns the width in pixels of the X display DISPLAY.
4673The optional argument DISPLAY specifies which display to ask about. 4671The optional argument DISPLAY specifies which display to ask about.
4674DISPLAY should be either a frame or a display name (a string). 4672DISPLAY should be either a frame or a display name (a string).
4675If omitted or nil, that stands for the selected frame's display. */ 4673If omitted or nil, that stands for the selected frame's display. */)
4676 (display)) 4674 (display)
4677 Lisp_Object display; 4675 Lisp_Object display;
4678{ 4676{
4679 struct x_display_info *dpyinfo = check_x_display_info (display); 4677 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4683,11 +4681,11 @@ If omitted or nil, that stands for the selected frame's display. */
4683 4681
4684DEFUN ("x-display-pixel-height", Fx_display_pixel_height, 4682DEFUN ("x-display-pixel-height", Fx_display_pixel_height,
4685 Sx_display_pixel_height, 0, 1, 0, 4683 Sx_display_pixel_height, 0, 1, 0,
4686 /* Returns the height in pixels of the X display DISPLAY. 4684 doc: /* Returns the height in pixels of the X display DISPLAY.
4687The optional argument DISPLAY specifies which display to ask about. 4685The optional argument DISPLAY specifies which display to ask about.
4688DISPLAY should be either a frame or a display name (a string). 4686DISPLAY should be either a frame or a display name (a string).
4689If omitted or nil, that stands for the selected frame's display. */ 4687If omitted or nil, that stands for the selected frame's display. */)
4690 (display)) 4688 (display)
4691 Lisp_Object display; 4689 Lisp_Object display;
4692{ 4690{
4693 struct x_display_info *dpyinfo = check_x_display_info (display); 4691 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4697,11 +4695,11 @@ If omitted or nil, that stands for the selected frame's display. */
4697 4695
4698DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes, 4696DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes,
4699 0, 1, 0, 4697 0, 1, 0,
4700 /* Returns the number of bitplanes of the X display DISPLAY. 4698 doc: /* Returns the number of bitplanes of the X display DISPLAY.
4701The optional argument DISPLAY specifies which display to ask about. 4699The optional argument DISPLAY specifies which display to ask about.
4702DISPLAY should be either a frame or a display name (a string). 4700DISPLAY should be either a frame or a display name (a string).
4703If omitted or nil, that stands for the selected frame's display. */ 4701If omitted or nil, that stands for the selected frame's display. */)
4704 (display)) 4702 (display)
4705 Lisp_Object display; 4703 Lisp_Object display;
4706{ 4704{
4707 struct x_display_info *dpyinfo = check_x_display_info (display); 4705 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4711,11 +4709,11 @@ If omitted or nil, that stands for the selected frame's display. */
4711 4709
4712DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells, 4710DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells,
4713 0, 1, 0, 4711 0, 1, 0,
4714 /* Returns the number of color cells of the X display DISPLAY. 4712 doc: /* Returns the number of color cells of the X display DISPLAY.
4715The optional argument DISPLAY specifies which display to ask about. 4713The optional argument DISPLAY specifies which display to ask about.
4716DISPLAY should be either a frame or a display name (a string). 4714DISPLAY should be either a frame or a display name (a string).
4717If omitted or nil, that stands for the selected frame's display. */ 4715If omitted or nil, that stands for the selected frame's display. */)
4718 (display)) 4716 (display)
4719 Lisp_Object display; 4717 Lisp_Object display;
4720{ 4718{
4721 struct x_display_info *dpyinfo = check_x_display_info (display); 4719 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4727,11 +4725,11 @@ If omitted or nil, that stands for the selected frame's display. */
4727DEFUN ("x-server-max-request-size", Fx_server_max_request_size, 4725DEFUN ("x-server-max-request-size", Fx_server_max_request_size,
4728 Sx_server_max_request_size, 4726 Sx_server_max_request_size,
4729 0, 1, 0, 4727 0, 1, 0,
4730 /* Returns the maximum request size of the X server of display DISPLAY. 4728 doc: /* Returns the maximum request size of the X server of display DISPLAY.
4731The optional argument DISPLAY specifies which display to ask about. 4729The optional argument DISPLAY specifies which display to ask about.
4732DISPLAY should be either a frame or a display name (a string). 4730DISPLAY should be either a frame or a display name (a string).
4733If omitted or nil, that stands for the selected frame's display. */ 4731If omitted or nil, that stands for the selected frame's display. */)
4734 (display)) 4732 (display)
4735 Lisp_Object display; 4733 Lisp_Object display;
4736{ 4734{
4737 struct x_display_info *dpyinfo = check_x_display_info (display); 4735 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4740,11 +4738,11 @@ If omitted or nil, that stands for the selected frame's display. */
4740} 4738}
4741 4739
4742DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, 4740DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0,
4743 /* Returns the vendor ID string of the X server of display DISPLAY. 4741 doc: /* Returns the vendor ID string of the X server of display DISPLAY.
4744The optional argument DISPLAY specifies which display to ask about. 4742The optional argument DISPLAY specifies which display to ask about.
4745DISPLAY should be either a frame or a display name (a string). 4743DISPLAY should be either a frame or a display name (a string).
4746If omitted or nil, that stands for the selected frame's display. */ 4744If omitted or nil, that stands for the selected frame's display. */)
4747 (display)) 4745 (display)
4748 Lisp_Object display; 4746 Lisp_Object display;
4749{ 4747{
4750 struct x_display_info *dpyinfo = check_x_display_info (display); 4748 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4755,15 +4753,15 @@ If omitted or nil, that stands for the selected frame's display. */
4755} 4753}
4756 4754
4757DEFUN ("x-server-version", Fx_server_version, Sx_server_version, 0, 1, 0, 4755DEFUN ("x-server-version", Fx_server_version, Sx_server_version, 0, 1, 0,
4758 /* Returns the version numbers of the X server of display DISPLAY. 4756 doc: /* Returns the version numbers of the X server of display DISPLAY.
4759The value is a list of three integers: the major and minor 4757The value is a list of three integers: the major and minor
4760version numbers of the X Protocol in use, and the vendor-specific release 4758version numbers of the X Protocol in use, and the vendor-specific release
4761number. See also the function `x-server-vendor'. 4759number. See also the function `x-server-vendor'.
4762 4760
4763The optional argument DISPLAY specifies which display to ask about. 4761The optional argument DISPLAY specifies which display to ask about.
4764DISPLAY should be either a frame or a display name (a string). 4762DISPLAY should be either a frame or a display name (a string).
4765If omitted or nil, that stands for the selected frame's display. */ 4763If omitted or nil, that stands for the selected frame's display. */)
4766 (display)) 4764 (display)
4767 Lisp_Object display; 4765 Lisp_Object display;
4768{ 4766{
4769 struct x_display_info *dpyinfo = check_x_display_info (display); 4767 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4775,11 +4773,11 @@ If omitted or nil, that stands for the selected frame's display. */
4775} 4773}
4776 4774
4777DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0, 4775DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0,
4778 /* Return the number of screens on the X server of display DISPLAY. 4776 doc: /* Return the number of screens on the X server of display DISPLAY.
4779The optional argument DISPLAY specifies which display to ask about. 4777The optional argument DISPLAY specifies which display to ask about.
4780DISPLAY should be either a frame or a display name (a string). 4778DISPLAY should be either a frame or a display name (a string).
4781If omitted or nil, that stands for the selected frame's display. */ 4779If omitted or nil, that stands for the selected frame's display. */)
4782 (display)) 4780 (display)
4783 Lisp_Object display; 4781 Lisp_Object display;
4784{ 4782{
4785 struct x_display_info *dpyinfo = check_x_display_info (display); 4783 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4788,11 +4786,11 @@ If omitted or nil, that stands for the selected frame's display. */
4788} 4786}
4789 4787
4790DEFUN ("x-display-mm-height", Fx_display_mm_height, Sx_display_mm_height, 0, 1, 0, 4788DEFUN ("x-display-mm-height", Fx_display_mm_height, Sx_display_mm_height, 0, 1, 0,
4791 /* Return the height in millimeters of the X display DISPLAY. 4789 doc: /* Return the height in millimeters of the X display DISPLAY.
4792The optional argument DISPLAY specifies which display to ask about. 4790The optional argument DISPLAY specifies which display to ask about.
4793DISPLAY should be either a frame or a display name (a string). 4791DISPLAY should be either a frame or a display name (a string).
4794If omitted or nil, that stands for the selected frame's display. */ 4792If omitted or nil, that stands for the selected frame's display. */)
4795 (display)) 4793 (display)
4796 Lisp_Object display; 4794 Lisp_Object display;
4797{ 4795{
4798 struct x_display_info *dpyinfo = check_x_display_info (display); 4796 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4801,11 +4799,11 @@ If omitted or nil, that stands for the selected frame's display. */
4801} 4799}
4802 4800
4803DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0, 4801DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0,
4804 /* Return the width in millimeters of the X display DISPLAY. 4802 doc: /* Return the width in millimeters of the X display DISPLAY.
4805The optional argument DISPLAY specifies which display to ask about. 4803The optional argument DISPLAY specifies which display to ask about.
4806DISPLAY should be either a frame or a display name (a string). 4804DISPLAY should be either a frame or a display name (a string).
4807If omitted or nil, that stands for the selected frame's display. */ 4805If omitted or nil, that stands for the selected frame's display. */)
4808 (display)) 4806 (display)
4809 Lisp_Object display; 4807 Lisp_Object display;
4810{ 4808{
4811 struct x_display_info *dpyinfo = check_x_display_info (display); 4809 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4815,12 +4813,12 @@ If omitted or nil, that stands for the selected frame's display. */
4815 4813
4816DEFUN ("x-display-backing-store", Fx_display_backing_store, 4814DEFUN ("x-display-backing-store", Fx_display_backing_store,
4817 Sx_display_backing_store, 0, 1, 0, 4815 Sx_display_backing_store, 0, 1, 0,
4818 /* Returns an indication of whether X display DISPLAY does backing store. 4816 doc: /* Returns an indication of whether X display DISPLAY does backing store.
4819The value may be `always', `when-mapped', or `not-useful'. 4817The value may be `always', `when-mapped', or `not-useful'.
4820The optional argument DISPLAY specifies which display to ask about. 4818The optional argument DISPLAY specifies which display to ask about.
4821DISPLAY should be either a frame or a display name (a string). 4819DISPLAY should be either a frame or a display name (a string).
4822If omitted or nil, that stands for the selected frame's display. */ 4820If omitted or nil, that stands for the selected frame's display. */)
4823 (display)) 4821 (display)
4824 Lisp_Object display; 4822 Lisp_Object display;
4825{ 4823{
4826 struct x_display_info *dpyinfo = check_x_display_info (display); 4824 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4850,14 +4848,14 @@ If omitted or nil, that stands for the selected frame's display. */
4850 4848
4851DEFUN ("x-display-visual-class", Fx_display_visual_class, 4849DEFUN ("x-display-visual-class", Fx_display_visual_class,
4852 Sx_display_visual_class, 0, 1, 0, 4850 Sx_display_visual_class, 0, 1, 0,
4853 /* Return the visual class of the X display DISPLAY. 4851 doc: /* Return the visual class of the X display DISPLAY.
4854The value is one of the symbols `static-gray', `gray-scale', 4852The value is one of the symbols `static-gray', `gray-scale',
4855`static-color', `pseudo-color', `true-color', or `direct-color'. 4853`static-color', `pseudo-color', `true-color', or `direct-color'.
4856 4854
4857The optional argument DISPLAY specifies which display to ask about. 4855The optional argument DISPLAY specifies which display to ask about.
4858DISPLAY should be either a frame or a display name (a string). 4856DISPLAY should be either a frame or a display name (a string).
4859If omitted or nil, that stands for the selected frame's display. */ 4857If omitted or nil, that stands for the selected frame's display. */)
4860 (display)) 4858 (display)
4861 Lisp_Object display; 4859 Lisp_Object display;
4862{ 4860{
4863 struct x_display_info *dpyinfo = check_x_display_info (display); 4861 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -4893,11 +4891,11 @@ If omitted or nil, that stands for the selected frame's display. */
4893 4891
4894DEFUN ("x-display-save-under", Fx_display_save_under, 4892DEFUN ("x-display-save-under", Fx_display_save_under,
4895 Sx_display_save_under, 0, 1, 0, 4893 Sx_display_save_under, 0, 1, 0,
4896 /* Returns t if the X display DISPLAY supports the save-under feature. 4894 doc: /* Returns t if the X display DISPLAY supports the save-under feature.
4897The optional argument DISPLAY specifies which display to ask about. 4895The optional argument DISPLAY specifies which display to ask about.
4898DISPLAY should be either a frame or a display name (a string). 4896DISPLAY should be either a frame or a display name (a string).
4899If omitted or nil, that stands for the selected frame's display. */ 4897If omitted or nil, that stands for the selected frame's display. */)
4900 (display)) 4898 (display)
4901 Lisp_Object display; 4899 Lisp_Object display;
4902{ 4900{
4903 struct x_display_info *dpyinfo = check_x_display_info (display); 4901 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -5114,12 +5112,12 @@ x_display_info_for_name (name)
5114 5112
5115DEFUN ("x-open-connection", Fx_open_connection, Sx_open_connection, 5113DEFUN ("x-open-connection", Fx_open_connection, Sx_open_connection,
5116 1, 3, 0, 5114 1, 3, 0,
5117 /* Open a connection to an X server. 5115 doc: /* Open a connection to an X server.
5118DISPLAY is the name of the display to connect to. 5116DISPLAY is the name of the display to connect to.
5119Optional second arg XRM-STRING is a string of resources in xrdb format. 5117Optional second arg XRM-STRING is a string of resources in xrdb format.
5120If the optional third arg MUST-SUCCEED is non-nil, 5118If the optional third arg MUST-SUCCEED is non-nil,
5121terminate Emacs if we can't open the connection. */ 5119terminate Emacs if we can't open the connection. */)
5122 (display, xrm_string, must_succeed)) 5120 (display, xrm_string, must_succeed)
5123 Lisp_Object display, xrm_string, must_succeed; 5121 Lisp_Object display, xrm_string, must_succeed;
5124{ 5122{
5125 unsigned char *xrm_option; 5123 unsigned char *xrm_option;
@@ -5164,10 +5162,10 @@ connections from your machine.\n",
5164 5162
5165DEFUN ("x-close-connection", Fx_close_connection, 5163DEFUN ("x-close-connection", Fx_close_connection,
5166 Sx_close_connection, 1, 1, 0, 5164 Sx_close_connection, 1, 1, 0,
5167 /* Close the connection to DISPLAY's X server. 5165 doc: /* Close the connection to DISPLAY's X server.
5168For DISPLAY, specify either a frame or a display name (a string). 5166For DISPLAY, specify either a frame or a display name (a string).
5169If DISPLAY is nil, that stands for the selected frame's display. */ 5167If DISPLAY is nil, that stands for the selected frame's display. */)
5170 (display)) 5168 (display)
5171 Lisp_Object display; 5169 Lisp_Object display;
5172{ 5170{
5173 struct x_display_info *dpyinfo = check_x_display_info (display); 5171 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -5203,8 +5201,8 @@ If DISPLAY is nil, that stands for the selected frame's display. */
5203} 5201}
5204 5202
5205DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0, 5203DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0,
5206 /* Return the list of display names that Emacs has connections to. */ 5204 doc: /* Return the list of display names that Emacs has connections to. */)
5207 ()) 5205 ()
5208{ 5206{
5209 Lisp_Object tail, result; 5207 Lisp_Object tail, result;
5210 5208
@@ -5216,15 +5214,15 @@ DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0,
5216} 5214}
5217 5215
5218DEFUN ("x-synchronize", Fx_synchronize, Sx_synchronize, 1, 2, 0, 5216DEFUN ("x-synchronize", Fx_synchronize, Sx_synchronize, 1, 2, 0,
5219 /* If ON is non-nil, report X errors as soon as the erring request is made. 5217 doc: /* If ON is non-nil, report X errors as soon as the erring request is made.
5220If ON is nil, allow buffering of requests. 5218If ON is nil, allow buffering of requests.
5221Turning on synchronization prohibits the Xlib routines from buffering 5219Turning on synchronization prohibits the Xlib routines from buffering
5222requests and seriously degrades performance, but makes debugging much 5220requests and seriously degrades performance, but makes debugging much
5223easier. 5221easier.
5224The optional second argument DISPLAY specifies which display to act on. 5222The optional second argument DISPLAY specifies which display to act on.
5225DISPLAY should be either a frame or a display name (a string). 5223DISPLAY should be either a frame or a display name (a string).
5226If DISPLAY is omitted or nil, that stands for the selected frame's display. */ 5224If DISPLAY is omitted or nil, that stands for the selected frame's display. */)
5227 (on, display)) 5225 (on, display)
5228 Lisp_Object display, on; 5226 Lisp_Object display, on;
5229{ 5227{
5230 struct x_display_info *dpyinfo = check_x_display_info (display); 5228 struct x_display_info *dpyinfo = check_x_display_info (display);
@@ -5603,12 +5601,12 @@ image_spec_value (spec, key, found)
5603 5601
5604 5602
5605DEFUN ("image-size", Fimage_size, Simage_size, 1, 3, 0, 5603DEFUN ("image-size", Fimage_size, Simage_size, 1, 3, 0,
5606 /* Return the size of image SPEC as pair (WIDTH . HEIGHT). 5604 doc: /* Return the size of image SPEC as pair (WIDTH . HEIGHT).
5607PIXELS non-nil means return the size in pixels, otherwise return the 5605PIXELS non-nil means return the size in pixels, otherwise return the
5608size in canonical character units. 5606size in canonical character units.
5609FRAME is the frame on which the image will be displayed. FRAME nil 5607FRAME is the frame on which the image will be displayed. FRAME nil
5610or omitted means use the selected frame. */ 5608or omitted means use the selected frame. */)
5611 (spec, pixels, frame)) 5609 (spec, pixels, frame)
5612 Lisp_Object spec, pixels, frame; 5610 Lisp_Object spec, pixels, frame;
5613{ 5611{
5614 Lisp_Object size; 5612 Lisp_Object size;
@@ -5636,10 +5634,10 @@ or omitted means use the selected frame. */
5636 5634
5637 5635
5638DEFUN ("image-mask-p", Fimage_mask_p, Simage_mask_p, 1, 2, 0, 5636DEFUN ("image-mask-p", Fimage_mask_p, Simage_mask_p, 1, 2, 0,
5639 /* Return t if image SPEC has a mask bitmap. 5637 doc: /* Return t if image SPEC has a mask bitmap.
5640FRAME is the frame on which the image will be displayed. FRAME nil 5638FRAME is the frame on which the image will be displayed. FRAME nil
5641or omitted means use the selected frame. */ 5639or omitted means use the selected frame. */)
5642 (spec, frame)) 5640 (spec, frame)
5643 Lisp_Object spec, frame; 5641 Lisp_Object spec, frame;
5644{ 5642{
5645 Lisp_Object mask; 5643 Lisp_Object mask;
@@ -5982,10 +5980,10 @@ clear_image_cache (f, force_p)
5982 5980
5983DEFUN ("clear-image-cache", Fclear_image_cache, Sclear_image_cache, 5981DEFUN ("clear-image-cache", Fclear_image_cache, Sclear_image_cache,
5984 0, 1, 0, 5982 0, 1, 0,
5985 /* Clear the image cache of FRAME. 5983 doc: /* Clear the image cache of FRAME.
5986FRAME nil or omitted means use the selected frame. 5984FRAME nil or omitted means use the selected frame.
5987FRAME t means clear the image caches of all frames. */ 5985FRAME t means clear the image caches of all frames. */)
5988 (frame)) 5986 (frame)
5989 Lisp_Object frame; 5987 Lisp_Object frame;
5990{ 5988{
5991 if (EQ (frame, Qt)) 5989 if (EQ (frame, Qt))
@@ -10247,10 +10245,10 @@ x_kill_gs_process (pixmap, f)
10247 10245
10248DEFUN ("x-change-window-property", Fx_change_window_property, 10246DEFUN ("x-change-window-property", Fx_change_window_property,
10249 Sx_change_window_property, 2, 3, 0, 10247 Sx_change_window_property, 2, 3, 0,
10250 /* Change window property PROP to VALUE on the X window of FRAME. 10248 doc: /* Change window property PROP to VALUE on the X window of FRAME.
10251PROP and VALUE must be strings. FRAME nil or omitted means use the 10249PROP and VALUE must be strings. FRAME nil or omitted means use the
10252selected frame. Value is VALUE. */ 10250selected frame. Value is VALUE. */)
10253 (prop, value, frame)) 10251 (prop, value, frame)
10254 Lisp_Object frame, prop, value; 10252 Lisp_Object frame, prop, value;
10255{ 10253{
10256 struct frame *f = check_x_frame (frame); 10254 struct frame *f = check_x_frame (frame);
@@ -10275,9 +10273,9 @@ selected frame. Value is VALUE. */
10275 10273
10276DEFUN ("x-delete-window-property", Fx_delete_window_property, 10274DEFUN ("x-delete-window-property", Fx_delete_window_property,
10277 Sx_delete_window_property, 1, 2, 0, 10275 Sx_delete_window_property, 1, 2, 0,
10278 /* Remove window property PROP from X window of FRAME. 10276 doc: /* Remove window property PROP from X window of FRAME.
10279FRAME nil or omitted means use the selected frame. Value is PROP. */ 10277FRAME nil or omitted means use the selected frame. Value is PROP. */)
10280 (prop, frame)) 10278 (prop, frame)
10281 Lisp_Object prop, frame; 10279 Lisp_Object prop, frame;
10282{ 10280{
10283 struct frame *f = check_x_frame (frame); 10281 struct frame *f = check_x_frame (frame);
@@ -10298,11 +10296,11 @@ FRAME nil or omitted means use the selected frame. Value is PROP. */
10298 10296
10299DEFUN ("x-window-property", Fx_window_property, Sx_window_property, 10297DEFUN ("x-window-property", Fx_window_property, Sx_window_property,
10300 1, 2, 0, 10298 1, 2, 0,
10301 /* Value is the value of window property PROP on FRAME. 10299 doc: /* Value is the value of window property PROP on FRAME.
10302If FRAME is nil or omitted, use the selected frame. Value is nil 10300If FRAME is nil or omitted, use the selected frame. Value is nil
10303if FRAME hasn't a property with name PROP or if PROP has no string 10301if FRAME hasn't a property with name PROP or if PROP has no string
10304value. */ 10302value. */)
10305 (prop, frame)) 10303 (prop, frame)
10306 Lisp_Object prop, frame; 10304 Lisp_Object prop, frame;
10307{ 10305{
10308 struct frame *f = check_x_frame (frame); 10306 struct frame *f = check_x_frame (frame);
@@ -10941,7 +10939,7 @@ compute_tip_xy (f, parms, dx, dy, width, height, root_x, root_y)
10941 10939
10942 10940
10943DEFUN ("x-show-tip", Fx_show_tip, Sx_show_tip, 1, 6, 0, 10941DEFUN ("x-show-tip", Fx_show_tip, Sx_show_tip, 1, 6, 0,
10944 /* Show STRING in a "tooltip" window on frame FRAME. 10942 doc: /* Show STRING in a "tooltip" window on frame FRAME.
10945A tooltip window is a small X window displaying a string. 10943A tooltip window is a small X window displaying a string.
10946 10944
10947FRAME nil or omitted means use the selected frame. 10945FRAME nil or omitted means use the selected frame.
@@ -10961,8 +10959,8 @@ window, otherwise it is displayed at the mouse position, with offset
10961DY added (default is -10). 10959DY added (default is -10).
10962 10960
10963A tooltip's maximum size is specified by `x-max-tooltip-size'. 10961A tooltip's maximum size is specified by `x-max-tooltip-size'.
10964Text larger than the specified size is clipped. */ 10962Text larger than the specified size is clipped. */)
10965 (string, frame, parms, timeout, dx, dy)) 10963 (string, frame, parms, timeout, dx, dy)
10966 Lisp_Object string, frame, parms, timeout, dx, dy; 10964 Lisp_Object string, frame, parms, timeout, dx, dy;
10967{ 10965{
10968 struct frame *f; 10966 struct frame *f;
@@ -11150,9 +11148,9 @@ Text larger than the specified size is clipped. */
11150 11148
11151 11149
11152DEFUN ("x-hide-tip", Fx_hide_tip, Sx_hide_tip, 0, 0, 0, 11150DEFUN ("x-hide-tip", Fx_hide_tip, Sx_hide_tip, 0, 0, 0,
11153 /* Hide the current tooltip window, if there is any. 11151 doc: /* Hide the current tooltip window, if there is any.
11154Value is t if tooltip was open, nil otherwise. */ 11152Value is t if tooltip was open, nil otherwise. */)
11155 ()) 11153 ()
11156{ 11154{
11157 int count; 11155 int count;
11158 Lisp_Object deleted, frame, timer; 11156 Lisp_Object deleted, frame, timer;
@@ -11240,12 +11238,12 @@ file_dialog_unmap_cb (widget, client_data, call_data)
11240 11238
11241 11239
11242DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 4, 0, 11240DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 4, 0,
11243 /* Read file name, prompting with PROMPT in directory DIR. 11241 doc: /* Read file name, prompting with PROMPT in directory DIR.
11244Use a file selection dialog. 11242Use a file selection dialog.
11245Select DEFAULT-FILENAME in the dialog's file selection box, if 11243Select DEFAULT-FILENAME in the dialog's file selection box, if
11246specified. Don't let the user enter a file name in the file 11244specified. Don't let the user enter a file name in the file
11247selection dialog's entry field, if MUSTMATCH is non-nil. */ 11245selection dialog's entry field, if MUSTMATCH is non-nil. */)
11248 (prompt, dir, default_filename, mustmatch)) 11246 (prompt, dir, default_filename, mustmatch)
11249 Lisp_Object prompt, dir, default_filename, mustmatch; 11247 Lisp_Object prompt, dir, default_filename, mustmatch;
11250{ 11248{
11251 int result; 11249 int result;
@@ -11398,11 +11396,11 @@ selection dialog's entry field, if MUSTMATCH is non-nil. */
11398 11396
11399DEFUN ("x-backspace-delete-keys-p", Fx_backspace_delete_keys_p, 11397DEFUN ("x-backspace-delete-keys-p", Fx_backspace_delete_keys_p,
11400 Sx_backspace_delete_keys_p, 0, 1, 0, 11398 Sx_backspace_delete_keys_p, 0, 1, 0,
11401 /* Check if both Backspace and Delete keys are on the keyboard of FRAME. 11399 doc: /* Check if both Backspace and Delete keys are on the keyboard of FRAME.
11402FRAME nil means use the selected frame. 11400FRAME nil means use the selected frame.
11403Value is t if we know that both keys are present, and are mapped to the 11401Value is t if we know that both keys are present, and are mapped to the
11404usual X keysyms. */ 11402usual X keysyms. */)
11405 (frame)) 11403 (frame)
11406 Lisp_Object frame; 11404 Lisp_Object frame;
11407{ 11405{
11408#ifdef HAVE_XKBGETKEYBOARD 11406#ifdef HAVE_XKBGETKEYBOARD
@@ -11595,24 +11593,24 @@ syms_of_xfns ()
11595 11593
11596 init_x_parm_symbols (); 11594 init_x_parm_symbols ();
11597 11595
11598 DEFVAR_BOOL ("cross-disabled-images", &cross_disabled_images 11596 DEFVAR_BOOL ("cross-disabled-images", &cross_disabled_images,
11599 /* Non-nil means always draw a cross over disabled images. 11597 doc: /* Non-nil means always draw a cross over disabled images.
11600Disabled images are those having an `:conversion disabled' property. 11598Disabled images are those having an `:conversion disabled' property.
11601A cross is always drawn on black & white displays. */); 11599A cross is always drawn on black & white displays. */);
11602 cross_disabled_images = 0; 11600 cross_disabled_images = 0;
11603 11601
11604 DEFVAR_LISP ("x-bitmap-file-path", &Vx_bitmap_file_path 11602 DEFVAR_LISP ("x-bitmap-file-path", &Vx_bitmap_file_path,
11605 /* List of directories to search for bitmap files for X. */); 11603 doc: /* List of directories to search for bitmap files for X. */);
11606 Vx_bitmap_file_path = decode_env_path ((char *) 0, PATH_BITMAPS); 11604 Vx_bitmap_file_path = decode_env_path ((char *) 0, PATH_BITMAPS);
11607 11605
11608 DEFVAR_LISP ("x-pointer-shape", &Vx_pointer_shape 11606 DEFVAR_LISP ("x-pointer-shape", &Vx_pointer_shape,
11609 /* The shape of the pointer when over text. 11607 doc: /* The shape of the pointer when over text.
11610Changing the value does not affect existing frames 11608Changing the value does not affect existing frames
11611unless you set the mouse color. */); 11609unless you set the mouse color. */);
11612 Vx_pointer_shape = Qnil; 11610 Vx_pointer_shape = Qnil;
11613 11611
11614 DEFVAR_LISP ("x-resource-name", &Vx_resource_name 11612 DEFVAR_LISP ("x-resource-name", &Vx_resource_name,
11615 /* The name Emacs uses to look up X resources. 11613 doc: /* The name Emacs uses to look up X resources.
11616`x-get-resource' uses this as the first component of the instance name 11614`x-get-resource' uses this as the first component of the instance name
11617when requesting resource values. 11615when requesting resource values.
11618Emacs initially sets `x-resource-name' to the name under which Emacs 11616Emacs initially sets `x-resource-name' to the name under which Emacs
@@ -11623,8 +11621,8 @@ It may be useful to bind this variable locally around a call
11623to `x-get-resource'. See also the variable `x-resource-class'. */); 11621to `x-get-resource'. See also the variable `x-resource-class'. */);
11624 Vx_resource_name = Qnil; 11622 Vx_resource_name = Qnil;
11625 11623
11626 DEFVAR_LISP ("x-resource-class", &Vx_resource_class 11624 DEFVAR_LISP ("x-resource-class", &Vx_resource_class,
11627 /* The class Emacs uses to look up X resources. 11625 doc: /* The class Emacs uses to look up X resources.
11628`x-get-resource' uses this as the first component of the instance class 11626`x-get-resource' uses this as the first component of the instance class
11629when requesting resource values. 11627when requesting resource values.
11630 11628
@@ -11636,61 +11634,61 @@ is a reasonable practice. See also the variable `x-resource-name'. */);
11636 Vx_resource_class = build_string (EMACS_CLASS); 11634 Vx_resource_class = build_string (EMACS_CLASS);
11637 11635
11638#if 0 /* This doesn't really do anything. */ 11636#if 0 /* This doesn't really do anything. */
11639 DEFVAR_LISP ("x-nontext-pointer-shape", &Vx_nontext_pointer_shape 11637 DEFVAR_LISP ("x-nontext-pointer-shape", &Vx_nontext_pointer_shape,
11640 /* The shape of the pointer when not over text. 11638 doc: /* The shape of the pointer when not over text.
11641This variable takes effect when you create a new frame 11639This variable takes effect when you create a new frame
11642or when you set the mouse color. */); 11640or when you set the mouse color. */);
11643#endif 11641#endif
11644 Vx_nontext_pointer_shape = Qnil; 11642 Vx_nontext_pointer_shape = Qnil;
11645 11643
11646 DEFVAR_LISP ("x-hourglass-pointer-shape", &Vx_hourglass_pointer_shape 11644 DEFVAR_LISP ("x-hourglass-pointer-shape", &Vx_hourglass_pointer_shape,
11647 /* The shape of the pointer when Emacs is busy. 11645 doc: /* The shape of the pointer when Emacs is busy.
11648This variable takes effect when you create a new frame 11646This variable takes effect when you create a new frame
11649or when you set the mouse color. */); 11647or when you set the mouse color. */);
11650 Vx_hourglass_pointer_shape = Qnil; 11648 Vx_hourglass_pointer_shape = Qnil;
11651 11649
11652 DEFVAR_BOOL ("display-hourglass", &display_hourglass_p 11650 DEFVAR_BOOL ("display-hourglass", &display_hourglass_p,
11653 /* Non-zero means Emacs displays an hourglass pointer on window systems. */); 11651 doc: /* Non-zero means Emacs displays an hourglass pointer on window systems. */);
11654 display_hourglass_p = 1; 11652 display_hourglass_p = 1;
11655 11653
11656 DEFVAR_LISP ("hourglass-delay", &Vhourglass_delay 11654 DEFVAR_LISP ("hourglass-delay", &Vhourglass_delay,
11657 /* *Seconds to wait before displaying an hourglass pointer. 11655 doc: /* *Seconds to wait before displaying an hourglass pointer.
11658Value must be an integer or float. */); 11656Value must be an integer or float. */);
11659 Vhourglass_delay = make_number (DEFAULT_HOURGLASS_DELAY); 11657 Vhourglass_delay = make_number (DEFAULT_HOURGLASS_DELAY);
11660 11658
11661#if 0 /* This doesn't really do anything. */ 11659#if 0 /* This doesn't really do anything. */
11662 DEFVAR_LISP ("x-mode-pointer-shape", &Vx_mode_pointer_shape 11660 DEFVAR_LISP ("x-mode-pointer-shape", &Vx_mode_pointer_shape,
11663 /* The shape of the pointer when over the mode line. 11661 doc: /* The shape of the pointer when over the mode line.
11664This variable takes effect when you create a new frame 11662This variable takes effect when you create a new frame
11665or when you set the mouse color. */); 11663or when you set the mouse color. */);
11666#endif 11664#endif
11667 Vx_mode_pointer_shape = Qnil; 11665 Vx_mode_pointer_shape = Qnil;
11668 11666
11669 DEFVAR_LISP ("x-sensitive-text-pointer-shape", 11667 DEFVAR_LISP ("x-sensitive-text-pointer-shape",
11670 &Vx_sensitive_text_pointer_shape 11668 &Vx_sensitive_text_pointer_shape,
11671 /* The shape of the pointer when over mouse-sensitive text. 11669 doc: /* The shape of the pointer when over mouse-sensitive text.
11672This variable takes effect when you create a new frame 11670This variable takes effect when you create a new frame
11673or when you set the mouse color. */); 11671or when you set the mouse color. */);
11674 Vx_sensitive_text_pointer_shape = Qnil; 11672 Vx_sensitive_text_pointer_shape = Qnil;
11675 11673
11676 DEFVAR_LISP ("x-window-horizontal-drag-cursor", 11674 DEFVAR_LISP ("x-window-horizontal-drag-cursor",
11677 &Vx_window_horizontal_drag_shape 11675 &Vx_window_horizontal_drag_shape,
11678 /* Pointer shape to use for indicating a window can be dragged horizontally. 11676 doc: /* Pointer shape to use for indicating a window can be dragged horizontally.
11679This variable takes effect when you create a new frame 11677This variable takes effect when you create a new frame
11680or when you set the mouse color. */); 11678or when you set the mouse color. */);
11681 Vx_window_horizontal_drag_shape = Qnil; 11679 Vx_window_horizontal_drag_shape = Qnil;
11682 11680
11683 DEFVAR_LISP ("x-cursor-fore-pixel", &Vx_cursor_fore_pixel 11681 DEFVAR_LISP ("x-cursor-fore-pixel", &Vx_cursor_fore_pixel,
11684 /* A string indicating the foreground color of the cursor box. */); 11682 doc: /* A string indicating the foreground color of the cursor box. */);
11685 Vx_cursor_fore_pixel = Qnil; 11683 Vx_cursor_fore_pixel = Qnil;
11686 11684
11687 DEFVAR_LISP ("x-max-tooltip-size", &Vx_max_tooltip_size 11685 DEFVAR_LISP ("x-max-tooltip-size", &Vx_max_tooltip_size,
11688 /* Maximum size for tooltips. Value is a pair (COLUMNS . ROWS). 11686 doc: /* Maximum size for tooltips. Value is a pair (COLUMNS . ROWS).
11689Text larger than this is clipped. */); 11687Text larger than this is clipped. */);
11690 Vx_max_tooltip_size = Fcons (make_number (80), make_number (40)); 11688 Vx_max_tooltip_size = Fcons (make_number (80), make_number (40));
11691 11689
11692 DEFVAR_LISP ("x-no-window-manager", &Vx_no_window_manager 11690 DEFVAR_LISP ("x-no-window-manager", &Vx_no_window_manager,
11693 /* Non-nil if no X window manager is in use. 11691 doc: /* Non-nil if no X window manager is in use.
11694Emacs doesn't try to figure this out; this is always nil 11692Emacs doesn't try to figure this out; this is always nil
11695unless you set it to something else. */); 11693unless you set it to something else. */);
11696 /* We don't have any way to find this out, so set it to nil 11694 /* We don't have any way to find this out, so set it to nil
@@ -11698,8 +11696,8 @@ unless you set it to something else. */);
11698 Vx_no_window_manager = Qnil; 11696 Vx_no_window_manager = Qnil;
11699 11697
11700 DEFVAR_LISP ("x-pixel-size-width-font-regexp", 11698 DEFVAR_LISP ("x-pixel-size-width-font-regexp",
11701 &Vx_pixel_size_width_font_regexp 11699 &Vx_pixel_size_width_font_regexp,
11702 /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'. 11700 doc: /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'.
11703 11701
11704Since Emacs gets width of a font matching with this regexp from 11702Since Emacs gets width of a font matching with this regexp from
11705PIXEL_SIZE field of the name, font finding mechanism gets faster for 11703PIXEL_SIZE field of the name, font finding mechanism gets faster for
@@ -11707,8 +11705,8 @@ such a font. This is especially effective for such large fonts as
11707Chinese, Japanese, and Korean. */); 11705Chinese, Japanese, and Korean. */);
11708 Vx_pixel_size_width_font_regexp = Qnil; 11706 Vx_pixel_size_width_font_regexp = Qnil;
11709 11707
11710 DEFVAR_LISP ("image-cache-eviction-delay", &Vimage_cache_eviction_delay 11708 DEFVAR_LISP ("image-cache-eviction-delay", &Vimage_cache_eviction_delay,
11711 /* Time after which cached images are removed from the cache. 11709 doc: /* Time after which cached images are removed from the cache.
11712When an image has not been displayed this many seconds, remove it 11710When an image has not been displayed this many seconds, remove it
11713from the image cache. Value must be an integer or nil with nil 11711from the image cache. Value must be an integer or nil with nil
11714meaning don't clear the cache. */); 11712meaning don't clear the cache. */);
@@ -11719,8 +11717,8 @@ meaning don't clear the cache. */);
11719#ifdef USE_MOTIF 11717#ifdef USE_MOTIF
11720 Fprovide (intern ("motif"), Qnil); 11718 Fprovide (intern ("motif"), Qnil);
11721 11719
11722 DEFVAR_LISP ("motif-version-string", &Vmotif_version_string 11720 DEFVAR_LISP ("motif-version-string", &Vmotif_version_string,
11723 /* Version info for LessTif/Motif. */); 11721 doc: /* Version info for LessTif/Motif. */);
11724 Vmotif_version_string = build_string (XmVERSION_STRING); 11722 Vmotif_version_string = build_string (XmVERSION_STRING);
11725#endif /* USE_MOTIF */ 11723#endif /* USE_MOTIF */
11726#endif /* USE_X_TOOLKIT */ 11724#endif /* USE_X_TOOLKIT */
diff --git a/src/xmenu.c b/src/xmenu.c
index bf7bdbfd34e..64604eb1e4e 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -37,7 +37,7 @@ Boston, MA 02111-1307, USA. */
37#include <signal.h> 37#include <signal.h>
38 38
39#include <stdio.h> 39#include <stdio.h>
40#define DOC_STRINGS_IN_COMMENTS 40
41#include "lisp.h" 41#include "lisp.h"
42#include "termhooks.h" 42#include "termhooks.h"
43#include "keyboard.h" 43#include "keyboard.h"
@@ -656,7 +656,7 @@ list_of_items (pane)
656} 656}
657 657
658DEFUN ("x-popup-menu", Fx_popup_menu, Sx_popup_menu, 2, 2, 0, 658DEFUN ("x-popup-menu", Fx_popup_menu, Sx_popup_menu, 2, 2, 0,
659 /* Pop up a deck-of-cards menu and return user's selection. 659 doc: /* Pop up a deck-of-cards menu and return user's selection.
660POSITION is a position specification. This is either a mouse button event 660POSITION is a position specification. This is either a mouse button event
661or a list ((XOFFSET YOFFSET) WINDOW) 661or a list ((XOFFSET YOFFSET) WINDOW)
662where XOFFSET and YOFFSET are positions in pixels from the top left 662where XOFFSET and YOFFSET are positions in pixels from the top left
@@ -688,8 +688,8 @@ in the menu.
688With this form of menu, the return value is VALUE from the chosen item. 688With this form of menu, the return value is VALUE from the chosen item.
689 689
690If POSITION is nil, don't display the menu at all, just precalculate the 690If POSITION is nil, don't display the menu at all, just precalculate the
691cached information about equivalent key sequences. */ 691cached information about equivalent key sequences. */)
692 (position, menu)) 692 (position, menu)
693 Lisp_Object position, menu; 693 Lisp_Object position, menu;
694{ 694{
695 Lisp_Object keymap, tem; 695 Lisp_Object keymap, tem;
@@ -881,7 +881,7 @@ cached information about equivalent key sequences. */
881#ifdef HAVE_MENUS 881#ifdef HAVE_MENUS
882 882
883DEFUN ("x-popup-dialog", Fx_popup_dialog, Sx_popup_dialog, 2, 2, 0, 883DEFUN ("x-popup-dialog", Fx_popup_dialog, Sx_popup_dialog, 2, 2, 0,
884 /* Pop up a dialog box and return user's selection. 884 doc: /* Pop up a dialog box and return user's selection.
885POSITION specifies which frame to use. 885POSITION specifies which frame to use.
886This is normally a mouse button event or a window or frame. 886This is normally a mouse button event or a window or frame.
887If POSITION is t, it means to use the frame the mouse is on. 887If POSITION is t, it means to use the frame the mouse is on.
@@ -895,8 +895,8 @@ The return value is VALUE from the chosen item.
895An ITEM may also be just a string--that makes a nonselectable item. 895An ITEM may also be just a string--that makes a nonselectable item.
896An ITEM may also be nil--that means to put all preceding items 896An ITEM may also be nil--that means to put all preceding items
897on the left of the dialog box and all following items on the right. 897on the left of the dialog box and all following items on the right.
898\(By default, approximately half appear on each side.) */ 898\(By default, approximately half appear on each side.) */)
899 (position, contents)) 899 (position, contents)
900 Lisp_Object position, contents; 900 Lisp_Object position, contents;
901{ 901{
902 struct frame * f = NULL; 902 struct frame * f = NULL;
@@ -2849,8 +2849,8 @@ syms_of_xmenu ()
2849 Qdebug_on_next_call = intern ("debug-on-next-call"); 2849 Qdebug_on_next_call = intern ("debug-on-next-call");
2850 staticpro (&Qdebug_on_next_call); 2850 staticpro (&Qdebug_on_next_call);
2851 2851
2852 DEFVAR_LISP ("menu-updating-frame", &Vmenu_updating_frame 2852 DEFVAR_LISP ("menu-updating-frame", &Vmenu_updating_frame,
2853 /* Frame for which we are updating a menu. 2853 doc: /* Frame for which we are updating a menu.
2854The enable predicate for a menu command should check this variable. */); 2854The enable predicate for a menu command should check this variable. */);
2855 Vmenu_updating_frame = Qnil; 2855 Vmenu_updating_frame = Qnil;
2856 2856
diff --git a/src/xterm.c b/src/xterm.c
index 492966253de..7215650534c 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -32,7 +32,6 @@ Boston, MA 02111-1307, USA. */
32 32
33#ifdef HAVE_X_WINDOWS 33#ifdef HAVE_X_WINDOWS
34 34
35#define DOC_STRINGS_IN_COMMENTS
36#include "lisp.h" 35#include "lisp.h"
37#include "blockinput.h" 36#include "blockinput.h"
38 37
@@ -14799,22 +14798,22 @@ syms_of_xterm ()
14799 staticpro (&previous_help_echo); 14798 staticpro (&previous_help_echo);
14800 help_echo_pos = -1; 14799 help_echo_pos = -1;
14801 14800
14802 DEFVAR_BOOL ("x-stretch-cursor", &x_stretch_cursor_p 14801 DEFVAR_BOOL ("x-stretch-cursor", &x_stretch_cursor_p,
14803 /* *Non-nil means draw block cursor as wide as the glyph under it. 14802 doc: /* *Non-nil means draw block cursor as wide as the glyph under it.
14804For example, if a block cursor is over a tab, it will be drawn as 14803For example, if a block cursor is over a tab, it will be drawn as
14805wide as that tab on the display. */); 14804wide as that tab on the display. */);
14806 x_stretch_cursor_p = 0; 14805 x_stretch_cursor_p = 0;
14807 14806
14808 DEFVAR_BOOL ("x-use-underline-position-properties", 14807 DEFVAR_BOOL ("x-use-underline-position-properties",
14809 &x_use_underline_position_properties 14808 &x_use_underline_position_properties,
14810 /* *Non-nil means make use of UNDERLINE_POSITION font properties. 14809 doc: /* *Non-nil means make use of UNDERLINE_POSITION font properties.
14811Nil means ignore them. If you encounter fonts with bogus 14810Nil means ignore them. If you encounter fonts with bogus
14812UNDERLINE_POSITION font properties, for example 7x13 on XFree prior 14811UNDERLINE_POSITION font properties, for example 7x13 on XFree prior
14813to 4.1, set this to nil. */); 14812to 4.1, set this to nil. */);
14814 x_use_underline_position_properties = 1; 14813 x_use_underline_position_properties = 1;
14815 14814
14816 DEFVAR_LISP ("x-toolkit-scroll-bars", &Vx_toolkit_scroll_bars 14815 DEFVAR_LISP ("x-toolkit-scroll-bars", &Vx_toolkit_scroll_bars,
14817 /* What X toolkit scroll bars Emacs uses. 14816 doc: /* What X toolkit scroll bars Emacs uses.
14818A value of nil means Emacs doesn't use X toolkit scroll bars. 14817A value of nil means Emacs doesn't use X toolkit scroll bars.
14819Otherwise, value is a symbol describing the X toolkit. */); 14818Otherwise, value is a symbol describing the X toolkit. */);
14820#ifdef USE_TOOLKIT_SCROLL_BARS 14819#ifdef USE_TOOLKIT_SCROLL_BARS