#include <config.h>
#include <stdio.h>
+
#include "lisp.h"
#include "commands.h"
#include "buffer.h"
#include "window.h"
#include "syntax.h"
#include "intervals.h"
+#include "keymap.h"
extern int quit_char;
DEFUN ("set-minibuffer-window", Fset_minibuffer_window,
Sset_minibuffer_window, 1, 1, 0,
- "Specify which minibuffer window to use for the minibuffer.\n\
-This effects where the minibuffer is displayed if you put text in it\n\
-without invoking the usual minibuffer commands.")
- (window)
+ doc: /* Specify which minibuffer window to use for the minibuffer.
+This effects where the minibuffer is displayed if you put text in it
+without invoking the usual minibuffer commands. */)
+ (window)
Lisp_Object window;
{
- CHECK_WINDOW (window, 1);
+ CHECK_WINDOW (window);
if (! MINI_WINDOW_P (XWINDOW (window)))
error ("Window is not a minibuffer window");
DEFUN ("minibuffer-prompt-end", Fminibuffer_prompt_end,
Sminibuffer_prompt_end, 0, 0, 0,
- "Return the buffer position of the end of the minibuffer prompt.\n\
-Return (point-min) if current buffer is not a mini-buffer.")
+ doc: /* Return the buffer position of the end of the minibuffer prompt.
+Return (point-min) if current buffer is not a mini-buffer. */)
()
{
/* This function is written to be most efficient when there's a prompt. */
DEFUN ("minibuffer-contents", Fminibuffer_contents,
Sminibuffer_contents, 0, 0, 0,
- "Return the user input in a minbuffer as a string.\n\
-The current buffer must be a minibuffer.")
+ doc: /* Return the user input in a minbuffer as a string.
+The current buffer must be a minibuffer. */)
()
{
int prompt_end = XINT (Fminibuffer_prompt_end ());
DEFUN ("minibuffer-contents-no-properties", Fminibuffer_contents_no_properties,
Sminibuffer_contents_no_properties, 0, 0, 0,
- "Return the user input in a minbuffer as a string, without text-properties.\n\
-The current buffer must be a minibuffer.")
+ doc: /* Return the user input in a minbuffer as a string, without text-properties.
+The current buffer must be a minibuffer. */)
()
{
int prompt_end = XINT (Fminibuffer_prompt_end ());
DEFUN ("delete-minibuffer-contents", Fdelete_minibuffer_contents,
Sdelete_minibuffer_contents, 0, 0, 0,
- "Delete all user input in a minibuffer.\n\
-The current buffer must be a minibuffer.")
+ doc: /* Delete all user input in a minibuffer.
+The current buffer must be a minibuffer. */)
()
{
int prompt_end = XINT (Fminibuffer_prompt_end ());
Lisp_Object mini_frame, ambient_dir, minibuffer, input_method;
struct gcpro gcpro1, gcpro2, gcpro3, gcpro4, gcpro5;
Lisp_Object enable_multibyte;
- extern Lisp_Object Qread_only, Qfront_sticky;
+ extern Lisp_Object Qfront_sticky;
extern Lisp_Object Qrear_nonsticky;
specbind (Qminibuffer_default, defalt);
enabled in it. */
Fbuffer_enable_undo (buf);
- XCAR (tail) = buf;
+ XSETCAR (tail, buf);
}
else
{
}
\f
-/* This comment supplies the doc string for read-from-minibuffer,
- for make-docfile to see. We cannot put this in the real DEFUN
- due to limits in the Unix cpp.
-
-DEFUN ("read-from-minibuffer", Fread_from_minibuffer, Sread_from_minibuffer, 1, 7, 0,
- "Read a string from the minibuffer, prompting with string PROMPT.\n\
-If optional second arg INITIAL-CONTENTS is non-nil, it is a string\n\
- to be inserted into the minibuffer before reading input.\n\
- If INITIAL-CONTENTS is (STRING . POSITION), the initial input\n\
- is STRING, but point is placed at position POSITION in the minibuffer.\n\
-Third arg KEYMAP is a keymap to use whilst reading;\n\
- if omitted or nil, the default is `minibuffer-local-map'.\n\
-If fourth arg READ is non-nil, then interpret the result as a lisp object\n\
- and return that object:\n\
- in other words, do `(car (read-from-string INPUT-STRING))'\n\
-Fifth arg HIST, if non-nil, specifies a history list\n\
- and optionally the initial position in the list.\n\
- It can be a symbol, which is the history list variable to use,\n\
- or it can be a cons cell (HISTVAR . HISTPOS).\n\
- In that case, HISTVAR is the history list variable to use,\n\
- and HISTPOS is the initial position (the position in the list\n\
- which INITIAL-CONTENTS corresponds to).\n\
- Positions are counted starting from 1 at the beginning of the list.\n\
-Sixth arg DEFAULT-VALUE is the default value. If non-nil, it is available\n\
- for history commands; but `read-from-minibuffer' does NOT return DEFAULT-VALUE\n\
- if the user enters empty input! It returns the empty string.\n\
-Seventh arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits\n\
- the current input method and the setting of enable-multibyte-characters.\n\
-If the variable `minibuffer-allow-text-properties' is non-nil,\n\
- then the string which is returned includes whatever text properties\n\
- were present in the minibuffer. Otherwise the value has no text properties.")
- (prompt, initial_contents, keymap, read, hist, default_value, inherit_input_method)
- */
-
DEFUN ("read-from-minibuffer", Fread_from_minibuffer, Sread_from_minibuffer, 1, 7, 0,
- 0 /* See immediately above */)
- (prompt, initial_contents, keymap, read, hist, default_value, inherit_input_method)
+ doc: /* Read a string from the minibuffer, prompting with string PROMPT.
+If optional second arg INITIAL-CONTENTS is non-nil, it is a string
+ to be inserted into the minibuffer before reading input.
+ If INITIAL-CONTENTS is (STRING . POSITION), the initial input
+ is STRING, but point is placed at position POSITION in the minibuffer.
+Third arg KEYMAP is a keymap to use whilst reading;
+ if omitted or nil, the default is `minibuffer-local-map'.
+If fourth arg READ is non-nil, then interpret the result as a lisp object
+ and return that object:
+ in other words, do `(car (read-from-string INPUT-STRING))'
+Fifth arg HIST, if non-nil, specifies a history list
+ and optionally the initial position in the list.
+ It can be a symbol, which is the history list variable to use,
+ or it can be a cons cell (HISTVAR . HISTPOS).
+ In that case, HISTVAR is the history list variable to use,
+ and HISTPOS is the initial position (the position in the list
+ which INITIAL-CONTENTS corresponds to).
+ Positions are counted starting from 1 at the beginning of the list.
+Sixth arg DEFAULT-VALUE is the default value. If non-nil, it is available
+ for history commands; but `read-from-minibuffer' does NOT return DEFAULT-VALUE
+ if the user enters empty input! It returns the empty string.
+Seventh arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits
+ the current input method and the setting of enable-multibyte-characters.
+If the variable `minibuffer-allow-text-properties' is non-nil,
+ then the string which is returned includes whatever text properties
+ were present in the minibuffer. Otherwise the value has no text properties. */)
+ (prompt, initial_contents, keymap, read, hist, default_value, inherit_input_method)
Lisp_Object prompt, initial_contents, keymap, read, hist, default_value;
Lisp_Object inherit_input_method;
{
position = Qnil;
- CHECK_STRING (prompt, 0);
+ CHECK_STRING (prompt);
if (!NILP (initial_contents))
{
if (CONSP (initial_contents))
position = Fcdr (initial_contents);
initial_contents = Fcar (initial_contents);
}
- CHECK_STRING (initial_contents, 1);
+ CHECK_STRING (initial_contents);
if (!NILP (position))
{
- CHECK_NUMBER (position, 0);
+ CHECK_NUMBER (position);
/* Convert to distance from end of input. */
if (XINT (position) < 1)
/* A number too small means the beginning of the string. */
}
DEFUN ("read-minibuffer", Fread_minibuffer, Sread_minibuffer, 1, 2, 0,
- "Return a Lisp object read using the minibuffer.\n\
-Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS\n\
-is a string to insert in the minibuffer before reading.")
- (prompt, initial_contents)
+ doc: /* Return a Lisp object read using the minibuffer.
+Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS
+is a string to insert in the minibuffer before reading. */)
+ (prompt, initial_contents)
Lisp_Object prompt, initial_contents;
{
- CHECK_STRING (prompt, 0);
+ CHECK_STRING (prompt);
if (!NILP (initial_contents))
- CHECK_STRING (initial_contents, 1);
+ CHECK_STRING (initial_contents);
return read_minibuf (Vminibuffer_local_map, initial_contents,
prompt, Qnil, 1, Qminibuffer_history,
make_number (0), Qnil, 0, 0);
}
DEFUN ("eval-minibuffer", Feval_minibuffer, Seval_minibuffer, 1, 2, 0,
- "Return value of Lisp expression read using the minibuffer.\n\
-Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS\n\
-is a string to insert in the minibuffer before reading.")
- (prompt, initial_contents)
+ doc: /* Return value of Lisp expression read using the minibuffer.
+Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS
+is a string to insert in the minibuffer before reading. */)
+ (prompt, initial_contents)
Lisp_Object prompt, initial_contents;
{
return Feval (Fread_minibuffer (prompt, initial_contents));
/* Functions that use the minibuffer to read various things. */
DEFUN ("read-string", Fread_string, Sread_string, 1, 5, 0,
- "Read a string from the minibuffer, prompting with string PROMPT.\n\
-If non-nil, second arg INITIAL-INPUT is a string to insert before reading.\n\
-The third arg HISTORY, if non-nil, specifies a history list\n\
- and optionally the initial position in the list.\n\
-See `read-from-minibuffer' for details of HISTORY argument.\n\
-Fourth arg DEFAULT-VALUE is the default value. If non-nil, it is used\n\
- for history commands, and as the value to return if the user enters\n\
- the empty string.\n\
-Fifth arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits\n\
- the current input method and the setting of enable-multibyte-characters.")
- (prompt, initial_input, history, default_value, inherit_input_method)
+ doc: /* Read a string from the minibuffer, prompting with string PROMPT.
+If non-nil, second arg INITIAL-INPUT is a string to insert before reading.
+The third arg HISTORY, if non-nil, specifies a history list
+ and optionally the initial position in the list.
+See `read-from-minibuffer' for details of HISTORY argument.
+Fourth arg DEFAULT-VALUE is the default value. If non-nil, it is used
+ for history commands, and as the value to return if the user enters
+ the empty string.
+Fifth arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits
+ the current input method and the setting of enable-multibyte-characters. */)
+ (prompt, initial_input, history, default_value, inherit_input_method)
Lisp_Object prompt, initial_input, history, default_value;
Lisp_Object inherit_input_method;
{
}
DEFUN ("read-no-blanks-input", Fread_no_blanks_input, Sread_no_blanks_input, 1, 3, 0,
- "Read a string from the terminal, not allowing blanks.\n\
-Prompt with PROMPT, and provide INITIAL as an initial value of the input string.\n\
-Third arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits\n\
-the current input method and the setting of enable-multibyte-characters.")
- (prompt, initial, inherit_input_method)
+ doc: /* Read a string from the terminal, not allowing blanks.
+Prompt with PROMPT, and provide INITIAL as an initial value of the input string.
+Third arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits
+the current input method and the setting of enable-multibyte-characters. */)
+ (prompt, initial, inherit_input_method)
Lisp_Object prompt, initial, inherit_input_method;
{
- CHECK_STRING (prompt, 0);
+ CHECK_STRING (prompt);
if (! NILP (initial))
- CHECK_STRING (initial, 1);
+ CHECK_STRING (initial);
return read_minibuf (Vminibuffer_local_ns_map, initial, prompt, Qnil,
0, Qminibuffer_history, make_number (0), Qnil, 0,
}
DEFUN ("read-command", Fread_command, Sread_command, 1, 2, 0,
- "Read the name of a command and return as a symbol.\n\
-Prompts with PROMPT. By default, return DEFAULT-VALUE.")
- (prompt, default_value)
+ doc: /* Read the name of a command and return as a symbol.
+Prompts with PROMPT. By default, return DEFAULT-VALUE. */)
+ (prompt, default_value)
Lisp_Object prompt, default_value;
{
Lisp_Object name, default_string;
#ifdef NOTDEF
DEFUN ("read-function", Fread_function, Sread_function, 1, 1, 0,
- "One arg PROMPT, a string. Read the name of a function and return as a symbol.\n\
-Prompts with PROMPT.")
- (prompt)
+ doc: /* One arg PROMPT, a string. Read the name of a function and return as a symbol.
+Prompts with PROMPT. */)
+ (prompt)
Lisp_Object prompt;
{
return Fintern (Fcompleting_read (prompt, Vobarray, Qfboundp, Qt, Qnil, Qnil, Qnil, Qnil),
#endif /* NOTDEF */
DEFUN ("read-variable", Fread_variable, Sread_variable, 1, 2, 0,
- "Read the name of a user variable and return it as a symbol.\n\
-Prompts with PROMPT. By default, return DEFAULT-VALUE.\n\
-A user variable is one whose documentation starts with a `*' character.")
- (prompt, default_value)
+ doc: /* Read the name of a user variable and return it as a symbol.
+Prompts with PROMPT. By default, return DEFAULT-VALUE.
+A user variable is one whose documentation starts with a `*' character. */)
+ (prompt, default_value)
Lisp_Object prompt, default_value;
{
Lisp_Object name, default_string;
}
DEFUN ("read-buffer", Fread_buffer, Sread_buffer, 1, 3, 0,
- "One arg PROMPT, a string. Read the name of a buffer and return as a string.\n\
-Prompts with PROMPT.\n\
-Optional second arg DEF is value to return if user enters an empty line.\n\
-If optional third arg REQUIRE-MATCH is non-nil, only existing buffer names are allowed.")
- (prompt, def, require_match)
+ doc: /* One arg PROMPT, a string. Read the name of a buffer and return as a string.
+Prompts with PROMPT.
+Optional second arg DEF is value to return if user enters an empty line.
+If optional third arg REQUIRE-MATCH is non-nil, only existing buffer names are allowed. */)
+ (prompt, def, require_match)
Lisp_Object prompt, def, require_match;
{
Lisp_Object args[4];
}
DEFUN ("try-completion", Ftry_completion, Stry_completion, 2, 3, 0,
- "Return common substring of all completions of STRING in ALIST.\n\
-Each car of each element of ALIST is tested to see if it begins with STRING.\n\
-All that match are compared together; the longest initial sequence\n\
-common to all matches is returned as a string.\n\
-If there is no match at all, nil is returned.\n\
-For a unique match which is exact, t is returned.\n\
-\n\
-ALIST can be an obarray instead of an alist.\n\
-Then the print names of all symbols in the obarray are the possible matches.\n\
-\n\
-ALIST can also be a function to do the completion itself.\n\
-It receives three arguments: the values STRING, PREDICATE and nil.\n\
-Whatever it returns becomes the value of `try-completion'.\n\
-\n\
-If optional third argument PREDICATE is non-nil,\n\
-it is used to test each possible match.\n\
-The match is a candidate only if PREDICATE returns non-nil.\n\
-The argument given to PREDICATE is the alist element\n\
-or the symbol from the obarray.\n\
-Additionally to this predicate, `completion-regexp-list'\n\
-is used to further constrain the set of candidates.")
- (string, alist, predicate)
+ doc: /* Return common substring of all completions of STRING in ALIST.
+Each car of each element of ALIST is tested to see if it begins with STRING.
+All that match are compared together; the longest initial sequence
+common to all matches is returned as a string.
+If there is no match at all, nil is returned.
+For a unique match which is exact, t is returned.
+
+ALIST can be an obarray instead of an alist.
+Then the print names of all symbols in the obarray are the possible matches.
+
+ALIST can also be a function to do the completion itself.
+It receives three arguments: the values STRING, PREDICATE and nil.
+Whatever it returns becomes the value of `try-completion'.
+
+If optional third argument PREDICATE is non-nil,
+it is used to test each possible match.
+The match is a candidate only if PREDICATE returns non-nil.
+The argument given to PREDICATE is the alist element
+or the symbol from the obarray.
+Additionally to this predicate, `completion-regexp-list'
+is used to further constrain the set of candidates. */)
+ (string, alist, predicate)
Lisp_Object string, alist, predicate;
{
Lisp_Object bestmatch, tail, elt, eltstring;
Lisp_Object bucket, zero, end, tem;
struct gcpro gcpro1, gcpro2, gcpro3, gcpro4;
- CHECK_STRING (string, 0);
+ CHECK_STRING (string);
if (!list && !VECTORP (alist))
return call3 (alist, string, predicate, Qnil);
}
\f
DEFUN ("all-completions", Fall_completions, Sall_completions, 2, 4, 0,
- "Search for partial matches to STRING in ALIST.\n\
-Each car of each element of ALIST is tested to see if it begins with STRING.\n\
-The value is a list of all the strings from ALIST that match.\n\
-\n\
-ALIST can be an obarray instead of an alist.\n\
-Then the print names of all symbols in the obarray are the possible matches.\n\
-\n\
-ALIST can also be a function to do the completion itself.\n\
-It receives three arguments: the values STRING, PREDICATE and t.\n\
-Whatever it returns becomes the value of `all-completions'.\n\
-\n\
-If optional third argument PREDICATE is non-nil,\n\
-it is used to test each possible match.\n\
-The match is a candidate only if PREDICATE returns non-nil.\n\
-The argument given to PREDICATE is the alist element\n\
-or the symbol from the obarray.\n\
-Additionally to this predicate, `completion-regexp-list'\n\
-is used to further constrain the set of candidates.\n\
-\n\
-If the optional fourth argument HIDE-SPACES is non-nil,\n\
-strings in ALIST that start with a space\n\
-are ignored unless STRING itself starts with a space.")
- (string, alist, predicate, hide_spaces)
+ doc: /* Search for partial matches to STRING in ALIST.
+Each car of each element of ALIST is tested to see if it begins with STRING.
+The value is a list of all the strings from ALIST that match.
+
+ALIST can be an obarray instead of an alist.
+Then the print names of all symbols in the obarray are the possible matches.
+
+ALIST can also be a function to do the completion itself.
+It receives three arguments: the values STRING, PREDICATE and t.
+Whatever it returns becomes the value of `all-completions'.
+
+If optional third argument PREDICATE is non-nil,
+it is used to test each possible match.
+The match is a candidate only if PREDICATE returns non-nil.
+The argument given to PREDICATE is the alist element
+or the symbol from the obarray.
+Additionally to this predicate, `completion-regexp-list'
+is used to further constrain the set of candidates.
+
+If the optional fourth argument HIDE-SPACES is non-nil,
+strings in ALIST that start with a space
+are ignored unless STRING itself starts with a space. */)
+ (string, alist, predicate, hide_spaces)
Lisp_Object string, alist, predicate, hide_spaces;
{
Lisp_Object tail, elt, eltstring;
Lisp_Object bucket, tem;
struct gcpro gcpro1, gcpro2, gcpro3, gcpro4;
- CHECK_STRING (string, 0);
+ CHECK_STRING (string);
if (!list && !VECTORP (alist))
{
return call3 (alist, string, predicate, Qt);
Lisp_Object Vminibuffer_completion_confirm, Qminibuffer_completion_confirm;
Lisp_Object Vminibuffer_completing_file_name;
-/* This comment supplies the doc string for completing-read,
- for make-docfile to see. We cannot put this in the real DEFUN
- due to limits in the Unix cpp.
-
-DEFUN ("completing-read", Fcompleting_read, Scompleting_read, 2, 8, 0,
- "Read a string in the minibuffer, with completion.\n\
-PROMPT is a string to prompt with; normally it ends in a colon and a space.\n\
-TABLE is an alist whose elements' cars are strings, or an obarray.\n\
-TABLE can also be a function to do the completion itself.\n\
-PREDICATE limits completion to a subset of TABLE.\n\
-See `try-completion' and `all-completions' for more details\n\
- on completion, TABLE, and PREDICATE.\n\
-\n\
-If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless\n\
- the input is (or completes to) an element of TABLE or is null.\n\
- If it is also not t, Return does not exit if it does non-null completion.\n\
-If the input is null, `completing-read' returns an empty string,\n\
- regardless of the value of REQUIRE-MATCH.\n\
-\n\
-If INITIAL-INPUT is non-nil, insert it in the minibuffer initially.\n\
- If it is (STRING . POSITION), the initial input\n\
- is STRING, but point is placed POSITION characters into the string.\n\
- This feature is deprecated--it is best to pass nil for INITIAL.\n\
-HIST, if non-nil, specifies a history list\n\
- and optionally the initial position in the list.\n\
- It can be a symbol, which is the history list variable to use,\n\
- or it can be a cons cell (HISTVAR . HISTPOS).\n\
- In that case, HISTVAR is the history list variable to use,\n\
- and HISTPOS is the initial position (the position in the list\n\
- which INITIAL-INPUT corresponds to).\n\
- Positions are counted starting from 1 at the beginning of the list.\n\
-DEF, if non-nil, is the default value.\n\
-\n\
-If INHERIT-INPUT-METHOD is non-nil, the minibuffer inherits\n\
- the current input method and the setting of enable-multibyte-characters.\n\
-\n\
-Completion ignores case if the ambient value of\n\
- `completion-ignore-case' is non-nil."
-*/
DEFUN ("completing-read", Fcompleting_read, Scompleting_read, 2, 8, 0,
- 0 /* See immediately above */)
- (prompt, table, predicate, require_match, initial_input, hist, def, inherit_input_method)
+ doc: /* Read a string in the minibuffer, with completion.
+PROMPT is a string to prompt with; normally it ends in a colon and a space.
+TABLE is an alist whose elements' cars are strings, or an obarray.
+TABLE can also be a function to do the completion itself.
+PREDICATE limits completion to a subset of TABLE.
+See `try-completion' and `all-completions' for more details
+ on completion, TABLE, and PREDICATE.
+
+If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless
+ the input is (or completes to) an element of TABLE or is null.
+ If it is also not t, Return does not exit if it does non-null completion.
+If the input is null, `completing-read' returns an empty string,
+ regardless of the value of REQUIRE-MATCH.
+
+If INITIAL-INPUT is non-nil, insert it in the minibuffer initially.
+ If it is (STRING . POSITION), the initial input
+ is STRING, but point is placed POSITION characters into the string.
+ This feature is deprecated--it is best to pass nil for INITIAL.
+HIST, if non-nil, specifies a history list
+ and optionally the initial position in the list.
+ It can be a symbol, which is the history list variable to use,
+ or it can be a cons cell (HISTVAR . HISTPOS).
+ In that case, HISTVAR is the history list variable to use,
+ and HISTPOS is the initial position (the position in the list
+ which INITIAL-INPUT corresponds to).
+ Positions are counted starting from 1 at the beginning of the list.
+DEF, if non-nil, is the default value.
+
+If INHERIT-INPUT-METHOD is non-nil, the minibuffer inherits
+ the current input method and the setting of enable-multibyte-characters.
+
+Completion ignores case if the ambient value of
+ `completion-ignore-case' is non-nil. */)
+ (prompt, table, predicate, require_match, initial_input, hist, def, inherit_input_method)
Lisp_Object prompt, table, predicate, require_match, initial_input;
Lisp_Object hist, def, inherit_input_method;
{
position = Fcdr (init);
init = Fcar (init);
}
- CHECK_STRING (init, 0);
+ CHECK_STRING (init);
if (!NILP (position))
{
- CHECK_NUMBER (position, 0);
+ CHECK_NUMBER (position);
/* Convert to distance from end of input. */
pos = XINT (position) - XSTRING (init)->size;
}
}
DEFUN ("minibuffer-complete", Fminibuffer_complete, Sminibuffer_complete, 0, 0, "",
- "Complete the minibuffer contents as far as possible.\n\
-Return nil if there is no valid completion, else t.\n\
-If no characters can be completed, display a list of possible completions.\n\
-If you repeat this command after it displayed such a list,\n\
-scroll the window of possible completions.")
- ()
+ doc: /* Complete the minibuffer contents as far as possible.
+Return nil if there is no valid completion, else t.
+If no characters can be completed, display a list of possible completions.
+If you repeat this command after it displayed such a list,
+scroll the window of possible completions. */)
+ ()
{
register int i;
Lisp_Object window, tem;
DEFUN ("minibuffer-complete-and-exit", Fminibuffer_complete_and_exit,
Sminibuffer_complete_and_exit, 0, 0, "",
- "If the minibuffer contents is a valid completion then exit.\n\
-Otherwise try to complete it. If completion leads to a valid completion,\n\
-a repetition of this command will exit.")
- ()
+ doc: /* If the minibuffer contents is a valid completion then exit.
+Otherwise try to complete it. If completion leads to a valid completion,
+a repetition of this command will exit. */)
+ ()
{
register int i;
Lisp_Object val;
DEFUN ("minibuffer-complete-word", Fminibuffer_complete_word, Sminibuffer_complete_word,
0, 0, "",
- "Complete the minibuffer contents at most a single word.\n\
-After one word is completed as much as possible, a space or hyphen\n\
-is added, provided that matches some possible completion.\n\
-Return nil if there is no valid completion, else t.")
- ()
+ doc: /* Complete the minibuffer contents at most a single word.
+After one word is completed as much as possible, a space or hyphen
+is added, provided that matches some possible completion.
+Return nil if there is no valid completion, else t. */)
+ ()
{
Lisp_Object completion, tem, tem1;
register int i, i_byte;
{
int buffer_nchars, completion_nchars;
- CHECK_STRING (completion, 0);
+ CHECK_STRING (completion);
tem = Fminibuffer_contents ();
GCPRO2 (completion, tem);
/* If reading a file name,
\f
DEFUN ("display-completion-list", Fdisplay_completion_list, Sdisplay_completion_list,
1, 1, 0,
- "Display the list of completions, COMPLETIONS, using `standard-output'.\n\
-Each element may be just a symbol or string\n\
-or may be a list of two strings to be printed as if concatenated.\n\
-`standard-output' must be a buffer.\n\
-The actual completion alternatives, as inserted, are given `mouse-face'\n\
-properties of `highlight'.\n\
-At the end, this runs the normal hook `completion-setup-hook'.\n\
-It can find the completion buffer in `standard-output'.")
- (completions)
+ doc: /* Display the list of completions, COMPLETIONS, using `standard-output'.
+Each element may be just a symbol or string
+or may be a list of two strings to be printed as if concatenated.
+`standard-output' must be a buffer.
+The actual completion alternatives, as inserted, are given `mouse-face'
+properties of `highlight'.
+At the end, this runs the normal hook `completion-setup-hook'.
+It can find the completion buffer in `standard-output'. */)
+ (completions)
Lisp_Object completions;
{
Lisp_Object tail, elt;
if (CONSP (elt))
{
tem = XCAR (elt);
- CHECK_STRING (tem, 0);
+ CHECK_STRING (tem);
length = XSTRING (tem)->size;
tem = Fcar (XCDR (elt));
- CHECK_STRING (tem, 0);
+ CHECK_STRING (tem);
length += XSTRING (tem)->size;
}
else
{
- CHECK_STRING (elt, 0);
+ CHECK_STRING (elt);
length = XSTRING (elt)->size;
}
DEFUN ("minibuffer-completion-help", Fminibuffer_completion_help, Sminibuffer_completion_help,
0, 0, "",
- "Display a list of possible completions of the current minibuffer contents.")
- ()
+ doc: /* Display a list of possible completions of the current minibuffer contents. */)
+ ()
{
Lisp_Object completions;
}
\f
DEFUN ("self-insert-and-exit", Fself_insert_and_exit, Sself_insert_and_exit, 0, 0, "",
- "Terminate minibuffer input.")
- ()
+ doc: /* Terminate minibuffer input. */)
+ ()
{
if (INTEGERP (last_command_char))
internal_self_insert (XINT (last_command_char), 0);
}
DEFUN ("exit-minibuffer", Fexit_minibuffer, Sexit_minibuffer, 0, 0, "",
- "Terminate this minibuffer argument.")
- ()
+ doc: /* Terminate this minibuffer argument. */)
+ ()
{
return Fthrow (Qexit, Qnil);
}
DEFUN ("minibuffer-depth", Fminibuffer_depth, Sminibuffer_depth, 0, 0, 0,
- "Return current depth of activations of minibuffer, a nonnegative integer.")
- ()
+ doc: /* Return current depth of activations of minibuffer, a nonnegative integer. */)
+ ()
{
return make_number (minibuf_level);
}
DEFUN ("minibuffer-prompt", Fminibuffer_prompt, Sminibuffer_prompt, 0, 0, 0,
- "Return the prompt string of the currently-active minibuffer.\n\
-If no minibuffer is active, return nil.")
- ()
+ doc: /* Return the prompt string of the currently-active minibuffer.
+If no minibuffer is active, return nil. */)
+ ()
{
return Fcopy_sequence (minibuf_prompt);
}
DEFUN ("minibuffer-message", Fminibuffer_message, Sminibuffer_message,
1, 1, 0,
- "Temporarily display STRING at the end of the minibuffer.\n\
-The text is displayed for two seconds,\n\
-or until the next input event arrives, whichever comes first.")
- (string)
+ doc: /* Temporarily display STRING at the end of the minibuffer.
+The text is displayed for two seconds,
+or until the next input event arrives, whichever comes first. */)
+ (string)
Lisp_Object string;
{
temp_echo_area_glyphs (XSTRING (string)->data);
Qactivate_input_method = intern ("activate-input-method");
staticpro (&Qactivate_input_method);
- DEFVAR_LISP ("read-buffer-function", &Vread_buffer_function,
- "If this is non-nil, `read-buffer' does its work by calling this function.");
+ DEFVAR_LISP ("read-buffer-function", &Vread_buffer_function,
+ doc: /* If this is non-nil, `read-buffer' does its work by calling this function. */);
Vread_buffer_function = Qnil;
- DEFVAR_LISP ("minibuffer-setup-hook", &Vminibuffer_setup_hook,
- "Normal hook run just after entry to minibuffer.");
+ DEFVAR_LISP ("minibuffer-setup-hook", &Vminibuffer_setup_hook,
+ doc: /* Normal hook run just after entry to minibuffer. */);
Vminibuffer_setup_hook = Qnil;
DEFVAR_LISP ("minibuffer-exit-hook", &Vminibuffer_exit_hook,
- "Normal hook run just after exit from minibuffer.");
+ doc: /* Normal hook run just after exit from minibuffer. */);
Vminibuffer_exit_hook = Qnil;
DEFVAR_LISP ("history-length", &Vhistory_length,
- "*Maximum length for history lists before truncation takes place.\n\
-A number means that length; t means infinite. Truncation takes place\n\
-just after a new element is inserted. Setting the history-length\n\
-property of a history variable overrides this default.");
+ doc: /* *Maximum length for history lists before truncation takes place.
+A number means that length; t means infinite. Truncation takes place
+just after a new element is inserted. Setting the history-length
+property of a history variable overrides this default. */);
XSETFASTINT (Vhistory_length, 30);
DEFVAR_LISP ("completion-auto-help", &Vcompletion_auto_help,
- "*Non-nil means automatically provide help for invalid completion input.");
+ doc: /* *Non-nil means automatically provide help for invalid completion input. */);
Vcompletion_auto_help = Qt;
DEFVAR_BOOL ("completion-ignore-case", &completion_ignore_case,
- "Non-nil means don't consider case significant in completion.");
+ doc: /* Non-nil means don't consider case significant in completion. */);
completion_ignore_case = 0;
DEFVAR_BOOL ("enable-recursive-minibuffers", &enable_recursive_minibuffers,
- "*Non-nil means to allow minibuffer commands while in the minibuffer.\n\
-This variable makes a difference whenever the minibuffer window is active.");
+ doc: /* *Non-nil means to allow minibuffer commands while in the minibuffer.
+This variable makes a difference whenever the minibuffer window is active. */);
enable_recursive_minibuffers = 0;
DEFVAR_LISP ("minibuffer-completion-table", &Vminibuffer_completion_table,
- "Alist or obarray used for completion in the minibuffer.\n\
-This becomes the ALIST argument to `try-completion' and `all-completion'.\n\
-\n\
-The value may alternatively be a function, which is given three arguments:\n\
- STRING, the current buffer contents;\n\
- PREDICATE, the predicate for filtering possible matches;\n\
- CODE, which says what kind of things to do.\n\
-CODE can be nil, t or `lambda'.\n\
-nil means to return the best completion of STRING, or nil if there is none.\n\
-t means to return a list of all possible completions of STRING.\n\
-`lambda' means to return t if STRING is a valid completion as it stands.");
+ doc: /* Alist or obarray used for completion in the minibuffer.
+This becomes the ALIST argument to `try-completion' and `all-completion'.
+
+The value may alternatively be a function, which is given three arguments:
+ STRING, the current buffer contents;
+ PREDICATE, the predicate for filtering possible matches;
+ CODE, which says what kind of things to do.
+CODE can be nil, t or `lambda'.
+nil means to return the best completion of STRING, or nil if there is none.
+t means to return a list of all possible completions of STRING.
+`lambda' means to return t if STRING is a valid completion as it stands. */);
Vminibuffer_completion_table = Qnil;
DEFVAR_LISP ("minibuffer-completion-predicate", &Vminibuffer_completion_predicate,
- "Within call to `completing-read', this holds the PREDICATE argument.");
+ doc: /* Within call to `completing-read', this holds the PREDICATE argument. */);
Vminibuffer_completion_predicate = Qnil;
DEFVAR_LISP ("minibuffer-completion-confirm", &Vminibuffer_completion_confirm,
- "Non-nil => demand confirmation of completion before exiting minibuffer.");
+ doc: /* Non-nil => demand confirmation of completion before exiting minibuffer. */);
Vminibuffer_completion_confirm = Qnil;
DEFVAR_LISP ("minibuffer-completing-file-name",
&Vminibuffer_completing_file_name,
- "Non-nil means completing file names.");
+ doc: /* Non-nil means completing file names. */);
Vminibuffer_completing_file_name = Qnil;
DEFVAR_LISP ("minibuffer-help-form", &Vminibuffer_help_form,
- "Value that `help-form' takes on inside the minibuffer.");
+ doc: /* Value that `help-form' takes on inside the minibuffer. */);
Vminibuffer_help_form = Qnil;
DEFVAR_LISP ("minibuffer-history-variable", &Vminibuffer_history_variable,
- "History list symbol to add minibuffer values to.\n\
-Each string of minibuffer input, as it appears on exit from the minibuffer,\n\
-is added with\n\
- (set minibuffer-history-variable\n\
- (cons STRING (symbol-value minibuffer-history-variable)))");
+ doc: /* History list symbol to add minibuffer values to.
+Each string of minibuffer input, as it appears on exit from the minibuffer,
+is added with
+ (set minibuffer-history-variable
+ (cons STRING (symbol-value minibuffer-history-variable))) */);
XSETFASTINT (Vminibuffer_history_variable, 0);
DEFVAR_LISP ("minibuffer-history-position", &Vminibuffer_history_position,
- "Current position of redoing in the history list.");
+ doc: /* Current position of redoing in the history list. */);
Vminibuffer_history_position = Qnil;
DEFVAR_BOOL ("minibuffer-auto-raise", &minibuffer_auto_raise,
- "*Non-nil means entering the minibuffer raises the minibuffer's frame.\n\
-Some uses of the echo area also raise that frame (since they use it too).");
+ doc: /* *Non-nil means entering the minibuffer raises the minibuffer's frame.
+Some uses of the echo area also raise that frame (since they use it too). */);
minibuffer_auto_raise = 0;
DEFVAR_LISP ("completion-regexp-list", &Vcompletion_regexp_list,
- "List of regexps that should restrict possible completions.");
+ doc: /* List of regexps that should restrict possible completions. */);
Vcompletion_regexp_list = Qnil;
DEFVAR_BOOL ("minibuffer-allow-text-properties",
&minibuffer_allow_text_properties,
- "Non-nil means `read-from-minibuffer' should not discard text properties.\n\
-This also affects `read-string', but it does not affect `read-minibuffer',\n\
-`read-no-blanks-input', or any of the functions that do minibuffer input\n\
-with completion; they always discard text properties.");
+ doc: /* Non-nil means `read-from-minibuffer' should not discard text properties.
+This also affects `read-string', but it does not affect `read-minibuffer',
+`read-no-blanks-input', or any of the functions that do minibuffer input
+with completion; they always discard text properties. */);
minibuffer_allow_text_properties = 0;
DEFVAR_LISP ("minibuffer-prompt-properties", &Vminibuffer_prompt_properties,
- "Text properties that are added to minibuffer prompts.\n\
-These are in addition to the basic `field' property, and stickiness\n\
-properties.");
+ doc: /* Text properties that are added to minibuffer prompts.
+These are in addition to the basic `field' property, and stickiness
+properties. */);
/* We use `intern' here instead of Qread_only to avoid
initialization-order problems. */
Vminibuffer_prompt_properties
initial_define_key (Vminibuffer_local_map, Ctl ('j'),
"exit-minibuffer");
- initial_define_key (Vminibuffer_local_ns_map, Ctl ('g'),
- "abort-recursive-edit");
- initial_define_key (Vminibuffer_local_ns_map, Ctl ('m'),
- "exit-minibuffer");
- initial_define_key (Vminibuffer_local_ns_map, Ctl ('j'),
- "exit-minibuffer");
-
initial_define_key (Vminibuffer_local_ns_map, ' ',
"exit-minibuffer");
initial_define_key (Vminibuffer_local_ns_map, '\t',
initial_define_key (Vminibuffer_local_ns_map, '?',
"self-insert-and-exit");
- initial_define_key (Vminibuffer_local_completion_map, Ctl ('g'),
- "abort-recursive-edit");
- initial_define_key (Vminibuffer_local_completion_map, Ctl ('m'),
- "exit-minibuffer");
- initial_define_key (Vminibuffer_local_completion_map, Ctl ('j'),
- "exit-minibuffer");
-
initial_define_key (Vminibuffer_local_completion_map, '\t',
"minibuffer-complete");
initial_define_key (Vminibuffer_local_completion_map, ' ',
initial_define_key (Vminibuffer_local_completion_map, '?',
"minibuffer-completion-help");
- initial_define_key (Vminibuffer_local_must_match_map, Ctl ('g'),
- "abort-recursive-edit");
initial_define_key (Vminibuffer_local_must_match_map, Ctl ('m'),
"minibuffer-complete-and-exit");
initial_define_key (Vminibuffer_local_must_match_map, Ctl ('j'),
"minibuffer-complete-and-exit");
- initial_define_key (Vminibuffer_local_must_match_map, '\t',
- "minibuffer-complete");
- initial_define_key (Vminibuffer_local_must_match_map, ' ',
- "minibuffer-complete-word");
- initial_define_key (Vminibuffer_local_must_match_map, '?',
- "minibuffer-completion-help");
}