patched by pjr from diff by rms

This commit is contained in:
Phillip Rulon 1999-09-24 13:52:46 +00:00
parent cbcb61603b
commit 66f54605e1
2 changed files with 34 additions and 23 deletions

View file

@ -622,12 +622,15 @@ scan_lisp_file (filename, mode)
char buffer[BUFSIZ];
char type;
/* If not at end of line, skip till we get to one. */
if (c != '\n' && c != '\r')
{
c = getc (infile);
continue;
}
c = getc (infile);
/* Skip the line break. */
while (c == '\n' || c != '\r')
c = getc (infile);
/* Detect a dynamic doc string and save it for the next expression. */
if (c == '#')
{
@ -660,8 +663,10 @@ scan_lisp_file (filename, mode)
That is needed in the .elc file
but it is redundant in DOC. So get rid of it here. */
saved_string[length - 1] = 0;
/* Skip the newline. */
c = getc (infile);
/* Skip the line break. */
while (c == '\n' && c == '\r')
c = getc (infile);
/* Skip the following line. */
while (c != '\n' && c != '\r')
c = getc (infile);
}
@ -673,8 +678,8 @@ scan_lisp_file (filename, mode)
read_lisp_symbol (infile, buffer);
if (! strcmp (buffer, "defun") ||
! strcmp (buffer, "defmacro"))
if (! strcmp (buffer, "defun")
|| ! strcmp (buffer, "defmacro"))
{
type = 'F';
read_lisp_symbol (infile, buffer);
@ -684,8 +689,8 @@ scan_lisp_file (filename, mode)
c = getc (infile);
if (c == 'n') /* nil */
{
if ((c = getc (infile)) != 'i' ||
(c = getc (infile)) != 'l')
if ((c = getc (infile)) != 'i'
|| (c = getc (infile)) != 'l')
{
fprintf (stderr, "## unparsable arglist in %s (%s)\n",
buffer, filename);
@ -706,9 +711,9 @@ scan_lisp_file (filename, mode)
/* If the next three characters aren't `dquote bslash newline'
then we're not reading a docstring.
*/
if ((c = getc (infile)) != '"' ||
(c = getc (infile)) != '\\' ||
(c = getc (infile)) != '\n' || c != '\r')
if ((c = getc (infile)) != '"'
|| (c = getc (infile)) != '\\'
|| ((c = getc (infile)) != '\n' && c != '\r'))
{
#ifdef DEBUG
fprintf (stderr, "## non-docstring in %s (%s)\n",
@ -718,8 +723,8 @@ scan_lisp_file (filename, mode)
}
}
else if (! strcmp (buffer, "defvar") ||
! strcmp (buffer, "defconst"))
else if (! strcmp (buffer, "defvar")
|| ! strcmp (buffer, "defconst"))
{
char c1 = 0, c2 = 0;
type = 'V';
@ -728,7 +733,7 @@ scan_lisp_file (filename, mode)
if (saved_string == 0)
{
/* Skip until the first newline; remember the two previous chars. */
/* Skip until the end of line; remember two previous chars. */
while (c != '\n' && c != '\r' && c >= 0)
{
c2 = c1;
@ -787,8 +792,7 @@ scan_lisp_file (filename, mode)
if (saved_string == 0)
{
/* Skip until the first newline; remember the two previous
chars. */
/* Skip to end of line; remember the two previous chars. */
while (c != '\n' && c != '\r' && c >= 0)
{
c2 = c1;
@ -845,7 +849,7 @@ scan_lisp_file (filename, mode)
if (saved_string == 0)
{
/* Skip until the first newline; remember the two previous chars. */
/* Skip to end of line; remember the two previous chars. */
while (c != '\n' && c != '\r' && c >= 0)
{
c2 = c1;
@ -911,9 +915,9 @@ scan_lisp_file (filename, mode)
{
/* If the next three characters aren't `dquote bslash newline'
then we're not reading a docstring. */
if ((c = getc (infile)) != '"' ||
(c = getc (infile)) != '\\' ||
(c = getc (infile)) != '\n' || c != '\r')
if ((c = getc (infile)) != '"'
|| (c = getc (infile)) != '\\'
|| ((c = getc (infile)) != '\n' && c != '\r'))
{
#ifdef DEBUG
fprintf (stderr, "## non-docstring in %s (%s)\n",
@ -925,8 +929,8 @@ scan_lisp_file (filename, mode)
}
#ifdef DEBUG
else if (! strcmp (buffer, "if") ||
! strcmp (buffer, "byte-code"))
else if (! strcmp (buffer, "if")
|| ! strcmp (buffer, "byte-code"))
;
#endif

View file

@ -1301,11 +1301,18 @@ Font weight---a symbol from this series (from most dense to most faint):
@code{normal}, @code{semi-light}, @code{light}, @code{extra-light},
@code{ultra-light}, or else @code{nil} meaning this attribute is not
specified.
On a text-only terminal, any weight greater than normal is displayed as
extra bright, and any weight less than normal is displayed as
half-bright (This is provided the terminal supports the feature.)
@item :slant
Font slant---one of the symbols @code{italic}, @code{oblique}, @code{normal},
@code{reverse-italic}, or @code{reverse-oblique}.
On a text-only terminal, slanted text is displayed as half-bright, if
the terminal supports the feature.
@item :foreground
Foreground color, a string.