changeset 41001:a17c8b15ef1b

Change doc-string comments to `new style' [w/`doc:' keyword].
author Pavel Janík <Pavel@Janik.cz>
date Tue, 13 Nov 2001 07:48:37 +0000
parents 030176b8a696
children 0253546645c4
files src/cmds.c src/composite.c src/dired.c src/doc.c src/filelock.c src/floatfns.c src/fontset.c src/insdel.c src/keymap.c
diffstat 9 files changed, 597 insertions(+), 594 deletions(-) [+]
line wrap: on
line diff
--- a/src/cmds.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/cmds.c	Tue Nov 13 07:48:37 2001 +0000
@@ -44,8 +44,8 @@
 extern Lisp_Object Qface;
 
 DEFUN ("forward-point", Fforward_point, Sforward_point, 1, 1, 0,
-  "Return buffer position N characters after (before if N negative) point.")
-  (n)
+       doc: /* Return buffer position N characters after (before if N negative) point.  */)
+     (n)
      Lisp_Object n;
 {
   CHECK_NUMBER (n);
@@ -54,9 +54,9 @@
 }
 
 DEFUN ("forward-char", Fforward_char, Sforward_char, 0, 1, "p",
-  "Move point right N characters (left if N is negative).\n\
-On reaching end of buffer, stop and signal error.")
-  (n)
+       doc: /* Move point right N characters (left if N is negative).
+On reaching end of buffer, stop and signal error.  */)
+     (n)
      Lisp_Object n;
 {
   if (NILP (n))
@@ -90,9 +90,9 @@
 }
 
 DEFUN ("backward-char", Fbackward_char, Sbackward_char, 0, 1, "p",
-  "Move point left N characters (right if N is negative).\n\
-On attempt to pass beginning or end of buffer, stop and signal error.")
-  (n)
+       doc: /* Move point left N characters (right if N is negative).
+On attempt to pass beginning or end of buffer, stop and signal error.  */)
+     (n)
      Lisp_Object n;
 {
   if (NILP (n))
@@ -105,14 +105,14 @@
 }
 
 DEFUN ("forward-line", Fforward_line, Sforward_line, 0, 1, "p",
-  "Move N lines forward (backward if N is negative).\n\
-Precisely, if point is on line I, move to the start of line I + N.\n\
-If there isn't room, go as far as possible (no error).\n\
-Returns the count of lines left to move.  If moving forward,\n\
-that is N - number of lines moved; if backward, N + number moved.\n\
-With positive N, a non-empty line at the end counts as one line\n\
-  successfully moved (for the return value).")
-  (n)
+       doc: /* Move N lines forward (backward if N is negative).
+Precisely, if point is on line I, move to the start of line I + N.
+If there isn't room, go as far as possible (no error).
+Returns the count of lines left to move.  If moving forward,
+that is N - number of lines moved; if backward, N + number moved.
+With positive N, a non-empty line at the end counts as one line
+  successfully moved (for the return value).  */)
+     (n)
      Lisp_Object n;
 {
   int opoint = PT, opoint_byte = PT_BYTE;
@@ -198,11 +198,11 @@
 }
 
 DEFUN ("delete-char", Fdelete_char, Sdelete_char, 1, 2, "p\nP",
-  "Delete the following N characters (previous if N is negative).\n\
-Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).\n\
-Interactively, N is the prefix arg, and KILLFLAG is set if\n\
-N was explicitly specified.")
-  (n, killflag)
+       doc: /* Delete the following N characters (previous if N is negative).
+Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
+Interactively, N is the prefix arg, and KILLFLAG is set if
+N was explicitly specified.  */)
+     (n, killflag)
      Lisp_Object n, killflag;
 {
   int pos;
@@ -235,12 +235,12 @@
 }
 
 DEFUN ("delete-backward-char", Fdelete_backward_char, Sdelete_backward_char,
-  1, 2, "p\nP",
-  "Delete the previous N characters (following if N is negative).\n\
-Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).\n\
-Interactively, N is the prefix arg, and KILLFLAG is set if\n\
-N was explicitly specified.")
-  (n, killflag)
+       1, 2, "p\nP",
+       doc: /* Delete the previous N characters (following if N is negative).
+Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
+Interactively, N is the prefix arg, and KILLFLAG is set if
+N was explicitly specified.  */)
+     (n, killflag)
      Lisp_Object n, killflag;
 {
   Lisp_Object value;
@@ -287,9 +287,9 @@
 }
 
 DEFUN ("self-insert-command", Fself_insert_command, Sself_insert_command, 1, 1, "p",
-  "Insert the character you type.\n\
-Whichever character you type to run this command is inserted.")
-  (n)
+       doc: /* Insert the character you type.
+Whichever character you type to run this command is inserted.  */)
+     (n)
      Lisp_Object n;
 {
   int character = XINT (last_command_char);
@@ -534,18 +534,18 @@
   staticpro (&Qoverwrite_mode_binary);
 
   DEFVAR_LISP ("self-insert-face", &Vself_insert_face,
-    "If non-nil, set the face of the next self-inserting character to this.\n\
-See also `self-insert-face-command'.");
+	       doc: /* If non-nil, set the face of the next self-inserting character to this.
+See also `self-insert-face-command'.  */);
   Vself_insert_face = Qnil;
 
   DEFVAR_LISP ("self-insert-face-command", &Vself_insert_face_command,
-    "This is the command that set up `self-insert-face'.\n\
-If `last-command' does not equal this value, we ignore `self-insert-face'.");
+	       doc: /* This is the command that set up `self-insert-face'.
+If `last-command' does not equal this value, we ignore `self-insert-face'.  */);
   Vself_insert_face_command = Qnil;
 
   DEFVAR_LISP ("blink-paren-function", &Vblink_paren_function,
-    "Function called, if non-nil, whenever a close parenthesis is inserted.\n\
-More precisely, a char with closeparen syntax is self-inserted.");
+	       doc: /* Function called, if non-nil, whenever a close parenthesis is inserted.
+More precisely, a char with closeparen syntax is self-inserted.  */);
   Vblink_paren_function = Qnil;
 
   defsubr (&Sforward_point);
--- a/src/composite.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/composite.c	Tue Nov 13 07:48:37 2001 +0000
@@ -717,12 +717,12 @@
 
 DEFUN ("compose-region-internal", Fcompose_region_internal,
        Scompose_region_internal, 2, 4, 0,
-  "Internal use only.\n\
-\n\
-Compose text in the region between START and END.\n\
-Optional 3rd and 4th arguments are COMPONENTS and MODIFICATION-FUNC\n\
-for the composition.   See `compose-region' for more detial.")
-  (start, end, components, mod_func)
+       doc: /* Internal use only.
+
+Compose text in the region between START and END.
+Optional 3rd and 4th arguments are COMPONENTS and MODIFICATION-FUNC
+for the composition.   See `compose-region' for more detial. */)
+     (start, end, components, mod_func)
      Lisp_Object start, end, components, mod_func;
 {
   validate_region (&start, &end);
@@ -738,12 +738,12 @@
 
 DEFUN ("compose-string-internal", Fcompose_string_internal,
        Scompose_string_internal, 3, 5, 0,
-  "Internal use only.\n\
-\n\
-Compose text between indices START and END of STRING.\n\
-Optional 4th and 5th arguments are COMPONENTS and MODIFICATION-FUNC\n\
-for the composition.   See `compose-string' for more detial.")
-  (string, start, end, components, mod_func)
+       doc: /* Internal use only.
+
+Compose text between indices START and END of STRING.
+Optional 4th and 5th arguments are COMPONENTS and MODIFICATION-FUNC
+for the composition.   See `compose-string' for more detial.  */)
+     (string, start, end, components, mod_func)
      Lisp_Object string, start, end, components, mod_func;
 {
   CHECK_STRING (string);
@@ -761,11 +761,11 @@
 
 DEFUN ("find-composition-internal", Ffind_composition_internal,
        Sfind_composition_internal, 4, 4, 0, 
-  "Internal use only.\n\
-\n\
-Return information about composition at or nearest to position POS.\n\
-See `find-composition' for more detail.")
-  (pos, limit, string, detail_p)
+       doc: /* Internal use only.
+
+Return information about composition at or nearest to position POS.
+See `find-composition' for more detail.  */)
+     (pos, limit, string, detail_p)
      Lisp_Object pos, limit, string, detail_p;
 {
   Lisp_Object prop, tail;
@@ -861,17 +861,17 @@
     = Fcons (Fcons (Qcomposition, Qt), Vtext_property_default_nonsticky);
 
   DEFVAR_LISP ("compose-chars-after-function", &Vcompose_chars_after_function,
-    "Function to adjust composition of buffer text.\n\
-\n\
-The function is called with three arguments FROM, TO, and OBJECT.\n\
-FROM and TO specify the range of text of which composition should be\n\
-adjusted.  OBJECT, if non-nil, is a string that contains the text.\n\
-\n\
-This function is called after a text with `composition' property is\n\
-inserted or deleted to keep `composition' property of buffer text\n\
-valid.\n\
-\n\
-The default value is the function `compose-chars-after'.");
+	       doc: /* Function to adjust composition of buffer text.
+
+The function is called with three arguments FROM, TO, and OBJECT.
+FROM and TO specify the range of text of which composition should be
+adjusted.  OBJECT, if non-nil, is a string that contains the text.
+
+This function is called after a text with `composition' property is
+inserted or deleted to keep `composition' property of buffer text
+valid.
+
+The default value is the function `compose-chars-after'.  */);
   Vcompose_chars_after_function = intern ("compose-chars-after");
 
   Qcomposition_function_table = intern ("composition-function-table");
@@ -885,16 +885,16 @@
   Fput (Qcomposition_function_table, Qchar_table_extra_slots, make_number (0));
 
   DEFVAR_LISP ("composition-function-table", &Vcomposition_function_table,
-    "Char table of patterns and functions to make a composition.\n\
-\n\
-Each element is nil or an alist of PATTERNs vs FUNCs, where PATTERNs\n\
-are regular expressions and FUNCs are functions.  FUNC is responsible\n\
-for composing text matching the corresponding PATTERN.  FUNC is called\n\
-with three arguments FROM, TO, and PATTERN.  See the function\n\
-`compose-chars-after' for more detail.\n\
-\n\
-This table is looked up by the first character of a composition when\n\
-the composition gets invalid after a change in a buffer.");
+	       doc: /* Char table of patterns and functions to make a composition.
+
+Each element is nil or an alist of PATTERNs vs FUNCs, where PATTERNs
+are regular expressions and FUNCs are functions.  FUNC is responsible
+for composing text matching the corresponding PATTERN.  FUNC is called
+with three arguments FROM, TO, and PATTERN.  See the function
+`compose-chars-after' for more detail.
+
+This table is looked up by the first character of a composition when
+the composition gets invalid after a change in a buffer.  */);
   Vcomposition_function_table
     = Fmake_char_table (Qcomposition_function_table, Qnil);
 
--- a/src/dired.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/dired.c	Tue Nov 13 07:48:37 2001 +0000
@@ -332,14 +332,14 @@
 
 
 DEFUN ("directory-files", Fdirectory_files, Sdirectory_files, 1, 4, 0,
-  "Return a list of names of files in DIRECTORY.\n\
-There are three optional arguments:\n\
-If FULL is non-nil, return absolute file names.  Otherwise return names\n\
- that are relative to the specified directory.\n\
-If MATCH is non-nil, mention only file names that match the regexp MATCH.\n\
-If NOSORT is non-nil, the list is not sorted--its order is unpredictable.\n\
- NOSORT is useful if you plan to sort the result yourself.")
-  (directory, full, match, nosort)
+       doc: /* Return a list of names of files in DIRECTORY.
+There are three optional arguments:
+If FULL is non-nil, return absolute file names.  Otherwise return names
+ that are relative to the specified directory.
+If MATCH is non-nil, mention only file names that match the regexp MATCH.
+If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
+ NOSORT is useful if you plan to sort the result yourself.  */)
+     (directory, full, match, nosort)
      Lisp_Object directory, full, match, nosort;
 {
   Lisp_Object handler;
@@ -363,15 +363,16 @@
   return directory_files_internal (directory, full, match, nosort, 0);
 }
 
-DEFUN ("directory-files-and-attributes", Fdirectory_files_and_attributes, Sdirectory_files_and_attributes, 1, 4, 0,
-  "Return a list of names of files and their attributes in DIRECTORY.\n\
-There are three optional arguments:\n\
-If FULL is non-nil, return absolute file names.  Otherwise return names\n\
- that are relative to the specified directory.\n\
-If MATCH is non-nil, mention only file names that match the regexp MATCH.\n\
-If NOSORT is non-nil, the list is not sorted--its order is unpredictable.\n\
- NOSORT is useful if you plan to sort the result yourself.")
-  (directory, full, match, nosort)
+DEFUN ("directory-files-and-attributes", Fdirectory_files_and_attributes,
+       Sdirectory_files_and_attributes, 1, 4, 0,
+       doc: /* Return a list of names of files and their attributes in DIRECTORY.
+There are three optional arguments:
+If FULL is non-nil, return absolute file names.  Otherwise return names
+ that are relative to the specified directory.
+If MATCH is non-nil, mention only file names that match the regexp MATCH.
+If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
+ NOSORT is useful if you plan to sort the result yourself.  */)
+     (directory, full, match, nosort)
      Lisp_Object directory, full, match, nosort;
 {
   Lisp_Object handler;
@@ -399,16 +400,16 @@
 Lisp_Object file_name_completion ();
 
 DEFUN ("file-name-completion", Ffile_name_completion, Sfile_name_completion,
-  2, 2, 0,
-  "Complete file name FILE in directory DIRECTORY.\n\
-Returns the longest string\n\
-common to all file names in DIRECTORY that start with FILE.\n\
-If there is only one and FILE matches it exactly, returns t.\n\
-Returns nil if DIR contains no name starting with FILE.\n\
-\n\
-This function ignores some of the possible completions as\n\
-determined by the variable `completion-ignored-extensions', which see.")
-  (file, directory)
+       2, 2, 0,
+       doc: /* Complete file name FILE in directory DIRECTORY.
+Returns the longest string
+common to all file names in DIRECTORY that start with FILE.
+If there is only one and FILE matches it exactly, returns t.
+Returns nil if DIR contains no name starting with FILE.
+
+This function ignores some of the possible completions as
+determined by the variable `completion-ignored-extensions', which see.  */)
+     (file, directory)
      Lisp_Object file, directory;
 {
   Lisp_Object handler;
@@ -429,10 +430,10 @@
 }
 
 DEFUN ("file-name-all-completions", Ffile_name_all_completions,
-  Sfile_name_all_completions, 2, 2, 0,
-  "Return a list of all completions of file name FILE in directory DIRECTORY.\n\
-These are all file names in directory DIRECTORY which begin with FILE.")
-  (file, directory)
+       Sfile_name_all_completions, 2, 2, 0,
+       doc: /* Return a list of all completions of file name FILE in directory DIRECTORY.
+These are all file names in directory DIRECTORY which begin with FILE.  */)
+     (file, directory)
      Lisp_Object file, directory;
 {
   Lisp_Object handler;
@@ -787,18 +788,18 @@
 #ifdef VMS
 
 DEFUN ("file-name-all-versions", Ffile_name_all_versions,
-  Sfile_name_all_versions, 2, 2, 0,
-  "Return a list of all versions of file name FILE in directory DIRECTORY.")
-  (file, directory)
+       Sfile_name_all_versions, 2, 2, 0,
+       doc: /* Return a list of all versions of file name FILE in directory DIRECTORY.  */)
+     (file, directory)
      Lisp_Object file, directory;
 {
   return file_name_completion (file, directory, 1, 1);
 }
 
 DEFUN ("file-version-limit", Ffile_version_limit, Sfile_version_limit, 1, 1, 0,
-  "Return the maximum number of versions allowed for FILE.\n\
-Returns nil if the file cannot be opened or if there is no version limit.")
-  (filename)
+       doc: /* Return the maximum number of versions allowed for FILE.
+Returns nil if the file cannot be opened or if there is no version limit.  */)
+     (filename)
      Lisp_Object filename;
 {
   Lisp_Object retval;
@@ -834,29 +835,29 @@
 }
 
 DEFUN ("file-attributes", Ffile_attributes, Sfile_attributes, 1, 1, 0,
-  "Return a list of attributes of file FILENAME.\n\
-Value is nil if specified file cannot be opened.\n\
-Otherwise, list elements are:\n\
- 0. t for directory, string (name linked to) for symbolic link, or nil.\n\
- 1. Number of links to file.\n\
- 2. File uid.\n\
- 3. File gid.\n\
- 4. Last access time, as a list of two integers.\n\
-  First integer has high-order 16 bits of time, second has low 16 bits.\n\
- 5. Last modification time, likewise.\n\
- 6. Last status change time, likewise.\n\
- 7. Size in bytes.\n\
-  This is a floating point number if the size is too large for an integer.\n\
- 8. File modes, as a string of ten letters or dashes as in ls -l.\n\
- 9. t iff file's gid would change if file were deleted and recreated.\n\
-10. inode number.  If inode number is larger than the Emacs integer,\n\
-  this is a cons cell containing two integers: first the high part,\n\
-  then the low 16 bits.\n\
-11. Device number.  If it is larger than the Emacs integer, this is\n\
-  a cons cell, similar to the inode number.\n\
-\n\
-If file does not exist, returns nil.")
-  (filename)
+       doc: /* Return a list of attributes of file FILENAME.
+Value is nil if specified file cannot be opened.
+Otherwise, list elements are:
+ 0. t for directory, string (name linked to) for symbolic link, or nil.
+ 1. Number of links to file.
+ 2. File uid.
+ 3. File gid.
+ 4. Last access time, as a list of two integers.
+  First integer has high-order 16 bits of time, second has low 16 bits.
+ 5. Last modification time, likewise.
+ 6. Last status change time, likewise.
+ 7. Size in bytes.
+  This is a floating point number if the size is too large for an integer.
+ 8. File modes, as a string of ten letters or dashes as in ls -l.
+ 9. t iff file's gid would change if file were deleted and recreated.
+10. inode number.  If inode number is larger than the Emacs integer,
+  this is a cons cell containing two integers: first the high part,
+  then the low 16 bits.
+11. Device number.  If it is larger than the Emacs integer, this is
+  a cons cell, similar to the inode number.
+
+If file does not exist, returns nil.  */)
+     (filename)
      Lisp_Object filename;
 {
   Lisp_Object values[12];
@@ -937,9 +938,9 @@
 }
 
 DEFUN ("file-attributes-lessp", Ffile_attributes_lessp, Sfile_attributes_lessp, 2, 2, 0,
-  "Return t if first arg file attributes list is less than second.\n\
-Comparison is in lexicographic order and case is significant.")
-  (f1, f2)
+       doc: /* Return t if first arg file attributes list is less than second.
+Comparison is in lexicographic order and case is significant.  */)
+     (f1, f2)
      Lisp_Object f1, f2;
 {
   return Fstring_lessp (Fcar (f1), Fcar (f2));
@@ -979,10 +980,10 @@
 #endif /* VMS */
 
   DEFVAR_LISP ("completion-ignored-extensions", &Vcompletion_ignored_extensions,
-    "*Completion ignores filenames ending in any string in this list.\n\
-Directories are ignored if they match any string in this list which\n\
-ends in a slash.\n\
-This variable does not affect lists of possible completions,\n\
-but does affect the commands that actually do completions.");
+	       doc: /* *Completion ignores filenames ending in any string in this list.
+Directories are ignored if they match any string in this list which
+ends in a slash.
+This variable does not affect lists of possible completions,
+but does affect the commands that actually do completions.  */);
   Vcompletion_ignored_extensions = Qnil;
 }
--- a/src/doc.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/doc.c	Tue Nov 13 07:48:37 2001 +0000
@@ -304,10 +304,10 @@
 }
 
 DEFUN ("documentation", Fdocumentation, Sdocumentation, 1, 2, 0,
-  "Return the documentation string of FUNCTION.\n\
-Unless a non-nil second argument RAW is given, the\n\
-string is passed through `substitute-command-keys'.")
-  (function, raw)
+       doc: /* Return the documentation string of FUNCTION.
+Unless a non-nil second argument RAW is given, the
+string is passed through `substitute-command-keys'.  */)
+     (function, raw)
      Lisp_Object function, raw;
 {
   Lisp_Object fun;
@@ -391,13 +391,13 @@
 
 DEFUN ("documentation-property", Fdocumentation_property,
        Sdocumentation_property, 2, 3, 0,
-  "Return the documentation string that is SYMBOL's PROP property.\n\
-Third argument RAW omitted or nil means pass the result through\n\
-`substitute-command-keys' if it is a string.\n\
-\n\
-This differs from `get' in that it can refer to strings stored in the\n\
-`etc/DOC' file; and that it evaluates documentation properties that\n\
-aren't strings.")
+       doc: /* Return the documentation string that is SYMBOL's PROP property.
+Third argument RAW omitted or nil means pass the result through
+`substitute-command-keys' if it is a string.
+
+This differs from `get' in that it can refer to strings stored in the
+`etc/DOC' file; and that it evaluates documentation properties that
+aren't strings.  */)
   (symbol, prop, raw)
      Lisp_Object symbol, prop, raw;
 {
@@ -461,14 +461,14 @@
 
 
 DEFUN ("Snarf-documentation", Fsnarf_documentation, Ssnarf_documentation,
-  1, 1, 0,
-  "Used during Emacs initialization, before dumping runnable Emacs,\n\
-to find pointers to doc strings stored in `etc/DOC...' and\n\
-record them in function definitions.\n\
-One arg, FILENAME, a string which does not include a directory.\n\
-The file is found in `../etc' now; found in the `data-directory'\n\
-when doc strings are referred to later in the dumped Emacs.")
-  (filename)
+       1, 1, 0,
+       doc: /* Used during Emacs initialization, before dumping runnable Emacs,
+to find pointers to doc strings stored in `etc/DOC...' and
+record them in function definitions.
+One arg, FILENAME, a string which does not include a directory.
+The file is found in `../etc' now; found in the `data-directory'
+when doc strings are referred to later in the dumped Emacs.  */)
+     (filename)
      Lisp_Object filename;
 {
   int fd;
@@ -568,18 +568,18 @@
 }
 
 DEFUN ("substitute-command-keys", Fsubstitute_command_keys,
-  Ssubstitute_command_keys, 1, 1, 0,
-  "Substitute key descriptions for command names in STRING.\n\
-Return a new string which is STRING with substrings of the form \\=\\[COMMAND]\n\
-replaced by either:  a keystroke sequence that will invoke COMMAND,\n\
-or \"M-x COMMAND\" if COMMAND is not on any keys.\n\
-Substrings of the form \\=\\{MAPVAR} are replaced by summaries\n\
-\(made by describe-bindings) of the value of MAPVAR, taken as a keymap.\n\
-Substrings of the form \\=\\<MAPVAR> specify to use the value of MAPVAR\n\
-as the keymap for future \\=\\[COMMAND] substrings.\n\
-\\=\\= quotes the following character and is discarded;\n\
-thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ into the output.")
-  (string)
+       Ssubstitute_command_keys, 1, 1, 0,
+       doc: /* Substitute key descriptions for command names in STRING.
+Return a new string which is STRING with substrings of the form \\=\\[COMMAND]
+replaced by either:  a keystroke sequence that will invoke COMMAND,
+or "M-x COMMAND" if COMMAND is not on any keys.
+Substrings of the form \\=\\{MAPVAR} are replaced by summaries
+\(made by describe-bindings) of the value of MAPVAR, taken as a keymap.
+Substrings of the form \\=\\<MAPVAR> specify to use the value of MAPVAR
+as the keymap for future \\=\\[COMMAND] substrings.
+\\=\\= quotes the following character and is discarded;
+thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ into the output.  */)
+     (string)
      Lisp_Object string;
 {
   unsigned char *buf;
@@ -815,7 +815,7 @@
   staticpro (&Qfunction_documentation);
   
   DEFVAR_LISP ("internal-doc-file-name", &Vdoc_file_name,
-    "Name of file containing documentation strings of built-in symbols.");
+	       doc: /* Name of file containing documentation strings of built-in symbols.  */);
   Vdoc_file_name = Qnil;
 
   defsubr (&Sdocumentation);
--- a/src/filelock.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/filelock.c	Tue Nov 13 07:48:37 2001 +0000
@@ -673,11 +673,11 @@
 }
 
 DEFUN ("lock-buffer", Flock_buffer, Slock_buffer,
-  0, 1, 0,
-  "Lock FILE, if current buffer is modified.\n\
-FILE defaults to current buffer's visited file,\n\
-or else nothing is done if current buffer isn't visiting a file.")
-  (file)
+       0, 1, 0,
+       doc: /* Lock FILE, if current buffer is modified.
+FILE defaults to current buffer's visited file,
+or else nothing is done if current buffer isn't visiting a file.  */)
+     (file)
      Lisp_Object file;
 {
   if (NILP (file))
@@ -691,10 +691,10 @@
 }
 
 DEFUN ("unlock-buffer", Funlock_buffer, Sunlock_buffer,
-  0, 0, 0,
- "Unlock the file visited in the current buffer,\n\
-if it should normally be locked.")
-  ()
+       0, 0, 0,
+       doc: /* Unlock the file visited in the current buffer,
+if it should normally be locked.  */)
+     ()
 {
   if (SAVE_MODIFF < MODIFF
       && STRINGP (current_buffer->file_truename))
@@ -714,10 +714,10 @@
 }
 
 DEFUN ("file-locked-p", Ffile_locked_p, Sfile_locked_p, 1, 1, 0,
-  "Return nil if the FILENAME is not locked,\n\
-t if it is locked by you, else a string of the name of the locker.")
-  (filename)
-  Lisp_Object filename;
+       doc: /* Return nil if the FILENAME is not locked,
+t if it is locked by you, else a string of the name of the locker.  */)
+     (filename)
+     Lisp_Object filename;
 {
   Lisp_Object ret;
   register char *lfname;
@@ -755,7 +755,7 @@
 syms_of_filelock ()
 {
   DEFVAR_LISP ("temporary-file-directory", &Vtemporary_file_directory,
-    "The directory for writing temporary files.");
+	       doc: /* The directory for writing temporary files.  */);
   Vtemporary_file_directory = Qnil;
 
   defsubr (&Sunlock_buffer);
--- a/src/floatfns.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/floatfns.c	Tue Nov 13 07:48:37 2001 +0000
@@ -228,8 +228,8 @@
 /* Trig functions.  */
 
 DEFUN ("acos", Facos, Sacos, 1, 1, 0,
-  "Return the inverse cosine of ARG.")
-  (arg)
+       doc: /* Return the inverse cosine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -242,8 +242,8 @@
 }
 
 DEFUN ("asin", Fasin, Sasin, 1, 1, 0,
-  "Return the inverse sine of ARG.")
-  (arg)
+       doc: /* Return the inverse sine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -256,8 +256,8 @@
 }
 
 DEFUN ("atan", Fatan, Satan, 1, 1, 0,
-  "Return the inverse tangent of ARG.")
-  (arg)
+       doc: /* Return the inverse tangent of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -266,8 +266,8 @@
 }
 
 DEFUN ("cos", Fcos, Scos, 1, 1, 0,
-  "Return the cosine of ARG.")
-  (arg)
+       doc: /* Return the cosine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -276,8 +276,8 @@
 }
 
 DEFUN ("sin", Fsin, Ssin, 1, 1, 0,
-  "Return the sine of ARG.")
-  (arg)
+       doc: /* Return the sine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -286,8 +286,8 @@
 }
 
 DEFUN ("tan", Ftan, Stan, 1, 1, 0,
-  "Return the tangent of ARG.")
-  (arg)
+       doc: /* Return the tangent of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -303,8 +303,8 @@
 #if 0 /* Leave these out unless we find there's a reason for them.  */
 
 DEFUN ("bessel-j0", Fbessel_j0, Sbessel_j0, 1, 1, 0,
-  "Return the bessel function j0 of ARG.")
-  (arg)
+       doc: /* Return the bessel function j0 of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -313,8 +313,8 @@
 }
 
 DEFUN ("bessel-j1", Fbessel_j1, Sbessel_j1, 1, 1, 0,
-  "Return the bessel function j1 of ARG.")
-  (arg)
+       doc: /* Return the bessel function j1 of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -323,9 +323,9 @@
 }
 
 DEFUN ("bessel-jn", Fbessel_jn, Sbessel_jn, 2, 2, 0,
-  "Return the order N bessel function output jn of ARG.\n\
-The first arg (the order) is truncated to an integer.")
-  (n, arg)
+       doc: /* Return the order N bessel function output jn of ARG.
+The first arg (the order) is truncated to an integer.  */)
+     (n, arg)
      register Lisp_Object n, arg;
 {
   int i1 = extract_float (n);
@@ -336,8 +336,8 @@
 }
 
 DEFUN ("bessel-y0", Fbessel_y0, Sbessel_y0, 1, 1, 0,
-  "Return the bessel function y0 of ARG.")
-  (arg)
+       doc: /* Return the bessel function y0 of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -346,8 +346,8 @@
 }
 
 DEFUN ("bessel-y1", Fbessel_y1, Sbessel_y1, 1, 1, 0,
-  "Return the bessel function y1 of ARG.")
-  (arg)
+       doc: /* Return the bessel function y1 of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -356,9 +356,9 @@
 }
 
 DEFUN ("bessel-yn", Fbessel_yn, Sbessel_yn, 2, 2, 0,
-  "Return the order N bessel function output yn of ARG.\n\
-The first arg (the order) is truncated to an integer.")
-  (n, arg)
+       doc: /* Return the order N bessel function output yn of ARG.
+The first arg (the order) is truncated to an integer.  */)
+     (n, arg)
      register Lisp_Object n, arg;
 {
   int i1 = extract_float (n);
@@ -373,8 +373,8 @@
 #if 0 /* Leave these out unless we see they are worth having.  */
 
 DEFUN ("erf", Ferf, Serf, 1, 1, 0,
-  "Return the mathematical error function of ARG.")
-  (arg)
+       doc: /* Return the mathematical error function of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -383,8 +383,8 @@
 }
 
 DEFUN ("erfc", Ferfc, Serfc, 1, 1, 0,
-  "Return the complementary error function of ARG.")
-  (arg)
+       doc: /* Return the complementary error function of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -393,8 +393,8 @@
 }
 
 DEFUN ("log-gamma", Flog_gamma, Slog_gamma, 1, 1, 0,
-  "Return the log gamma of ARG.")
-  (arg)
+       doc: /* Return the log gamma of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -403,8 +403,8 @@
 }
 
 DEFUN ("cube-root", Fcube_root, Scube_root, 1, 1, 0,
-  "Return the cube root of ARG.")
-  (arg)
+       doc: /* Return the cube root of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -422,8 +422,8 @@
 #endif
 
 DEFUN ("exp", Fexp, Sexp, 1, 1, 0,
-  "Return the exponential base e of ARG.")
-  (arg)
+       doc: /* Return the exponential base e of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -439,8 +439,8 @@
 }
 
 DEFUN ("expt", Fexpt, Sexpt, 2, 2, 0,
-  "Return the exponential ARG1 ** ARG2.")
-  (arg1, arg2)
+       doc: /* Return the exponential ARG1 ** ARG2.  */)
+     (arg1, arg2)
      register Lisp_Object arg1, arg2;
 {
   double f1, f2;
@@ -493,9 +493,9 @@
 }
 
 DEFUN ("log", Flog, Slog, 1, 2, 0,
-  "Return the natural logarithm of ARG.\n\
-If second optional argument BASE is given, return log ARG using that base.")
-  (arg, base)
+       doc: /* Return the natural logarithm of ARG.
+If second optional argument BASE is given, return log ARG using that base.  */)
+     (arg, base)
      register Lisp_Object arg, base;
 {
   double d = extract_float (arg);
@@ -523,8 +523,8 @@
 }
 
 DEFUN ("log10", Flog10, Slog10, 1, 1, 0,
-  "Return the logarithm base 10 of ARG.")
-  (arg)
+       doc: /* Return the logarithm base 10 of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -537,8 +537,8 @@
 }
 
 DEFUN ("sqrt", Fsqrt, Ssqrt, 1, 1, 0,
-  "Return the square root of ARG.")
-  (arg)
+       doc: /* Return the square root of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -553,8 +553,8 @@
 #if 0 /* Not clearly worth adding.  */
 
 DEFUN ("acosh", Facosh, Sacosh, 1, 1, 0,
-  "Return the inverse hyperbolic cosine of ARG.")
-  (arg)
+       doc: /* Return the inverse hyperbolic cosine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -571,8 +571,8 @@
 }
 
 DEFUN ("asinh", Fasinh, Sasinh, 1, 1, 0,
-  "Return the inverse hyperbolic sine of ARG.")
-  (arg)
+       doc: /* Return the inverse hyperbolic sine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -585,8 +585,8 @@
 }
 
 DEFUN ("atanh", Fatanh, Satanh, 1, 1, 0,
-  "Return the inverse hyperbolic tangent of ARG.")
-  (arg)
+       doc: /* Return the inverse hyperbolic tangent of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -603,8 +603,8 @@
 }
 
 DEFUN ("cosh", Fcosh, Scosh, 1, 1, 0,
-  "Return the hyperbolic cosine of ARG.")
-  (arg)
+       doc: /* Return the hyperbolic cosine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -617,8 +617,8 @@
 }
 
 DEFUN ("sinh", Fsinh, Ssinh, 1, 1, 0,
-  "Return the hyperbolic sine of ARG.")
-  (arg)
+       doc: /* Return the hyperbolic sine of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -631,8 +631,8 @@
 }
 
 DEFUN ("tanh", Ftanh, Stanh, 1, 1, 0,
-  "Return the hyperbolic tangent of ARG.")
-  (arg)
+       doc: /* Return the hyperbolic tangent of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -642,8 +642,8 @@
 #endif
 
 DEFUN ("abs", Fabs, Sabs, 1, 1, 0,
-  "Return the absolute value of ARG.")
-  (arg)
+       doc: /* Return the absolute value of ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   CHECK_NUMBER_OR_FLOAT (arg);
@@ -657,8 +657,8 @@
 }
 
 DEFUN ("float", Ffloat, Sfloat, 1, 1, 0,
-  "Return the floating point number equal to ARG.")
-  (arg)
+       doc: /* Return the floating point number equal to ARG.  */)
+     (arg)
      register Lisp_Object arg;
 {
   CHECK_NUMBER_OR_FLOAT (arg);
@@ -670,8 +670,8 @@
 }
 
 DEFUN ("logb", Flogb, Slogb, 1, 1, 0,
-  "Returns largest integer <= the base 2 log of the magnitude of ARG.\n\
-This is the same as the exponent of a float.")
+       doc: /* Returns largest integer <= the base 2 log of the magnitude of ARG.
+This is the same as the exponent of a float.  */)
      (arg)
      Lisp_Object arg;
 {
@@ -838,37 +838,37 @@
 }
 
 DEFUN ("ceiling", Fceiling, Sceiling, 1, 2, 0,
-  "Return the smallest integer no less than ARG.  (Round toward +inf.)\n\
-With optional DIVISOR, return the smallest integer no less than ARG/DIVISOR.")
-  (arg, divisor)
+       doc: /* Return the smallest integer no less than ARG.  (Round toward +inf.)
+With optional DIVISOR, return the smallest integer no less than ARG/DIVISOR.  */)
+     (arg, divisor)
      Lisp_Object arg, divisor;
 {
   return rounding_driver (arg, divisor, ceil, ceiling2, "ceiling");
 }
 
 DEFUN ("floor", Ffloor, Sfloor, 1, 2, 0,
-  "Return the largest integer no greater than ARG.  (Round towards -inf.)\n\
-With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR.")
-  (arg, divisor)
+       doc: /* Return the largest integer no greater than ARG.  (Round towards -inf.)
+With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR.  */)
+     (arg, divisor)
      Lisp_Object arg, divisor;
 {
   return rounding_driver (arg, divisor, floor, floor2, "floor");
 }
 
 DEFUN ("round", Fround, Sround, 1, 2, 0,
-  "Return the nearest integer to ARG.\n\
-With optional DIVISOR, return the nearest integer to ARG/DIVISOR.")
-  (arg, divisor)
+       doc: /* Return the nearest integer to ARG.
+With optional DIVISOR, return the nearest integer to ARG/DIVISOR.  */)
+     (arg, divisor)
      Lisp_Object arg, divisor;
 {
   return rounding_driver (arg, divisor, emacs_rint, round2, "round");
 }
 
 DEFUN ("truncate", Ftruncate, Struncate, 1, 2, 0,
-       "Truncate a floating point number to an int.\n\
-Rounds ARG toward zero.\n\
-With optional DIVISOR, truncate ARG/DIVISOR.")
-  (arg, divisor)
+       doc: /* Truncate a floating point number to an int.
+Rounds ARG toward zero.
+With optional DIVISOR, truncate ARG/DIVISOR.  */)
+     (arg, divisor)
      Lisp_Object arg, divisor;
 {
   return rounding_driver (arg, divisor, double_identity, truncate2,
@@ -898,9 +898,9 @@
 /* It's not clear these are worth adding.  */
 
 DEFUN ("fceiling", Ffceiling, Sfceiling, 1, 1, 0,
-  "Return the smallest integer no less than ARG, as a float.\n\
-\(Round toward +inf.\)")
-  (arg)
+       doc: /* Return the smallest integer no less than ARG, as a float.
+\(Round toward +inf.\)  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -909,9 +909,9 @@
 }
 
 DEFUN ("ffloor", Fffloor, Sffloor, 1, 1, 0,
-  "Return the largest integer no greater than ARG, as a float.\n\
-\(Round towards -inf.\)")
-  (arg)
+       doc: /* Return the largest integer no greater than ARG, as a float.
+\(Round towards -inf.\)  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -920,8 +920,8 @@
 }
 
 DEFUN ("fround", Ffround, Sfround, 1, 1, 0,
-  "Return the nearest integer to ARG, as a float.")
-  (arg)
+       doc: /* Return the nearest integer to ARG, as a float.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
@@ -930,9 +930,9 @@
 }
 
 DEFUN ("ftruncate", Fftruncate, Sftruncate, 1, 1, 0,
-  "Truncate a floating point number to an integral float value.\n\
-Rounds the value toward zero.")
-  (arg)
+       doc: /* Truncate a floating point number to an integral float value.
+Rounds the value toward zero.  */)
+     (arg)
      register Lisp_Object arg;
 {
   double d = extract_float (arg);
--- a/src/fontset.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/fontset.c	Tue Nov 13 07:48:37 2001 +0000
@@ -802,12 +802,12 @@
 
 
 DEFUN ("query-fontset", Fquery_fontset, Squery_fontset, 1, 2, 0,
-  "Return the name of a fontset that matches PATTERN.\n\
-The value is nil if there is no matching fontset.\n\
-PATTERN can contain `*' or `?' as a wildcard\n\
-just as X font name matching algorithm allows.\n\
-If REGEXPP is non-nil, PATTERN is a regular expression.")
-  (pattern, regexpp)
+       doc: /* Return the name of a fontset that matches PATTERN.
+The value is nil if there is no matching fontset.
+PATTERN can contain `*' or `?' as a wildcard
+just as X font name matching algorithm allows.
+If REGEXPP is non-nil, PATTERN is a regular expression.  */)
+     (pattern, regexpp)
      Lisp_Object pattern, regexpp;
 {
   Lisp_Object fontset;
@@ -877,9 +877,9 @@
 }
 
 DEFUN ("new-fontset", Fnew_fontset, Snew_fontset, 2, 2, 0,
-  "Create a new fontset NAME that contains font information in FONTLIST.\n\
-FONTLIST is an alist of charsets vs corresponding font name patterns.")
-  (name, fontlist)
+       doc: /* Create a new fontset NAME that contains font information in FONTLIST.
+FONTLIST is an alist of charsets vs corresponding font name patterns.  */)
+     (name, fontlist)
      Lisp_Object name, fontlist;
 {
   Lisp_Object fontset, elements, ascii_font;
@@ -976,17 +976,17 @@
 }
 
 DEFUN ("set-fontset-font", Fset_fontset_font, Sset_fontset_font, 3, 4, 0,
-  "Modify fontset NAME to use FONTNAME for CHARACTER.\n\
-\n\
-CHARACTER may be a cons; (FROM . TO), where FROM and TO are\n\
-non-generic characters.  In that case, use FONTNAME\n\
-for all characters in the range FROM and TO (inclusive).\n\
-CHARACTER may be a charset.   In that case, use FONTNAME\n\
-for all character in the charsets.\n\
-\n\
-FONTNAME may be a cons; (FAMILY . REGISTRY), where FAMILY is a family\n\
-name of a font, REGSITRY is a registry name of a font.")
-  (name, character, fontname, frame)
+       doc: /* Modify fontset NAME to use FONTNAME for CHARACTER.
+
+CHARACTER may be a cons; (FROM . TO), where FROM and TO are
+non-generic characters.  In that case, use FONTNAME
+for all characters in the range FROM and TO (inclusive).
+CHARACTER may be a charset.   In that case, use FONTNAME
+for all character in the charsets.
+
+FONTNAME may be a cons; (FAMILY . REGISTRY), where FAMILY is a family
+name of a font, REGSITRY is a registry name of a font.  */)
+     (name, character, fontname, frame)
      Lisp_Object name, character, fontname, frame;
 {
   Lisp_Object fontset, elt;
@@ -1090,20 +1090,20 @@
 }
 
 DEFUN ("font-info", Ffont_info, Sfont_info, 1, 2, 0,
-  "Return information about a font named NAME on frame FRAME.\n\
-If FRAME is omitted or nil, use the selected frame.\n\
-The returned value is a vector of OPENED-NAME, FULL-NAME, CHARSET, SIZE,\n\
-  HEIGHT, BASELINE-OFFSET, RELATIVE-COMPOSE, and DEFAULT-ASCENT,\n\
-where\n\
-  OPENED-NAME is the name used for opening the font,\n\
-  FULL-NAME is the full name of the font,\n\
-  SIZE is the maximum bound width of the font,\n\
-  HEIGHT is the height of the font,\n\
-  BASELINE-OFFSET is the upward offset pixels from ASCII baseline,\n\
-  RELATIVE-COMPOSE and DEFAULT-ASCENT are the numbers controlling\n\
-    how to compose characters.\n\
-If the named font is not yet loaded, return nil.")
-  (name, frame)
+       doc: /* Return information about a font named NAME on frame FRAME.
+If FRAME is omitted or nil, use the selected frame.
+The returned value is a vector of OPENED-NAME, FULL-NAME, CHARSET, SIZE,
+  HEIGHT, BASELINE-OFFSET, RELATIVE-COMPOSE, and DEFAULT-ASCENT,
+where
+  OPENED-NAME is the name used for opening the font,
+  FULL-NAME is the full name of the font,
+  SIZE is the maximum bound width of the font,
+  HEIGHT is the height of the font,
+  BASELINE-OFFSET is the upward offset pixels from ASCII baseline,
+  RELATIVE-COMPOSE and DEFAULT-ASCENT are the numbers controlling
+    how to compose characters.
+If the named font is not yet loaded, return nil.  */)
+     (name, frame)
      Lisp_Object name, frame;
 {
   FRAME_PTR f;
@@ -1157,8 +1157,8 @@
 
 
 DEFUN ("internal-char-font", Finternal_char_font, Sinternal_char_font, 1, 1, 0,
-  "For internal use only.")
-  (position)
+       doc: /* For internal use only.  */)
+     (position)
      Lisp_Object position;
 {
   int pos, pos_byte, dummy;
@@ -1239,23 +1239,23 @@
 
 
 DEFUN ("fontset-info", Ffontset_info, Sfontset_info, 1, 2, 0,
-  "Return information about a fontset named NAME on frame FRAME.\n\
-The value is a vector:\n\
-  [ SIZE HEIGHT ((CHARSET-OR-RANGE FONT-SPEC OPENED ...) ...) ],\n\
-where,\n\
-  SIZE is the maximum bound width of ASCII font in the fontset,\n\
-  HEIGHT is the maximum bound height of ASCII font in the fontset,\n\
-  CHARSET-OR-RANGE is a charset, a character (may be a generic character)\n\
-    or a cons of two characters specifying the range of characters.\n\
-  FONT-SPEC is a fontname pattern string or a cons (FAMILY . REGISTRY),\n\
-    where FAMILY is a `FAMILY' field of a XLFD font name,\n\
-    REGISTRY is a `CHARSET_REGISTRY' field of a XLDF font name.\n\
-    FAMILY may contain a `FOUNDARY' field at the head.\n\
-    REGISTRY may contain a `CHARSET_ENCODING' field at the tail.\n\
-  OPENEDs are names of fonts actually opened.\n\
-If the ASCII font is not yet opened, SIZE and HEIGHT are 0.\n\
-If FRAME is omitted, it defaults to the currently selected frame.")
-  (name, frame)
+       doc: /* Return information about a fontset named NAME on frame FRAME.
+The value is a vector:
+  [ SIZE HEIGHT ((CHARSET-OR-RANGE FONT-SPEC OPENED ...) ...) ],
+where,
+  SIZE is the maximum bound width of ASCII font in the fontset,
+  HEIGHT is the maximum bound height of ASCII font in the fontset,
+  CHARSET-OR-RANGE is a charset, a character (may be a generic character)
+    or a cons of two characters specifying the range of characters.
+  FONT-SPEC is a fontname pattern string or a cons (FAMILY . REGISTRY),
+    where FAMILY is a `FAMILY' field of a XLFD font name,
+    REGISTRY is a `CHARSET_REGISTRY' field of a XLDF font name.
+    FAMILY may contain a `FOUNDARY' field at the head.
+    REGISTRY may contain a `CHARSET_ENCODING' field at the tail.
+  OPENEDs are names of fonts actually opened.
+If the ASCII font is not yet opened, SIZE and HEIGHT are 0.
+If FRAME is omitted, it defaults to the currently selected frame.  */)
+     (name, frame)
      Lisp_Object name, frame;
 {
   Lisp_Object fontset;
@@ -1349,9 +1349,9 @@
 }
 
 DEFUN ("fontset-font", Ffontset_font, Sfontset_font, 2, 2, 0,
-  "Return a font name pattern for character CH in fontset NAME.\n\
-If NAME is t, find a font name pattern in the default fontset.")
-  (name, ch)
+       doc: /* Return a font name pattern for character CH in fontset NAME.
+If NAME is t, find a font name pattern in the default fontset.  */)
+     (name, ch)
      Lisp_Object name, ch;
 {
   int c;
@@ -1373,8 +1373,8 @@
   
 
 DEFUN ("fontset-list", Ffontset_list, Sfontset_list, 0, 0, 0,
-  "Return a list of all defined fontset names.")
-  ()
+       doc: /* Return a list of all defined fontset names.  */)
+     ()
 {
   Lisp_Object fontset, list;
   int i;
@@ -1430,58 +1430,58 @@
   next_fontset_id = 1;
 
   DEFVAR_LISP ("font-encoding-alist", &Vfont_encoding_alist,
-    "Alist of fontname patterns vs corresponding encoding info.\n\
-Each element looks like (REGEXP . ENCODING-INFO),\n\
- where ENCODING-INFO is an alist of CHARSET vs ENCODING.\n\
-ENCODING is one of the following integer values:\n\
-	0: code points 0x20..0x7F or 0x2020..0x7F7F are used,\n\
-	1: code points 0xA0..0xFF or 0xA0A0..0xFFFF are used,\n\
-	2: code points 0x20A0..0x7FFF are used,\n\
-	3: code points 0xA020..0xFF7F are used.");
+	       doc: /* Alist of fontname patterns vs corresponding encoding info.
+Each element looks like (REGEXP . ENCODING-INFO),
+ where ENCODING-INFO is an alist of CHARSET vs ENCODING.
+ENCODING is one of the following integer values:
+	0: code points 0x20..0x7F or 0x2020..0x7F7F are used,
+	1: code points 0xA0..0xFF or 0xA0A0..0xFFFF are used,
+	2: code points 0x20A0..0x7FFF are used,
+	3: code points 0xA020..0xFF7F are used.  */);
   Vfont_encoding_alist = Qnil;
 
   DEFVAR_LISP ("use-default-ascent", &Vuse_default_ascent,
-     "Char table of characters whose ascent values should be ignored.\n\
-If an entry for a character is non-nil, the ascent value of the glyph\n\
-is assumed to be what specified by _MULE_DEFAULT_ASCENT property of a font.\n\
-\n\
-This affects how a composite character which contains\n\
-such a character is displayed on screen.");
+	       doc: /* Char table of characters whose ascent values should be ignored.
+If an entry for a character is non-nil, the ascent value of the glyph
+is assumed to be what specified by _MULE_DEFAULT_ASCENT property of a font.
+
+This affects how a composite character which contains
+such a character is displayed on screen.  */);
   Vuse_default_ascent = Qnil;
 
   DEFVAR_LISP ("ignore-relative-composition", &Vignore_relative_composition,
-     "Char table of characters which is not composed relatively.\n\
-If an entry for a character is non-nil, a composition sequence\n\
-which contains that character is displayed so that\n\
-the glyph of that character is put without considering\n\
-an ascent and descent value of a previous character.");
+	       doc: /* Char table of characters which is not composed relatively.
+If an entry for a character is non-nil, a composition sequence
+which contains that character is displayed so that
+the glyph of that character is put without considering
+an ascent and descent value of a previous character.  */);
   Vignore_relative_composition = Qnil;
 
   DEFVAR_LISP ("alternate-fontname-alist", &Valternate_fontname_alist,
-     "Alist of fontname vs list of the alternate fontnames.\n\
-When a specified font name is not found, the corresponding\n\
-alternate fontnames (if any) are tried instead.");
+	       doc: /* Alist of fontname vs list of the alternate fontnames.
+When a specified font name is not found, the corresponding
+alternate fontnames (if any) are tried instead.  */);
   Valternate_fontname_alist = Qnil;
 
   DEFVAR_LISP ("fontset-alias-alist", &Vfontset_alias_alist,
-     "Alist of fontset names vs the aliases.");
+	       doc: /* Alist of fontset names vs the aliases.  */);
   Vfontset_alias_alist = Fcons (Fcons (FONTSET_NAME (Vdefault_fontset),
 				       build_string ("fontset-default")),
 				Qnil);
 
   DEFVAR_LISP ("highlight-wrong-size-font", &Vhighlight_wrong_size_font,
-     "*This variable is obsolete.");
+	       doc: /* *This variable is obsolete.  */);
   Vhighlight_wrong_size_font = Qnil;
 
   DEFVAR_LISP ("clip-large-size-font", &Vclip_large_size_font,
-     "*This variable is obsolete.");
+	       doc: /* *This variable is obsolete.  */);
   Vclip_large_size_font = Qt;
 
   DEFVAR_LISP ("vertical-centering-font-regexp",
 	       &Vvertical_centering_font_regexp,
-    "*Regexp matching font names that require vertical centering on display.\n\
-When a character is displayed with such fonts, the character is displayed\n\
-at the vertival center of lines.");
+	       doc: /* *Regexp matching font names that require vertical centering on display.
+When a character is displayed with such fonts, the character is displayed
+at the vertival center of lines.  */);
   Vvertical_centering_font_regexp = Qnil;
 
   defsubr (&Squery_fontset);
--- a/src/insdel.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/insdel.c	Tue Nov 13 07:48:37 2001 +0000
@@ -2064,9 +2064,9 @@
 }
 
 DEFUN ("combine-after-change-execute", Fcombine_after_change_execute,
-  Scombine_after_change_execute, 0, 0, 0,
-  "This function is for use internally in `combine-after-change-calls'.")
-  ()
+       Scombine_after_change_execute, 0, 0, 0,
+       doc: /* This function is for use internally in `combine-after-change-calls'.  */)
+     ()
 {
   int count = specpdl_ptr - specpdl;
   int beg, end, change;
@@ -2145,16 +2145,16 @@
   combine_after_change_buffer = Qnil;
 
   DEFVAR_BOOL ("check-markers-debug-flag", &check_markers_debug_flag,
-    "Non-nil means enable debugging checks for invalid marker positions.");
+	       doc: /* Non-nil means enable debugging checks for invalid marker positions.  */);
   check_markers_debug_flag = 0;
   DEFVAR_LISP ("combine-after-change-calls", &Vcombine_after_change_calls,
-    "Used internally by the `combine-after-change-calls' macro.");
+	       doc: /* Used internally by the `combine-after-change-calls' macro.  */);
   Vcombine_after_change_calls = Qnil;
 
   DEFVAR_BOOL ("inhibit-modification-hooks", &inhibit_modification_hooks,
-    "Non-nil means don't run any of the hooks that respond to buffer changes.\n\
-This affects `before-change-functions' and `after-change-functions',\n\
-as well as hooks attached to text properties and overlays.");
+	       doc: /* Non-nil means don't run any of the hooks that respond to buffer changes.
+This affects `before-change-functions' and `after-change-functions',
+as well as hooks attached to text properties and overlays.  */);
   inhibit_modification_hooks = 0;
   Qinhibit_modification_hooks = intern ("inhibit-modification-hooks");
   staticpro (&Qinhibit_modification_hooks);
--- a/src/keymap.c	Tue Nov 13 07:34:05 2001 +0000
+++ b/src/keymap.c	Tue Nov 13 07:48:37 2001 +0000
@@ -116,14 +116,15 @@
 /* Keymap object support - constructors and predicates.			*/
 
 DEFUN ("make-keymap", Fmake_keymap, Smake_keymap, 0, 1, 0,
-  "Construct and return a new keymap, of the form (keymap CHARTABLE . ALIST).\n\
-CHARTABLE is a char-table that holds the bindings for the ASCII\n\
-characters.  ALIST is an assoc-list which holds bindings for function keys,\n\
-mouse events, and any other things that appear in the input stream.\n\
-All entries in it are initially nil, meaning \"command undefined\".\n\n\
-The optional arg STRING supplies a menu name for the keymap\n\
-in case you use it as a menu with `x-popup-menu'.")
-  (string)
+       doc: /* Construct and return a new keymap, of the form (keymap CHARTABLE . ALIST).
+CHARTABLE is a char-table that holds the bindings for the ASCII
+characters.  ALIST is an assoc-list which holds bindings for function keys,
+mouse events, and any other things that appear in the input stream.
+All entries in it are initially nil, meaning "command undefined".
+
+The optional arg STRING supplies a menu name for the keymap
+in case you use it as a menu with `x-popup-menu'.  */)
+     (string)
      Lisp_Object string;
 {
   Lisp_Object tail;
@@ -136,14 +137,15 @@
 }
 
 DEFUN ("make-sparse-keymap", Fmake_sparse_keymap, Smake_sparse_keymap, 0, 1, 0,
-  "Construct and return a new sparse keymap.\n\
-Its car is `keymap' and its cdr is an alist of (CHAR . DEFINITION),\n\
-which binds the character CHAR to DEFINITION, or (SYMBOL . DEFINITION),\n\
-which binds the function key or mouse event SYMBOL to DEFINITION.\n\
-Initially the alist is nil.\n\n\
-The optional arg STRING supplies a menu name for the keymap\n\
-in case you use it as a menu with `x-popup-menu'.")
-  (string)
+       doc: /* Construct and return a new sparse keymap.
+Its car is `keymap' and its cdr is an alist of (CHAR . DEFINITION),
+which binds the character CHAR to DEFINITION, or (SYMBOL . DEFINITION),
+which binds the function key or mouse event SYMBOL to DEFINITION.
+Initially the alist is nil.
+
+The optional arg STRING supplies a menu name for the keymap
+in case you use it as a menu with `x-popup-menu'.  */)
+     (string)
      Lisp_Object string;
 {
   if (!NILP (string))
@@ -177,24 +179,24 @@
 }
 
 DEFUN ("keymapp", Fkeymapp, Skeymapp, 1, 1, 0,
-  "Return t if OBJECT is a keymap.\n\
-\n\
-A keymap is a list (keymap . ALIST),\n\
-or a symbol whose function definition is itself a keymap.\n\
-ALIST elements look like (CHAR . DEFN) or (SYMBOL . DEFN);\n\
-a vector of densely packed bindings for small character codes\n\
-is also allowed as an element.")
-  (object)
+       doc: /* Return t if OBJECT is a keymap.
+
+A keymap is a list (keymap . ALIST),
+or a symbol whose function definition is itself a keymap.
+ALIST elements look like (CHAR . DEFN) or (SYMBOL . DEFN);
+a vector of densely packed bindings for small character codes
+is also allowed as an element.  */)
+     (object)
      Lisp_Object object;
 {
   return (KEYMAPP (object) ? Qt : Qnil);
 }
 
 DEFUN ("keymap-prompt", Fkeymap_prompt, Skeymap_prompt, 1, 1, 0,
-  "Return the prompt-string of a keymap MAP.\n\
-If non-nil, the prompt is shown in the echo-area\n\
-when reading a key-sequence to be looked-up in this keymap.")
-  (map)
+       doc: /* Return the prompt-string of a keymap MAP.
+If non-nil, the prompt is shown in the echo-area
+when reading a key-sequence to be looked-up in this keymap.  */)
+     (map)
      Lisp_Object map;
 {
   while (CONSP (map))
@@ -284,8 +286,8 @@
    We assume that MAP is a valid keymap.  */
 
 DEFUN ("keymap-parent", Fkeymap_parent, Skeymap_parent, 1, 1, 0,
-  "Return the parent keymap of KEYMAP.")
-  (keymap)
+       doc: /* Return the parent keymap of KEYMAP.  */)
+     (keymap)
      Lisp_Object keymap;
 {
   Lisp_Object list;
@@ -319,9 +321,9 @@
 /* Set the parent keymap of MAP to PARENT.  */
 
 DEFUN ("set-keymap-parent", Fset_keymap_parent, Sset_keymap_parent, 2, 2, 0,
-  "Modify KEYMAP to set its parent map to PARENT.\n\
-PARENT should be nil or another keymap.")
-  (keymap, parent)
+       doc: /* Modify KEYMAP to set its parent map to PARENT.
+PARENT should be nil or another keymap.  */)
+     (keymap, parent)
      Lisp_Object keymap, parent;
 {
   Lisp_Object list, prev;
@@ -813,13 +815,13 @@
 }
 
 DEFUN ("copy-keymap", Fcopy_keymap, Scopy_keymap, 1, 1, 0,
-  "Return a copy of the keymap KEYMAP.\n\
-The copy starts out with the same definitions of KEYMAP,\n\
-but changing either the copy or KEYMAP does not affect the other.\n\
-Any key definitions that are subkeymaps are recursively copied.\n\
-However, a key definition which is a symbol whose definition is a keymap\n\
-is not copied.")
-  (keymap)
+       doc: /* Return a copy of the keymap KEYMAP.
+The copy starts out with the same definitions of KEYMAP,
+but changing either the copy or KEYMAP does not affect the other.
+Any key definitions that are subkeymaps are recursively copied.
+However, a key definition which is a symbol whose definition is a keymap
+is not copied.  */)
+     (keymap)
      Lisp_Object keymap;
 {
   /* FIXME: This doesn't properly copy menu-items in vectors.  */
@@ -936,26 +938,26 @@
 /* GC is possible in this function if it autoloads a keymap.  */
 
 DEFUN ("define-key", Fdefine_key, Sdefine_key, 3, 3, 0,
-  "Args KEYMAP, KEY, DEF.  Define key sequence KEY, in KEYMAP, as DEF.\n\
-KEYMAP is a keymap.  KEY is a string or a vector of symbols and characters\n\
-meaning a sequence of keystrokes and events.\n\
-Non-ASCII characters with codes above 127 (such as ISO Latin-1)\n\
-can be included if you use a vector.\n\
-DEF is anything that can be a key's definition:\n\
- nil (means key is undefined in this keymap),\n\
- a command (a Lisp function suitable for interactive calling)\n\
- a string (treated as a keyboard macro),\n\
- a keymap (to define a prefix key),\n\
- a symbol.  When the key is looked up, the symbol will stand for its\n\
-    function definition, which should at that time be one of the above,\n\
-    or another symbol whose function definition is used, etc.\n\
- a cons (STRING . DEFN), meaning that DEFN is the definition\n\
-    (DEFN should be a valid definition in its own right),\n\
- or a cons (KEYMAP . CHAR), meaning use definition of CHAR in map KEYMAP.\n\
-\n\
-If KEYMAP is a sparse keymap, the pair binding KEY to DEF is added at\n\
-the front of KEYMAP.")
-  (keymap, key, def)
+       doc: /* Args KEYMAP, KEY, DEF.  Define key sequence KEY, in KEYMAP, as DEF.
+KEYMAP is a keymap.  KEY is a string or a vector of symbols and characters
+meaning a sequence of keystrokes and events.
+Non-ASCII characters with codes above 127 (such as ISO Latin-1)
+can be included if you use a vector.
+DEF is anything that can be a key's definition:
+ nil (means key is undefined in this keymap),
+ a command (a Lisp function suitable for interactive calling)
+ a string (treated as a keyboard macro),
+ a keymap (to define a prefix key),
+ a symbol.  When the key is looked up, the symbol will stand for its
+    function definition, which should at that time be one of the above,
+    or another symbol whose function definition is used, etc.
+ a cons (STRING . DEFN), meaning that DEFN is the definition
+    (DEFN should be a valid definition in its own right),
+ or a cons (KEYMAP . CHAR), meaning use definition of CHAR in map KEYMAP.
+
+If KEYMAP is a sparse keymap, the pair binding KEY to DEF is added at
+the front of KEYMAP.  */)
+     (keymap, key, def)
      Lisp_Object keymap;
      Lisp_Object key;
      Lisp_Object def;
@@ -1036,21 +1038,21 @@
 /* GC is possible in this function if it autoloads a keymap.  */
 
 DEFUN ("lookup-key", Flookup_key, Slookup_key, 2, 3, 0,
-  "In keymap KEYMAP, look up key sequence KEY.  Return the definition.\n\
-nil means undefined.  See doc of `define-key' for kinds of definitions.\n\
-\n\
-A number as value means KEY is \"too long\";\n\
-that is, characters or symbols in it except for the last one\n\
-fail to be a valid sequence of prefix characters in KEYMAP.\n\
-The number is how many characters at the front of KEY\n\
-it takes to reach a non-prefix command.\n\
-\n\
-Normally, `lookup-key' ignores bindings for t, which act as default\n\
-bindings, used when nothing else in the keymap applies; this makes it\n\
-usable as a general function for probing keymaps.  However, if the\n\
-third optional argument ACCEPT-DEFAULT is non-nil, `lookup-key' will\n\
-recognize the default bindings, just as `read-key-sequence' does.")
-  (keymap, key, accept_default)
+       doc: /* In keymap KEYMAP, look up key sequence KEY.  Return the definition.
+nil means undefined.  See doc of `define-key' for kinds of definitions.
+
+A number as value means KEY is "too long";
+that is, characters or symbols in it except for the last one
+fail to be a valid sequence of prefix characters in KEYMAP.
+The number is how many characters at the front of KEY
+it takes to reach a non-prefix command.
+
+Normally, `lookup-key' ignores bindings for t, which act as default
+bindings, used when nothing else in the keymap applies; this makes it
+usable as a general function for probing keymaps.  However, if the
+third optional argument ACCEPT-DEFAULT is non-nil, `lookup-key' will
+recognize the default bindings, just as `read-key-sequence' does.  */)
+     (keymap, key, accept_default)
      register Lisp_Object keymap;
      Lisp_Object key;
      Lisp_Object accept_default;
@@ -1252,10 +1254,10 @@
 }
 
 DEFUN ("current-active-maps", Fcurrent_active_maps, Scurrent_active_maps,
-  0, 1, 0,
-  "Return a list of the currently active keymaps.\n\
-OLP if non-nil indicates that we should obey `overriding-local-map' and\n\
-`overriding-terminal-local-map'.")
+       0, 1, 0,
+       doc: /* Return a list of the currently active keymaps.
+OLP if non-nil indicates that we should obey `overriding-local-map' and
+`overriding-terminal-local-map'.  */)
      (olp)
      Lisp_Object olp;
 {
@@ -1295,16 +1297,16 @@
 /* GC is possible in this function if it autoloads a keymap.  */
 
 DEFUN ("key-binding", Fkey_binding, Skey_binding, 1, 2, 0,
-  "Return the binding for command KEY in current keymaps.\n\
-KEY is a string or vector, a sequence of keystrokes.\n\
-The binding is probably a symbol with a function definition.\n\
-\n\
-Normally, `key-binding' ignores bindings for t, which act as default\n\
-bindings, used when nothing else in the keymap applies; this makes it\n\
-usable as a general function for probing keymaps.  However, if the\n\
-optional second argument ACCEPT-DEFAULT is non-nil, `key-binding' does\n\
-recognize the default bindings, just as `read-key-sequence' does.")
-  (key, accept_default)
+       doc: /* Return the binding for command KEY in current keymaps.
+KEY is a string or vector, a sequence of keystrokes.
+The binding is probably a symbol with a function definition.
+
+Normally, `key-binding' ignores bindings for t, which act as default
+bindings, used when nothing else in the keymap applies; this makes it
+usable as a general function for probing keymaps.  However, if the
+optional second argument ACCEPT-DEFAULT is non-nil, `key-binding' does
+recognize the default bindings, just as `read-key-sequence' does.  */)
+     (key, accept_default)
      Lisp_Object key, accept_default;
 {
   Lisp_Object *maps, value;
@@ -1371,13 +1373,13 @@
 /* GC is possible in this function if it autoloads a keymap.  */
 
 DEFUN ("local-key-binding", Flocal_key_binding, Slocal_key_binding, 1, 2, 0,
-  "Return the binding for command KEYS in current local keymap only.\n\
-KEYS is a string, a sequence of keystrokes.\n\
-The binding is probably a symbol with a function definition.\n\
-\n\
-If optional argument ACCEPT-DEFAULT is non-nil, recognize default\n\
-bindings; see the description of `lookup-key' for more details about this.")
-  (keys, accept_default)
+       doc: /* Return the binding for command KEYS in current local keymap only.
+KEYS is a string, a sequence of keystrokes.
+The binding is probably a symbol with a function definition.
+
+If optional argument ACCEPT-DEFAULT is non-nil, recognize default
+bindings; see the description of `lookup-key' for more details about this.  */)
+     (keys, accept_default)
      Lisp_Object keys, accept_default;
 {
   register Lisp_Object map;
@@ -1390,15 +1392,15 @@
 /* GC is possible in this function if it autoloads a keymap.  */
 
 DEFUN ("global-key-binding", Fglobal_key_binding, Sglobal_key_binding, 1, 2, 0,
-  "Return the binding for command KEYS in current global keymap only.\n\
-KEYS is a string, a sequence of keystrokes.\n\
-The binding is probably a symbol with a function definition.\n\
-This function's return values are the same as those of lookup-key\n\
-\(which see).\n\
-\n\
-If optional argument ACCEPT-DEFAULT is non-nil, recognize default\n\
-bindings; see the description of `lookup-key' for more details about this.")
-  (keys, accept_default)
+       doc: /* Return the binding for command KEYS in current global keymap only.
+KEYS is a string, a sequence of keystrokes.
+The binding is probably a symbol with a function definition.
+This function's return values are the same as those of lookup-key
+\(which see).
+
+If optional argument ACCEPT-DEFAULT is non-nil, recognize default
+bindings; see the description of `lookup-key' for more details about this.  */)
+     (keys, accept_default)
      Lisp_Object keys, accept_default;
 {
   return Flookup_key (current_global_map, keys, accept_default);
@@ -1407,18 +1409,18 @@
 /* GC is possible in this function if it autoloads a keymap.  */
 
 DEFUN ("minor-mode-key-binding", Fminor_mode_key_binding, Sminor_mode_key_binding, 1, 2, 0,
-  "Find the visible minor mode bindings of KEY.\n\
-Return an alist of pairs (MODENAME . BINDING), where MODENAME is the\n\
-the symbol which names the minor mode binding KEY, and BINDING is\n\
-KEY's definition in that mode.  In particular, if KEY has no\n\
-minor-mode bindings, return nil.  If the first binding is a\n\
-non-prefix, all subsequent bindings will be omitted, since they would\n\
-be ignored.  Similarly, the list doesn't include non-prefix bindings\n\
-that come after prefix bindings.\n\
-\n\
-If optional argument ACCEPT-DEFAULT is non-nil, recognize default\n\
-bindings; see the description of `lookup-key' for more details about this.")
-  (key, accept_default)
+       doc: /* Find the visible minor mode bindings of KEY.
+Return an alist of pairs (MODENAME . BINDING), where MODENAME is the
+the symbol which names the minor mode binding KEY, and BINDING is
+KEY's definition in that mode.  In particular, if KEY has no
+minor-mode bindings, return nil.  If the first binding is a
+non-prefix, all subsequent bindings will be omitted, since they would
+be ignored.  Similarly, the list doesn't include non-prefix bindings
+that come after prefix bindings.
+
+If optional argument ACCEPT-DEFAULT is non-nil, recognize default
+bindings; see the description of `lookup-key' for more details about this.  */)
+     (key, accept_default)
      Lisp_Object key, accept_default;
 {
   Lisp_Object *modes, *maps;
@@ -1450,14 +1452,14 @@
 }
 
 DEFUN ("define-prefix-command", Fdefine_prefix_command, Sdefine_prefix_command, 1, 3, 0,
-  "Define COMMAND as a prefix command.  COMMAND should be a symbol.\n\
-A new sparse keymap is stored as COMMAND's function definition and its value.\n\
-If a second optional argument MAPVAR is given, the map is stored as\n\
-its value instead of as COMMAND's value; but COMMAND is still defined\n\
-as a function.\n\
-The third optional argument NAME, if given, supplies a menu name\n\
-string for the map.  This is required to use the keymap as a menu.")
-  (command, mapvar, name)
+       doc: /* Define COMMAND as a prefix command.  COMMAND should be a symbol.
+A new sparse keymap is stored as COMMAND's function definition and its value.
+If a second optional argument MAPVAR is given, the map is stored as
+its value instead of as COMMAND's value; but COMMAND is still defined
+as a function.
+The third optional argument NAME, if given, supplies a menu name
+string for the map.  This is required to use the keymap as a menu.  */)
+     (command, mapvar, name)
      Lisp_Object command, mapvar, name;
 {
   Lisp_Object map;
@@ -1471,8 +1473,8 @@
 }
 
 DEFUN ("use-global-map", Fuse_global_map, Suse_global_map, 1, 1, 0,
-  "Select KEYMAP as the global keymap.")
-  (keymap)
+       doc: /* Select KEYMAP as the global keymap.  */)
+     (keymap)
      Lisp_Object keymap;
 {
   keymap = get_keymap (keymap, 1, 1);
@@ -1482,9 +1484,9 @@
 }
 
 DEFUN ("use-local-map", Fuse_local_map, Suse_local_map, 1, 1, 0,
-  "Select KEYMAP as the local keymap.\n\
-If KEYMAP is nil, that means no local keymap.")
-  (keymap)
+       doc: /* Select KEYMAP as the local keymap.
+If KEYMAP is nil, that means no local keymap.  */)
+     (keymap)
      Lisp_Object keymap;
 {
   if (!NILP (keymap))
@@ -1496,22 +1498,22 @@
 }
 
 DEFUN ("current-local-map", Fcurrent_local_map, Scurrent_local_map, 0, 0, 0,
-  "Return current buffer's local keymap, or nil if it has none.")
-  ()
+       doc: /* Return current buffer's local keymap, or nil if it has none.  */)
+     ()
 {
   return current_buffer->keymap;
 }
 
 DEFUN ("current-global-map", Fcurrent_global_map, Scurrent_global_map, 0, 0, 0,
-  "Return the current global keymap.")
-  ()
+       doc: /* Return the current global keymap.  */)
+     ()
 {
   return current_global_map;
 }
 
 DEFUN ("current-minor-mode-maps", Fcurrent_minor_mode_maps, Scurrent_minor_mode_maps, 0, 0, 0,
-  "Return a list of keymaps for the minor modes of the current buffer.")
-  ()
+       doc: /* Return a list of keymaps for the minor modes of the current buffer.  */)
+     ()
 {
   Lisp_Object *maps;
   int nmaps = current_minor_maps (0, &maps);
@@ -1583,14 +1585,14 @@
 /* This function cannot GC.  */
 
 DEFUN ("accessible-keymaps", Faccessible_keymaps, Saccessible_keymaps,
-  1, 2, 0,
-  "Find all keymaps accessible via prefix characters from KEYMAP.\n\
-Returns a list of elements of the form (KEYS . MAP), where the sequence\n\
-KEYS starting from KEYMAP gets you to MAP.  These elements are ordered\n\
-so that the KEYS increase in length.  The first element is ([] . KEYMAP).\n\
-An optional argument PREFIX, if non-nil, should be a key sequence;\n\
-then the value includes only maps for prefixes that start with PREFIX.")
-  (keymap, prefix)
+       1, 2, 0,
+       doc: /* Find all keymaps accessible via prefix characters from KEYMAP.
+Returns a list of elements of the form (KEYS . MAP), where the sequence
+KEYS starting from KEYMAP gets you to MAP.  These elements are ordered
+so that the KEYS increase in length.  The first element is ([] . KEYMAP).
+An optional argument PREFIX, if non-nil, should be a key sequence;
+then the value includes only maps for prefixes that start with PREFIX.  */)
+     (keymap, prefix)
      Lisp_Object keymap, prefix;
 {
   Lisp_Object maps, good_maps, tail;
@@ -1735,10 +1737,10 @@
 /* This function cannot GC.  */
 
 DEFUN ("key-description", Fkey_description, Skey_description, 1, 1, 0,
-  "Return a pretty description of key-sequence KEYS.\n\
-Control characters turn into \"C-foo\" sequences, meta into \"M-foo\"\n\
-spaces are put between sequence elements, etc.")
-  (keys)
+       doc: /* Return a pretty description of key-sequence KEYS.
+Control characters turn into "C-foo" sequences, meta into "M-foo"
+spaces are put between sequence elements, etc.  */)
+     (keys)
      Lisp_Object keys;
 {
   int len = 0;
@@ -1937,11 +1939,11 @@
 
 DEFUN ("single-key-description", Fsingle_key_description,
        Ssingle_key_description, 1, 2, 0,
-  "Return a pretty description of command character KEY.\n\
-Control characters turn into C-whatever, etc.\n\
-Optional argument NO-ANGLES non-nil means don't put angle brackets\n\
-around function keys and event symbols.")
-  (key, no_angles)
+       doc: /* Return a pretty description of command character KEY.
+Control characters turn into C-whatever, etc.
+Optional argument NO-ANGLES non-nil means don't put angle brackets
+around function keys and event symbols.  */)
+     (key, no_angles)
      Lisp_Object key, no_angles;
 {
   if (CONSP (key) && lucid_event_type_list_p (key))
@@ -2037,9 +2039,9 @@
 /* This function cannot GC.  */
 
 DEFUN ("text-char-description", Ftext_char_description, Stext_char_description, 1, 1, 0,
-  "Return a pretty description of file-character CHARACTER.\n\
-Control characters turn into \"^char\", etc.")
-  (character)
+       doc: /* Return a pretty description of file-character CHARACTER.
+Control characters turn into "^char", etc.  */)
+     (character)
      Lisp_Object character;
 {
   /* Currently MAX_MULTIBYTE_LENGTH is 4 (< 6).  */
@@ -2276,22 +2278,22 @@
 }
 
 DEFUN ("where-is-internal", Fwhere_is_internal, Swhere_is_internal, 1, 4, 0,
-  "Return list of keys that invoke DEFINITION.\n\
-If KEYMAP is non-nil, search only KEYMAP and the global keymap.\n\
-If KEYMAP is nil, search all the currently active keymaps.\n\
-If KEYMAP is a list of keymaps, search only those keymaps.\n\
-\n\
-If optional 3rd arg FIRSTONLY is non-nil, return the first key sequence found,\n\
-rather than a list of all possible key sequences.\n\
-If FIRSTONLY is the symbol `non-ascii', return the first binding found,\n\
-no matter what it is.\n\
-If FIRSTONLY has another non-nil value, prefer sequences of ASCII characters,\n\
-and entirely reject menu bindings.\n\
-\n\
-If optional 4th arg NOINDIRECT is non-nil, don't follow indirections\n\
-to other keymaps or slots.  This makes it possible to search for an\n\
-indirect definition itself.")
-  (definition, keymap, firstonly, noindirect)
+       doc: /* Return list of keys that invoke DEFINITION.
+If KEYMAP is non-nil, search only KEYMAP and the global keymap.
+If KEYMAP is nil, search all the currently active keymaps.
+If KEYMAP is a list of keymaps, search only those keymaps.
+
+If optional 3rd arg FIRSTONLY is non-nil, return the first key sequence found,
+rather than a list of all possible key sequences.
+If FIRSTONLY is the symbol `non-ascii', return the first binding found,
+no matter what it is.
+If FIRSTONLY has another non-nil value, prefer sequences of ASCII characters,
+and entirely reject menu bindings.
+
+If optional 4th arg NOINDIRECT is non-nil, don't follow indirections
+to other keymaps or slots.  This makes it possible to search for an
+indirect definition itself.  */)
+     (definition, keymap, firstonly, noindirect)
      Lisp_Object definition, keymap;
      Lisp_Object firstonly, noindirect;
 {
@@ -2456,14 +2458,14 @@
 /* describe-bindings - summarizing all the bindings in a set of keymaps.  */
 
 DEFUN ("describe-buffer-bindings", Fdescribe_buffer_bindings, Sdescribe_buffer_bindings, 1, 3, 0,
-  "Insert the list of all defined keys and their definitions.\n\
-The list is inserted in the current buffer, while the bindings are\n\
-looked up in BUFFER.\n\
-The optional argument PREFIX, if non-nil, should be a key sequence;\n\
-then we display only bindings that start with that prefix.\n\
-The optional argument MENUS, if non-nil, says to mention menu bindings.\n\
-\(Ordinarily these are omitted from the output.)")
- (buffer, prefix, menus)
+       doc: /* Insert the list of all defined keys and their definitions.
+The list is inserted in the current buffer, while the bindings are
+looked up in BUFFER.
+The optional argument PREFIX, if non-nil, should be a key sequence;
+then we display only bindings that start with that prefix.
+The optional argument MENUS, if non-nil, says to mention menu bindings.
+\(Ordinarily these are omitted from the output.)  */)
+     (buffer, prefix, menus)
      Lisp_Object buffer, prefix, menus;
 {
   Lisp_Object outbuf, shadow;
@@ -2942,9 +2944,9 @@
 }
 
 DEFUN ("describe-vector", Fdescribe_vector, Sdescribe_vector, 1, 1, 0,
-  "Insert a description of contents of VECTOR.\n\
-This is text showing the elements of vector matched against indices.")
-  (vector)
+       doc: /* Insert a description of contents of VECTOR.
+This is text showing the elements of vector matched against indices.  */)
+     (vector)
      Lisp_Object vector;
 {
   int count = specpdl_ptr - specpdl;
@@ -3307,11 +3309,11 @@
 }
 
 DEFUN ("apropos-internal", Fapropos_internal, Sapropos_internal, 1, 2, 0, 
-  "Show all symbols whose names contain match for REGEXP.\n\
-If optional 2nd arg PREDICATE is non-nil, (funcall PREDICATE SYMBOL) is done\n\
-for each symbol and a symbol is mentioned only if that returns non-nil.\n\
-Return list of symbols found.")
-  (regexp, predicate)
+       doc: /* Show all symbols whose names contain match for REGEXP.
+If optional 2nd arg PREDICATE is non-nil, (funcall PREDICATE SYMBOL) is done
+for each symbol and a symbol is mentioned only if that returns non-nil.
+Return list of symbols found.  */)
+     (regexp, predicate)
      Lisp_Object regexp, predicate;
 {
   struct gcpro gcpro1, gcpro2;
@@ -3355,71 +3357,71 @@
   Ffset (intern ("Control-X-prefix"), control_x_map);
 
   DEFVAR_LISP ("define-key-rebound-commands", &Vdefine_key_rebound_commands,
-    "List of commands given new key bindings recently.\n\
-This is used for internal purposes during Emacs startup;\n\
-don't alter it yourself.");
+	       doc: /* List of commands given new key bindings recently.
+This is used for internal purposes during Emacs startup;
+don't alter it yourself.  */);
   Vdefine_key_rebound_commands = Qt;
 
   DEFVAR_LISP ("minibuffer-local-map", &Vminibuffer_local_map,
-    "Default keymap to use when reading from the minibuffer.");
+	       doc: /* Default keymap to use when reading from the minibuffer.  */);
   Vminibuffer_local_map = Fmake_sparse_keymap (Qnil);
 
   DEFVAR_LISP ("minibuffer-local-ns-map", &Vminibuffer_local_ns_map,
-    "Local keymap for the minibuffer when spaces are not allowed.");
+	       doc: /* Local keymap for the minibuffer when spaces are not allowed.  */);
   Vminibuffer_local_ns_map = Fmake_sparse_keymap (Qnil);
   Fset_keymap_parent (Vminibuffer_local_ns_map, Vminibuffer_local_map);
 
   DEFVAR_LISP ("minibuffer-local-completion-map", &Vminibuffer_local_completion_map,
-    "Local keymap for minibuffer input with completion.");
+	       doc: /* Local keymap for minibuffer input with completion.  */);
   Vminibuffer_local_completion_map = Fmake_sparse_keymap (Qnil);
   Fset_keymap_parent (Vminibuffer_local_completion_map, Vminibuffer_local_map);
 
   DEFVAR_LISP ("minibuffer-local-must-match-map", &Vminibuffer_local_must_match_map,
-    "Local keymap for minibuffer input with completion, for exact match.");
+	       doc: /* Local keymap for minibuffer input with completion, for exact match.  */);
   Vminibuffer_local_must_match_map = Fmake_sparse_keymap (Qnil);
   Fset_keymap_parent (Vminibuffer_local_must_match_map,
 		      Vminibuffer_local_completion_map);
 
   DEFVAR_LISP ("minor-mode-map-alist", &Vminor_mode_map_alist,
-    "Alist of keymaps to use for minor modes.\n\
-Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read\n\
-key sequences and look up bindings iff VARIABLE's value is non-nil.\n\
-If two active keymaps bind the same key, the keymap appearing earlier\n\
-in the list takes precedence.");
+	       doc: /* Alist of keymaps to use for minor modes.
+Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read
+key sequences and look up bindings iff VARIABLE's value is non-nil.
+If two active keymaps bind the same key, the keymap appearing earlier
+in the list takes precedence.  */);
   Vminor_mode_map_alist = Qnil;
 
   DEFVAR_LISP ("minor-mode-overriding-map-alist", &Vminor_mode_overriding_map_alist,
-    "Alist of keymaps to use for minor modes, in current major mode.\n\
-This variable is a alist just like `minor-mode-map-alist', and it is\n\
-used the same way (and before `minor-mode-map-alist'); however,\n\
-it is provided for major modes to bind locally.");
+	       doc: /* Alist of keymaps to use for minor modes, in current major mode.
+This variable is a alist just like `minor-mode-map-alist', and it is
+used the same way (and before `minor-mode-map-alist'); however,
+it is provided for major modes to bind locally.  */);
   Vminor_mode_overriding_map_alist = Qnil;
 
   DEFVAR_LISP ("function-key-map", &Vfunction_key_map,
-  "Keymap mapping ASCII function key sequences onto their preferred forms.\n\
-This allows Emacs to recognize function keys sent from ASCII\n\
-terminals at any point in a key sequence.\n\
-\n\
-The `read-key-sequence' function replaces any subsequence bound by\n\
-`function-key-map' with its binding.  More precisely, when the active\n\
-keymaps have no binding for the current key sequence but\n\
-`function-key-map' binds a suffix of the sequence to a vector or string,\n\
-`read-key-sequence' replaces the matching suffix with its binding, and\n\
-continues with the new sequence.\n\
-\n\
-The events that come from bindings in `function-key-map' are not\n\
-themselves looked up in `function-key-map'.\n\
-\n\
-For example, suppose `function-key-map' binds `ESC O P' to [f1].\n\
-Typing `ESC O P' to `read-key-sequence' would return [f1].  Typing\n\
-`C-x ESC O P' would return [?\\C-x f1].  If [f1] were a prefix\n\
-key, typing `ESC O P x' would return [f1 x].");
+	       doc: /* Keymap mapping ASCII function key sequences onto their preferred forms.
+This allows Emacs to recognize function keys sent from ASCII
+terminals at any point in a key sequence.
+
+The `read-key-sequence' function replaces any subsequence bound by
+`function-key-map' with its binding.  More precisely, when the active
+keymaps have no binding for the current key sequence but
+`function-key-map' binds a suffix of the sequence to a vector or string,
+`read-key-sequence' replaces the matching suffix with its binding, and
+continues with the new sequence.
+
+The events that come from bindings in `function-key-map' are not
+themselves looked up in `function-key-map'.
+
+For example, suppose `function-key-map' binds `ESC O P' to [f1].
+Typing `ESC O P' to `read-key-sequence' would return [f1].  Typing
+`C-x ESC O P' would return [?\\C-x f1].  If [f1] were a prefix
+key, typing `ESC O P x' would return [f1 x].  */);
   Vfunction_key_map = Fmake_sparse_keymap (Qnil);
 
   DEFVAR_LISP ("key-translation-map", &Vkey_translation_map,
-    "Keymap of key translations that can override keymaps.\n\
-This keymap works like `function-key-map', but comes after that,\n\
-and applies even for keys that have ordinary bindings.");
+	       doc: /* Keymap of key translations that can override keymaps.
+This keymap works like `function-key-map', but comes after that,
+and applies even for keys that have ordinary bindings.  */);
   Vkey_translation_map = Qnil;
 
   Qsingle_key_description = intern ("single-key-description");