1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-17 17:58:46 +00:00

entered into RCS

This commit is contained in:
Jim Blandy 1992-05-18 08:13:37 +00:00
parent f9f1551385
commit 502ddf238f
4 changed files with 20 additions and 29 deletions

View File

@ -1,11 +1,11 @@
/* Simple built-in editing commands.
Copyright (C) 1985 Free Software Foundation, Inc.
Copyright (C) 1985, 1992 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
@ -94,7 +94,8 @@ With positive ARG, a non-empty line at the end counts as one line\n\
pos = scan_buffer ('\n', pos2, count - negp, &shortage);
if (shortage > 0
&& (negp
|| (ZV >= BEGV
|| (ZV > BEGV
&& pos != pos2
&& FETCH_CHAR (pos - 1) != '\n')))
shortage--;
SET_PT (pos);

View File

@ -105,19 +105,14 @@ DEFUN ("documentation", Fdocumentation, Sdocumentation, 1, 2, 0,
"Return the documentation string of FUNCTION.\n\
Unless a non-nil second argument is given, the\n\
string is passed through `substitute-command-keys'.")
(fun1, raw)
Lisp_Object fun1, raw;
(function, raw)
Lisp_Object function, raw;
{
Lisp_Object fun;
Lisp_Object funcar;
Lisp_Object tem, doc;
fun = fun1;
while (XTYPE (fun) == Lisp_Symbol)
{
QUIT;
fun = Fsymbol_function (fun);
}
fun = Findirect_function (function);
switch (XTYPE (fun))
{
@ -149,11 +144,11 @@ string is passed through `substitute-command-keys'.")
funcar = Fcar (fun);
if (XTYPE (funcar) != Lisp_Symbol)
return Fsignal (Qinvalid_function, Fcons (fun, Qnil));
if (XSYMBOL (funcar) == XSYMBOL (Qkeymap))
else if (EQ (funcar, Qkeymap))
return build_string ("Prefix command (definition is a keymap associating keystrokes with\n\
subcommands.)");
if (XSYMBOL (funcar) == XSYMBOL (Qlambda)
|| XSYMBOL (funcar) == XSYMBOL (Qautoload))
else if (EQ (funcar, Qlambda)
|| EQ (funcar, Qautoload))
{
tem = Fcar (Fcdr (Fcdr (fun)));
if (XTYPE (tem) == Lisp_String)
@ -162,10 +157,12 @@ subcommands.)");
doc = get_doc_string (XFASTINT (tem));
else
return Qnil;
break;
}
if (XSYMBOL (funcar) == XSYMBOL (Qmocklisp))
else if (EQ (funcar, Qmocklisp))
return Qnil;
if (XSYMBOL (funcar) == XSYMBOL (Qmacro))
else if (EQ (funcar, Qmacro))
return Fdocumentation (Fcdr (fun), raw);
/* Fall through to the default to report an error. */

View File

@ -1,11 +1,11 @@
/* Manipulation of keymaps
Copyright (C) 1985, 1986, 1987, 1988 Free Software Foundation, Inc.
Copyright (C) 1985, 1986, 1987, 1988, 1992 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
@ -174,12 +174,7 @@ get_keymap_1 (object, error)
{
register Lisp_Object tem;
tem = object;
while (XTYPE (tem) == Lisp_Symbol && !EQ (tem, Qunbound))
{
tem = XSYMBOL (tem)->function;
QUIT;
}
tem = indirect_function (object);
if (CONSP (tem) && EQ (XCONS (tem)->car, Qkeymap))
return tem;
if (error)

View File

@ -1,11 +1,11 @@
/* Keyboard macros.
Copyright (C) 1985, 1986 Free Software Foundation, Inc.
Copyright (C) 1985, 1986, 1992 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
@ -201,9 +201,7 @@ COUNT is a repeat count, or nil for once, or 0 for infinite loop.")
prefixarg = Fprefix_numeric_value (prefixarg),
repeat = XINT (prefixarg);
final = macro;
while (XTYPE (final) == Lisp_Symbol && !EQ (final, Qunbound))
final = XSYMBOL (final)->function;
final = indirect_function (macro);
if (XTYPE (final) != Lisp_String
&& XTYPE (final) != Lisp_Vector)
error ("Keyboard macros must be strings or vectors.");