remove whitespace and tab
This commit is contained in:
parent
85b7ec3495
commit
18e54d401d
84 changed files with 401 additions and 401 deletions
|
@ -82,7 +82,7 @@ AC_CANONICAL_BUILD
|
|||
# We need to run some of our own binaries, most notably makedoc, but as
|
||||
# long as we have this process, we also use our own makeinfo and
|
||||
# install-info.
|
||||
#
|
||||
#
|
||||
# This means that if we are cross compiling, we have to configure the
|
||||
# package twice: once with the native compiler (this is done in a
|
||||
# subdirectory $native_tools), and once with the cross compiler.
|
||||
|
|
|
@ -198,7 +198,7 @@
|
|||
%%% \epsfclipon, \epsfclipoff, \epsfdrafton,
|
||||
%%% \epsfdraftoff, change \empty to \epsfempty.
|
||||
%%% ---------------------------------------------
|
||||
%%%
|
||||
%%%
|
||||
%%% Modified to avoid verbosity, give help.
|
||||
%%% --kb@cs.umb.edu, for Texinfo.
|
||||
%%% }
|
||||
|
|
|
@ -498,7 +498,7 @@ for (@pre, (grep ! /^($filter)$/o, @include), @post)
|
|||
{
|
||||
my $quote = /\W/ ? '"' : '';
|
||||
print ".SH $quote$_$quote\n";
|
||||
|
||||
|
||||
for ($include{$_})
|
||||
{
|
||||
# Replace leading dot, apostrophe and backslash tokens.
|
||||
|
|
|
@ -1947,7 +1947,7 @@ where each line of input produces a line of output.}
|
|||
% @acronym for "FBI", "NATO", and the like.
|
||||
% We print this one point size smaller, since it's intended for
|
||||
% all-uppercase.
|
||||
%
|
||||
%
|
||||
\def\acronym#1{\doacronym #1,,\finish}
|
||||
\def\doacronym#1,#2,#3\finish{%
|
||||
{\selectfonts\lsize #1}%
|
||||
|
@ -1959,7 +1959,7 @@ where each line of input produces a line of output.}
|
|||
|
||||
% @abbr for "Comput. J." and the like.
|
||||
% No font change, but don't do end-of-sentence spacing.
|
||||
%
|
||||
%
|
||||
\def\abbr#1{\doabbr #1,,\finish}
|
||||
\def\doabbr#1,#2,#3\finish{%
|
||||
{\frenchspacing #1}%
|
||||
|
@ -1978,43 +1978,43 @@ where each line of input produces a line of output.}
|
|||
% Theiling, which support regular, slanted, bold and bold slanted (and
|
||||
% "outlined" (blackboard board, sort of) versions, which we don't need).
|
||||
% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
|
||||
%
|
||||
%
|
||||
% Although only regular is the truly official Euro symbol, we ignore
|
||||
% that. The Euro is designed to be slightly taller than the regular
|
||||
% font height.
|
||||
%
|
||||
%
|
||||
% feymr - regular
|
||||
% feymo - slanted
|
||||
% feybr - bold
|
||||
% feybo - bold slanted
|
||||
%
|
||||
%
|
||||
% There is no good (free) typewriter version, to my knowledge.
|
||||
% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
|
||||
% Hmm.
|
||||
%
|
||||
%
|
||||
% Also doesn't work in math. Do we need to do math with euro symbols?
|
||||
% Hope not.
|
||||
%
|
||||
%
|
||||
%
|
||||
%
|
||||
\def\euro{{\eurofont e}}
|
||||
\def\eurofont{%
|
||||
% We set the font at each command, rather than predefining it in
|
||||
% \textfonts and the other font-switching commands, so that
|
||||
% installations which never need the symbold don't have to have the
|
||||
% font installed.
|
||||
%
|
||||
%
|
||||
% There is only one designed size (nominal 10pt), so we always scale
|
||||
% that to the current nominal size.
|
||||
%
|
||||
%
|
||||
% By the way, simply using "at 1em" works for cmr10 and the like, but
|
||||
% does not work for cmbx10 and other extended/shrunken fonts.
|
||||
%
|
||||
%
|
||||
\def\eurosize{\csname\curfontsize nominalsize\endcsname}%
|
||||
%
|
||||
\ifx\curfontstyle\bfstylename
|
||||
\ifx\curfontstyle\bfstylename
|
||||
% bold:
|
||||
\font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
|
||||
\else
|
||||
\else
|
||||
% regular:
|
||||
\font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
|
||||
\fi
|
||||
|
@ -2034,7 +2034,7 @@ where each line of input produces a line of output.}
|
|||
% Laurent Siebenmann reports \Orb undefined with:
|
||||
% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38
|
||||
% so we'll define it if necessary.
|
||||
%
|
||||
%
|
||||
\ifx\Orb\undefined
|
||||
\def\Orb{\mathhexbox20D}
|
||||
\fi
|
||||
|
@ -2350,7 +2350,7 @@ where each line of input produces a line of output.}
|
|||
% cause the example and the item to crash together. So we use this
|
||||
% bizarre value of 10001 as a signal to \aboveenvbreak to insert
|
||||
% \parskip glue after all. Section titles are handled this way also.
|
||||
%
|
||||
%
|
||||
\penalty 10001
|
||||
\endgroup
|
||||
\itemxneedsnegativevskipfalse
|
||||
|
@ -3501,7 +3501,7 @@ where each line of input produces a line of output.}
|
|||
% to re-insert the same penalty (values >10000 are used for various
|
||||
% signals); since we just inserted a non-discardable item, any
|
||||
% following glue (such as a \parskip) would be a breakpoint. For example:
|
||||
%
|
||||
%
|
||||
% @deffn deffn-whatever
|
||||
% @vindex index-whatever
|
||||
% Description.
|
||||
|
@ -4441,11 +4441,11 @@ where each line of input produces a line of output.}
|
|||
% glue accumulate. (Not a breakpoint because it's preceded by a
|
||||
% discardable item.)
|
||||
\vskip-\parskip
|
||||
%
|
||||
%
|
||||
% This is purely so the last item on the list is a known \penalty >
|
||||
% 10000. This is so \startdefun can avoid allowing breakpoints after
|
||||
% section headings. Otherwise, it would insert a valid breakpoint between:
|
||||
%
|
||||
%
|
||||
% @section sec-whatever
|
||||
% @deffn def-whatever
|
||||
\penalty 10001
|
||||
|
@ -5193,7 +5193,7 @@ where each line of input produces a line of output.}
|
|||
% by \defargscommonending, instead of 10000, since the sectioning
|
||||
% commands also insert a nobreak penalty, and we don't want to allow
|
||||
% a break between a section heading and a defun.
|
||||
%
|
||||
%
|
||||
\ifnum\lastpenalty=10002 \penalty2000 \fi
|
||||
%
|
||||
% Similarly, after a section heading, do not allow a break.
|
||||
|
@ -5561,7 +5561,7 @@ where each line of input produces a line of output.}
|
|||
% This does \let #1 = #2, with \csnames; that is,
|
||||
% \let \csname#1\endcsname = \csname#2\endcsname
|
||||
% (except of course we have to play expansion games).
|
||||
%
|
||||
%
|
||||
\def\cslet#1#2{%
|
||||
\expandafter\let
|
||||
\csname#1\expandafter\endcsname
|
||||
|
@ -5814,11 +5814,11 @@ where each line of input produces a line of output.}
|
|||
% is the best we can do for now. makeinfo does not expand macros in the
|
||||
% argument to @deffn, which ends up writing an index entry, and texindex
|
||||
% isn't prepared for an index sort entry that starts with \.
|
||||
%
|
||||
%
|
||||
% Since macro invocations are followed by braces, we can just redefine them
|
||||
% to take a single TeX argument. The case of a macro invocation that
|
||||
% goes to end-of-line is not handled.
|
||||
%
|
||||
%
|
||||
\def\emptyusermacros{\begingroup
|
||||
\def\do##1{\let\noexpand##1=\noexpand\asis}%
|
||||
\edef\next{\macrolist}\expandafter\endgroup\next}
|
||||
|
|
|
@ -7429,7 +7429,7 @@ In @TeX{}, the acronym is printed in slightly smaller font. In the
|
|||
Info output, the argument is printed as-is. In either format, if the
|
||||
second argument is present, it is printed in parentheses after the
|
||||
acronym. In HTML, Docbook, and XML, the @code{<acronym>} tag is
|
||||
used.
|
||||
used.
|
||||
|
||||
For instance (since GNU is a recursive acronym, we use
|
||||
@code{@@acronym} recursively):
|
||||
|
@ -9134,7 +9134,7 @@ labeled and numbered float.
|
|||
In Texinfo, all floats are numbered the same way: with the chapter
|
||||
number (or appendix letter), a period, and the float number, which
|
||||
simply counts 1, 2, 3, @dots{}, and is reset at each chapter. Each
|
||||
float type is counted independently.
|
||||
float type is counted independently.
|
||||
|
||||
Floats within an @code{@@unnumbered} are numbered, or outside of any
|
||||
chapter, are simply numbered consecutively from 1.
|
||||
|
@ -9941,7 +9941,7 @@ the predefined indices. For example:
|
|||
|
||||
The @code{@@defcodeindex} is like the @code{@@defindex} command,
|
||||
except that, in the printed output, it prints entries in an
|
||||
@code{@@code} font by default instead of a roman font.
|
||||
@code{@@code} font by default instead of a roman font.
|
||||
|
||||
You should define new indices before the end-of-header line of a
|
||||
Texinfo file, and (of course) before any @code{@@synindex} or
|
||||
|
@ -15080,7 +15080,7 @@ MS-DOS/MS-Windows).
|
|||
For the specified format, process @samp{@@if@var{format}} and
|
||||
@samp{@@@var{format}} commands even if not generating the given output
|
||||
format. For instance, if @option{--iftex} is specified, then
|
||||
@samp{@@iftex} and @samp{@@tex} blocks will be read.
|
||||
@samp{@@iftex} and @samp{@@tex} blocks will be read.
|
||||
|
||||
@item --macro-expand=@var{file}
|
||||
@itemx -E @var{file}
|
||||
|
@ -16113,7 +16113,7 @@ file.
|
|||
When splitting, the HTML output files are written into a subdirectory,
|
||||
with the name chosen as follows:
|
||||
@enumerate
|
||||
@item
|
||||
@item
|
||||
@command{makeinfo} first tries the subdirectory with the base name
|
||||
from @code{@@setfilename} (that is, any extension is removed). For
|
||||
example, HTML output for @code{@@setfilename gcc.info} would be
|
||||
|
@ -16150,7 +16150,7 @@ influencing the display of HTML documents: see
|
|||
@uref{http://www.w3.org/Style/CSS/}.
|
||||
|
||||
By default, @command{makeinfo} includes a few simple CSS commands to
|
||||
better implement the appearance of some of the environments. Here
|
||||
better implement the appearance of some of the environments. Here
|
||||
are two of them, as an example:
|
||||
|
||||
@example
|
||||
|
@ -16425,7 +16425,7 @@ Notice in particular:
|
|||
@end itemize
|
||||
|
||||
On case-folding computer systems, nodes differing only by case will be
|
||||
mapped to the same file.
|
||||
mapped to the same file.
|
||||
|
||||
In particular, as mentioned above, Top always maps to the file
|
||||
@file{index.html}. Thus, on a case-folding system, Top and a node
|
||||
|
@ -16635,9 +16635,9 @@ with <keyword> being "mono" or "split". Thus
|
|||
texinfo split http://www.gnu.org/software/texinfo/manual/texinfo/html_node/
|
||||
texinfo mono http://www.gnu.org/software/texinfo/manual/texinfo/texinfo.html
|
||||
|
||||
If the keyword is 'split', that is the target is split, the urlprefix gives
|
||||
If the keyword is 'split', that is the target is split, the urlprefix gives
|
||||
the directory and host name.
|
||||
If the keyword is 'mono', that is the target is mono, the urlprefix gives
|
||||
If the keyword is 'mono', that is the target is mono, the urlprefix gives
|
||||
directory, host and file name.
|
||||
|
||||
'#' followed by a space begins comments. '#' followed by another character
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
% Czech translation for texinfo.tex.
|
||||
%
|
||||
% Copyright (C) 1999, 2000 Free Software Foundation.
|
||||
%
|
||||
%
|
||||
% Authors:
|
||||
% Vladimir Michl <Vladimir.Michl@mujweb.cz>
|
||||
% Stepan Kasal <kasal@ucw.cz>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
% Dutch translation for texinfo.tex.
|
||||
% Dutch translation for texinfo.tex.
|
||||
% $Id: txi-nl.tex,v 1.1.1.2 2006/07/17 16:03:58 espie Exp $
|
||||
%
|
||||
% Copyright (C) 1999 Free Software Foundation.
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
@c This file is meant to be included in any arbitrary piece of
|
||||
@c documentation that wishes to describe the info program. Some day
|
||||
@c info-stnd.texi should probably use this file instead of duplicating
|
||||
@c its contents.
|
||||
@c its contents.
|
||||
@c
|
||||
@c This file documents the use of the standalone GNU Info program,
|
||||
@c versions 2.7 and later.
|
||||
@c versions 2.7 and later.
|
||||
|
||||
@ifclear InfoProgVer
|
||||
@set InfoProgVer 2.11
|
||||
|
@ -313,7 +313,7 @@ when you use the following commands:
|
|||
@item @code{n} (@code{next-node})
|
||||
@kindex n
|
||||
@findex next-node
|
||||
Selects the `Next' node.
|
||||
Selects the `Next' node.
|
||||
|
||||
@item @code{p} (@code{prev-node})
|
||||
@kindex p
|
||||
|
@ -674,7 +674,7 @@ of the subfile containing the node appears in the modeline as well:
|
|||
|
||||
@example
|
||||
--zz-Info: (emacs)Top, 291 lines --Top-- Subfile: emacs-1.Z---------------
|
||||
@end example
|
||||
@end example
|
||||
|
||||
When Info makes a node internally, such that there is no corresponding
|
||||
info file on disk, the name of the node is surrounded by asterisks
|
||||
|
|
|
@ -54,7 +54,7 @@ new_dir_file_p (struct stat *test)
|
|||
static unsigned dir_file_list_len = 0;
|
||||
static dir_file_list_entry_type *dir_file_list = NULL;
|
||||
unsigned i;
|
||||
|
||||
|
||||
for (i = 0; i < dir_file_list_len; i++)
|
||||
{
|
||||
dir_file_list_entry_type entry;
|
||||
|
@ -62,9 +62,9 @@ new_dir_file_p (struct stat *test)
|
|||
if (entry.device == test->st_dev && entry.inode == test->st_ino)
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
dir_file_list_len++;
|
||||
dir_file_list = xrealloc (dir_file_list,
|
||||
dir_file_list = xrealloc (dir_file_list,
|
||||
dir_file_list_len * sizeof (dir_file_list_entry_type));
|
||||
dir_file_list[dir_file_list_len - 1].device = test->st_dev;
|
||||
dir_file_list[dir_file_list_len - 1].inode = test->st_ino;
|
||||
|
@ -91,7 +91,7 @@ maybe_build_dir_node (char *dirname)
|
|||
/* Initialize the list we use to avoid reading the same dir file twice
|
||||
with the dir file just found. */
|
||||
new_dir_file_p (&dir_buffer->finfo);
|
||||
|
||||
|
||||
path_index = update_tags = 0;
|
||||
|
||||
/* Using each element of the path, check for one of the files in
|
||||
|
@ -125,7 +125,7 @@ maybe_build_dir_node (char *dirname)
|
|||
int statable;
|
||||
int namelen = strlen (from_file);
|
||||
char *fullpath = xmalloc (3 + strlen (this_dir) + namelen);
|
||||
|
||||
|
||||
strcpy (fullpath, this_dir);
|
||||
if (!IS_SLASH (fullpath[strlen (fullpath) - 1]))
|
||||
strcat (fullpath, "/");
|
||||
|
|
|
@ -600,7 +600,7 @@ display_cursor_at_point (WINDOW *window)
|
|||
terminal_goto_xy (hpos, vpos);
|
||||
fflush (stdout);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Functions Static to this File */
|
||||
|
|
|
@ -67,7 +67,7 @@ typedef struct
|
|||
extern FUNCTION_DOC function_doc_array[];
|
||||
|
||||
/* Under the old key-binding system, an info command is specified by
|
||||
the pointer to its function. Under the new INFOKEY binding system,
|
||||
the pointer to its function. Under the new INFOKEY binding system,
|
||||
it is specified by a pointer to the command's FUNCTION_DOC structure,
|
||||
defined in doc.c, from which the pointer to the function can be
|
||||
easily divined using the InfoFunction() extractor. */
|
||||
|
|
|
@ -274,7 +274,7 @@ echo_area_prep_read (void)
|
|||
display_cursor_at_point (active_window);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Echo Area Movement Commands */
|
||||
|
@ -538,7 +538,7 @@ DECLARE_INFO_COMMAND (ea_transpose_chars, _("Transpose characters at point"))
|
|||
count--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Echo Area Killing and Yanking */
|
||||
|
@ -589,7 +589,7 @@ DECLARE_INFO_COMMAND (ea_yank_pop, _("Yank back a previous kill"))
|
|||
register int i, counter;
|
||||
|
||||
counter = input_line_end - input_line_point;
|
||||
|
||||
|
||||
for (i = input_line_point - len; counter; i++, counter--)
|
||||
input_line[i] = input_line[i + len];
|
||||
|
||||
|
@ -755,7 +755,7 @@ ea_kill_text (int from, int to)
|
|||
/* Notice that the last command was a kill. */
|
||||
echo_area_last_command_was_kill++;
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Echo Area Completion */
|
||||
|
@ -890,7 +890,7 @@ info_read_completing_internal (WINDOW *window, char *prompt,
|
|||
|
||||
return (line);
|
||||
}
|
||||
|
||||
|
||||
/* Read a line in the echo area with completion over COMPLETIONS. */
|
||||
char *
|
||||
info_read_completing_in_echo_area (WINDOW *window,
|
||||
|
@ -1373,7 +1373,7 @@ echo_area_inform_of_deleted_window (WINDOW *window)
|
|||
if (window == echo_area_completions_window)
|
||||
echo_area_completions_window = (WINDOW *)NULL;
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Pushing and Popping the Echo Area */
|
||||
|
@ -1467,7 +1467,7 @@ echo_area_stack_contains_completions_p (void)
|
|||
|
||||
return (0);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Error Messages While Reading in Echo Area */
|
||||
|
|
|
@ -552,7 +552,7 @@ filesys_read_compressed (char *pathname, long int *filesize)
|
|||
{
|
||||
long offset, size;
|
||||
char *chunk;
|
||||
|
||||
|
||||
offset = size = 0;
|
||||
chunk = (char *)xmalloc (FILESYS_PIPE_BUFFER_SIZE);
|
||||
|
||||
|
@ -678,7 +678,7 @@ filesys_error_string (char *filename, int error_num)
|
|||
return (errmsg_buf);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Check for "dir" with all the possible info and compression suffixes,
|
||||
in combination. */
|
||||
|
||||
|
@ -693,19 +693,19 @@ is_dir_name (char *filename)
|
|||
char trydir[50];
|
||||
strcpy (trydir, "dir");
|
||||
strcat (trydir, info_suffixes[i]);
|
||||
|
||||
|
||||
if (strcasecmp (filename, trydir) == 0)
|
||||
return 1;
|
||||
|
||||
for (c = 0; compress_suffixes[c].suffix; c++)
|
||||
{
|
||||
char dir_compressed[50]; /* can be short */
|
||||
strcpy (dir_compressed, trydir);
|
||||
strcpy (dir_compressed, trydir);
|
||||
strcat (dir_compressed, compress_suffixes[c].suffix);
|
||||
if (strcasecmp (filename, dir_compressed) == 0)
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ find_footnotes_window (void)
|
|||
}
|
||||
|
||||
/* Manufacture a node containing the footnotes of this node, and
|
||||
return the manufactured node. If NODE has no footnotes, return a
|
||||
return the manufactured node. If NODE has no footnotes, return a
|
||||
NULL pointer. */
|
||||
NODE *
|
||||
make_footnotes_node (NODE *node)
|
||||
|
@ -133,7 +133,7 @@ make_footnotes_node (NODE *node)
|
|||
while (text_start < fn_node->nodelen)
|
||||
if (fn_node->contents[text_start++] == '\n')
|
||||
break;
|
||||
|
||||
|
||||
result->nodelen = strlen (header) + fn_node->nodelen - text_start;
|
||||
|
||||
/* Set the contents of this node. */
|
||||
|
|
|
@ -175,7 +175,7 @@ DECLARE_INFO_COMMAND (info_index_search,
|
|||
}
|
||||
|
||||
/* Look up SEARCH_STRING in the index for this file. If SEARCH_STRING
|
||||
is NULL, prompt user for input. */
|
||||
is NULL, prompt user for input. */
|
||||
void
|
||||
do_info_index_search (WINDOW *window, int count, char *search_string)
|
||||
{
|
||||
|
@ -454,7 +454,7 @@ DECLARE_INFO_COMMAND (info_next_index_match,
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Info APROPOS: Search every known index. */
|
||||
|
|
|
@ -159,7 +159,7 @@ info_parse_label (char *label, NODE *node)
|
|||
nodeline += skip_whitespace (nodeline);
|
||||
info_parse_node (nodeline, DONT_SKIP_NEWLINES);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Finding and Building Menus */
|
||||
|
@ -383,7 +383,7 @@ info_concatenate_references (REFERENCE **ref1, REFERENCE **ref2)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Copy a reference structure. Since we tend to free everything at
|
||||
every opportunity, we don't share any points, but copy everything into
|
||||
new memory. */
|
||||
|
@ -396,12 +396,12 @@ info_copy_reference (REFERENCE *src)
|
|||
dest->nodename = src->nodename ? xstrdup (src->nodename) : NULL;
|
||||
dest->start = src->start;
|
||||
dest->end = src->end;
|
||||
|
||||
|
||||
return dest;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Free the data associated with REFERENCES. */
|
||||
void
|
||||
info_free_references (REFERENCE **references)
|
||||
|
@ -533,7 +533,7 @@ printed_representation (unsigned char character, int hpos)
|
|||
return the_rep;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Functions Static To This File */
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* info-utils.h -- Exported functions and variables from info-utils.c.
|
||||
$Id: info-utils.h,v 1.4 2006/07/17 16:12:36 espie Exp $
|
||||
$Id: info-utils.h,v 1.4 2006/07/17 16:12:36 espie Exp $
|
||||
|
||||
Copyright (C) 1993, 1996, 1998, 2002, 2003, 2004 Free Software
|
||||
Foundation, Inc.
|
||||
|
|
|
@ -138,7 +138,7 @@ int info_windows_initialized_p = 0;
|
|||
static void info_short_help (void);
|
||||
static void init_messages (void);
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Main Entry Point to the Info Program */
|
||||
|
@ -540,7 +540,7 @@ add_file_directory_to_path (char *filename)
|
|||
free (directory_name);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Error handling. */
|
||||
|
||||
/* Non-zero if an error has been signalled. */
|
||||
|
@ -586,7 +586,7 @@ info_error (char *format, void *arg1, void *arg2)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Produce a scaled down description of the available options to Info. */
|
||||
static void
|
||||
info_short_help (void)
|
||||
|
@ -645,7 +645,7 @@ Texinfo home page: http://www.gnu.org/software/texinfo/"));
|
|||
xexit (0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Initialize strings for gettext. Because gettext doesn't handle N_ or
|
||||
_ within macro definitions, we put shared messages into variables and
|
||||
use them that way. This also has the advantage that there's only one
|
||||
|
|
|
@ -90,7 +90,7 @@ typedef char *CFunction ();
|
|||
} while (0)
|
||||
#endif /* !zero_mem */
|
||||
|
||||
|
||||
|
||||
/* A structure associating the nodes visited in a particular window. */
|
||||
typedef struct {
|
||||
WINDOW *window; /* The window that this list is attached to. */
|
||||
|
@ -148,7 +148,7 @@ extern const char *msg_one_window;
|
|||
extern const char *msg_win_too_small;
|
||||
extern const char *msg_cant_make_help;
|
||||
|
||||
|
||||
|
||||
#if defined(INFOKEY)
|
||||
/* Found in variables.c. */
|
||||
extern void set_variable_to_value (char *name, char *value);
|
||||
|
|
|
@ -557,7 +557,7 @@ DECLARE_INFO_COMMAND (info_get_info_help_node, _("Visit Info node `(info)Help'")
|
|||
remember_window_and_node (active_window, node);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Groveling Info Keymaps and Docs */
|
||||
|
|
|
@ -79,7 +79,7 @@ static void error_message (int error_code, const char *fmt,
|
|||
const void *a1, const void *a2, const void *a3, const void *a4);
|
||||
static void suggest_help (void);
|
||||
static void short_help (void);
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
|
@ -100,7 +100,7 @@ main (int argc, char **argv)
|
|||
if (pledge ("stdio rpath wpath cpath tty", NULL) == -1) {
|
||||
perror("pledge");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef ENABLE_NLS
|
||||
/* Set the text message domain. */
|
||||
|
@ -263,7 +263,7 @@ mkpath (const char *dir, const char *file)
|
|||
strcat (p, file);
|
||||
return p;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Compilation - the real work.
|
||||
|
||||
|
@ -865,7 +865,7 @@ write_infokey_file (FILE *fp, struct sect *sections)
|
|||
&& fputc (INFOKEY_MAGIC_E2, fp) != EOF
|
||||
&& fputc (INFOKEY_MAGIC_E3, fp) != EOF;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Error handling. */
|
||||
|
||||
|
|
|
@ -61,7 +61,7 @@ Format of entire infokey file:
|
|||
4 bytes magic number E
|
||||
|
||||
Format of INFO and EA sections:
|
||||
|
||||
|
||||
1 byte flag: 1 == suppress default key bindings
|
||||
Repeat:
|
||||
X bytes key sequence
|
||||
|
@ -69,7 +69,7 @@ Format of INFO and EA sections:
|
|||
1 byte action code (A_xxx)
|
||||
|
||||
Format of VAR section:
|
||||
|
||||
|
||||
Repeat:
|
||||
X bytes variable name
|
||||
1 byte '\0' terminator
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
#define ESC '\033'
|
||||
#define DEL '\177'
|
||||
#define TAB '\011'
|
||||
#define TAB '\011'
|
||||
#define RET '\r'
|
||||
#define LFD '\n'
|
||||
#define SPC ' '
|
||||
|
|
|
@ -57,7 +57,7 @@ static long get_node_length (SEARCH_BINDING *binding);
|
|||
neccessary to fill in the nodes or tags arrays in FILE_BUFFER. */
|
||||
#define INFO_NO_TAGS 0
|
||||
#define INFO_GET_TAGS 1
|
||||
|
||||
|
||||
/* Global variables. */
|
||||
|
||||
/* When non-zero, this is a string describing the recent file error. */
|
||||
|
@ -68,7 +68,7 @@ FILE_BUFFER **info_loaded_files = NULL;
|
|||
|
||||
/* The number of slots currently allocated to LOADED_FILES. */
|
||||
int info_loaded_files_slots = 0;
|
||||
|
||||
|
||||
/* Public functions for node manipulation. */
|
||||
|
||||
/* Used to build `dir' menu from `localdir' files found in INFOPATH. */
|
||||
|
@ -205,7 +205,7 @@ info_load_file (char *filename)
|
|||
return info_load_file_internal (filename, INFO_GET_TAGS);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Private functions implementation. */
|
||||
|
||||
/* The workhorse for info_find_file (). Non-zero 2nd argument says to
|
||||
|
@ -379,7 +379,7 @@ info_load_file_internal (char *filename, int get_tags)
|
|||
|
||||
return file_buffer;
|
||||
}
|
||||
|
||||
|
||||
/* Grovel FILE_BUFFER->contents finding tags and nodes, and filling in the
|
||||
various slots. This can also be used to rebuild a tag or node table. */
|
||||
void
|
||||
|
@ -1045,7 +1045,7 @@ info_node_of_file_buffer_tags (FILE_BUFFER *file_buffer, char *nodename)
|
|||
Return NULL, since this file doesn't contain the desired node. */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/* Managing file_buffers, nodes, and tags. */
|
||||
|
||||
/* Create a new, empty file buffer. */
|
||||
|
|
|
@ -53,7 +53,7 @@ typedef struct {
|
|||
#define N_CannotGC 0x20 /* File buffer cannot be gc'ed. */
|
||||
#define N_IsManPage 0x40 /* This node is a manpage. */
|
||||
#define N_FromAnchor 0x80 /* Synthesized for an anchor reference. */
|
||||
|
||||
|
||||
/* Internal data structures. */
|
||||
|
||||
/* String constants. */
|
||||
|
@ -109,7 +109,7 @@ typedef struct {
|
|||
int tags_slots; /* Number of slots allocated for TAGS. */
|
||||
int flags; /* Various flags. Mimics of N_* flags. */
|
||||
} FILE_BUFFER;
|
||||
|
||||
|
||||
/* Externally visible functions. */
|
||||
|
||||
/* Array of FILE_BUFFER * which represents the currently loaded info files. */
|
||||
|
|
|
@ -343,7 +343,7 @@ pc_initialize_terminal (term_name)
|
|||
terminal_write_chars_hook = pc_write_chars;
|
||||
terminal_scroll_terminal_hook = pc_scroll_terminal;
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* How to Read Characters From the PC Terminal */
|
||||
|
@ -633,7 +633,7 @@ install_keyboard_handler (void)
|
|||
}
|
||||
|
||||
#endif /* __DJGPP__ */
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Emulation of SIGTSTP on Ctrl-Z */
|
||||
|
@ -715,7 +715,7 @@ kill (pid_t pid, int sig)
|
|||
else
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
/* These should never be called, but they make the linker happy. */
|
||||
|
||||
void tputs (char *a, int b, int (*c)())
|
||||
|
|
|
@ -60,7 +60,7 @@ copy_binding (SEARCH_BINDING *binding)
|
|||
return (copy);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* The Actual Searching Functions */
|
||||
|
@ -246,7 +246,7 @@ looking_at (char *string, SEARCH_BINDING *binding)
|
|||
string was found at binding->start. */
|
||||
return (search_end == binding->start);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Small String Searches */
|
||||
|
@ -329,7 +329,7 @@ skip_node_characters (char *string, int newlines_okay)
|
|||
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
/* If the character following the close paren is a space or period,
|
||||
then this node name has no more characters associated with it. */
|
||||
if (c == '\t' ||
|
||||
|
@ -353,7 +353,7 @@ skip_node_characters (char *string, int newlines_okay)
|
|||
return (i);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Searching FILE_BUFFER's */
|
||||
|
|
|
@ -498,7 +498,7 @@ info_set_node_of_window (int remember, WINDOW *window, NODE *node)
|
|||
info_get_or_remove_footnotes (window);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Info Movement Commands */
|
||||
|
@ -1363,7 +1363,7 @@ DECLARE_INFO_COMMAND (info_scroll_half_screen_up,
|
|||
set_window_pagetop (window, desired_top);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Commands for Manipulating Windows */
|
||||
|
@ -1677,7 +1677,7 @@ DECLARE_INFO_COMMAND (info_toggle_wrap,
|
|||
{
|
||||
window_toggle_wrap (window);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Info Node Commands */
|
||||
|
@ -1982,14 +1982,14 @@ DECLARE_INFO_COMMAND (info_menu_digit, _("Select this menu item"))
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Return a pointer to the xref in XREF_LIST that is nearest to POS, or
|
||||
NULL if XREF_LIST is empty. That is, if POS is within any of the
|
||||
given xrefs, return that one. Otherwise, return the one with the
|
||||
nearest beginning or end. If there are two that are equidistant,
|
||||
prefer the one forward. The return is in newly-allocated memory,
|
||||
since the caller frees it.
|
||||
|
||||
|
||||
This is called from info_menu_or_ref_item with XREF_LIST being all
|
||||
the xrefs in the node, and POS being point. The ui function that
|
||||
starts it all off is select-reference-this-line.
|
||||
|
@ -2004,7 +2004,7 @@ nearest_xref (REFERENCE **xref_list, long int pos)
|
|||
int this_xref;
|
||||
int nearest = -1;
|
||||
long best_delta = -1;
|
||||
|
||||
|
||||
for (this_xref = 0; xref_list[this_xref]; this_xref++)
|
||||
{
|
||||
long delta;
|
||||
|
@ -2014,13 +2014,13 @@ nearest_xref (REFERENCE **xref_list, long int pos)
|
|||
nearest = this_xref;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
/* See how far POS is from this xref. Take into account the
|
||||
`*Note' that begins the xref, since as far as the user is
|
||||
concerned, that's where it starts. */
|
||||
delta = MIN (labs (pos - (xref->start - strlen (INFO_XREF_LABEL))),
|
||||
labs (pos - xref->end));
|
||||
|
||||
|
||||
/* It's the <= instead of < that makes us choose the forward xref
|
||||
of POS if two are equidistant. Of course, because of all the
|
||||
punctuation surrounding xrefs, it's not necessarily obvious
|
||||
|
@ -2031,11 +2031,11 @@ nearest_xref (REFERENCE **xref_list, long int pos)
|
|||
best_delta = delta;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Maybe there was no list to search through. */
|
||||
if (nearest < 0)
|
||||
return NULL;
|
||||
|
||||
|
||||
/* Ok, we have a nearest xref, make a list of it. */
|
||||
{
|
||||
REFERENCE **ret = xmalloc (sizeof (REFERENCE *) * 2);
|
||||
|
@ -2459,7 +2459,7 @@ DECLARE_INFO_COMMAND (info_goto_node, _("Read a node name and select it"))
|
|||
if (!info_error_was_printed)
|
||||
window_clear_echo_area ();
|
||||
}
|
||||
|
||||
|
||||
/* Follow the menu list in MENUS (list of strings terminated by a NULL
|
||||
entry) from INITIAL_NODE. If can't continue at any point (no menu or
|
||||
no menu entry for the next item), return the node so far -- that
|
||||
|
@ -2863,7 +2863,7 @@ DECLARE_INFO_COMMAND (info_goto_invocation_node,
|
|||
free (line);
|
||||
free (default_program_name);
|
||||
}
|
||||
|
||||
|
||||
#if defined (HANDLE_MAN_PAGES)
|
||||
DECLARE_INFO_COMMAND (info_man, _("Read a manpage reference and select it"))
|
||||
{
|
||||
|
@ -2910,7 +2910,7 @@ DECLARE_INFO_COMMAND (info_dir_node, _("Select the node `(dir)'"))
|
|||
info_parse_and_select ("(dir)Top", window);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Read the name of a node to kill. The list of available nodes comes
|
||||
from the nodes appearing in the current window configuration. */
|
||||
static char *
|
||||
|
@ -3084,7 +3084,7 @@ DECLARE_INFO_COMMAND (info_kill_node, _("Kill this node"))
|
|||
kill_node (window, nodename);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Read the name of a file and select the entire file. */
|
||||
DECLARE_INFO_COMMAND (info_view_file, _("Read the name of a file and select it"))
|
||||
{
|
||||
|
@ -3118,7 +3118,7 @@ DECLARE_INFO_COMMAND (info_view_file, _("Read the name of a file and select it")
|
|||
if (!info_error_was_printed)
|
||||
window_clear_echo_area ();
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Dumping and Printing Nodes */
|
||||
|
@ -3355,7 +3355,7 @@ write_node_to_stream (NODE *node, FILE *stream)
|
|||
{
|
||||
fwrite (node->contents, 1, node->nodelen, stream);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Info Searching Commands */
|
||||
|
@ -4105,7 +4105,7 @@ incremental_search (WINDOW *window, int count, unsigned char ignore)
|
|||
case_sensitive = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (search_result == 0)
|
||||
{
|
||||
|
@ -4221,7 +4221,7 @@ info_gc_file_buffers (void)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Traversing and Selecting References */
|
||||
|
@ -4373,7 +4373,7 @@ DECLARE_INFO_COMMAND (info_select_reference_this_line,
|
|||
else
|
||||
info_menu_or_ref_item (window, count, key, info_xrefs_of_node, 0);
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Miscellaneous Info Commands */
|
||||
|
@ -4469,7 +4469,7 @@ DECLARE_INFO_COMMAND (info_redraw_display, _("Redraw the display"))
|
|||
DECLARE_INFO_COMMAND (info_quit, _("Quit using Info"))
|
||||
{}
|
||||
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Reading Keys and Dispatching on Them */
|
||||
|
@ -4687,7 +4687,7 @@ info_dispatch_on_key (unsigned char key, Keymap map)
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Numeric Arguments */
|
||||
|
@ -4806,7 +4806,7 @@ DECLARE_INFO_COMMAND (info_numeric_arg_digit_loop,
|
|||
key = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Input Character Buffering */
|
||||
|
|
|
@ -134,12 +134,12 @@ terminal_begin_using_terminal (void)
|
|||
|
||||
if (term_keypad_on)
|
||||
send_to_terminal (term_keypad_on);
|
||||
|
||||
|
||||
if (!term_begin_use || !*term_begin_use)
|
||||
return;
|
||||
|
||||
#ifdef SIGWINCH
|
||||
sigsave = signal (SIGWINCH, SIG_IGN);
|
||||
sigsave = signal (SIGWINCH, SIG_IGN);
|
||||
#endif
|
||||
|
||||
send_to_terminal (term_begin_use);
|
||||
|
@ -165,7 +165,7 @@ terminal_end_using_terminal (void)
|
|||
|
||||
if (term_keypad_off)
|
||||
send_to_terminal (term_keypad_off);
|
||||
|
||||
|
||||
if (!term_end_use || !*term_end_use)
|
||||
return;
|
||||
|
||||
|
@ -183,7 +183,7 @@ terminal_end_using_terminal (void)
|
|||
signal (SIGWINCH, sigsave);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Necessary Terminal Functions */
|
||||
|
@ -651,7 +651,7 @@ terminal_initialize_terminal (char *terminal_name)
|
|||
if (!term_goto)
|
||||
terminal_is_dumb_p = 1;
|
||||
}
|
||||
|
||||
|
||||
/* How to read characters from the terminal. */
|
||||
|
||||
#if defined (HAVE_TERMIOS_H)
|
||||
|
|
|
@ -237,7 +237,7 @@ tilde_expand_word (char *filename)
|
|||
if (expansion)
|
||||
{
|
||||
temp_name = xmalloc (1 + strlen (expansion)
|
||||
+ strlen (&dirname[i]));
|
||||
+ strlen (&dirname[i]));
|
||||
strcpy (temp_name, expansion);
|
||||
strcat (temp_name, &dirname[i]);
|
||||
free (expansion);
|
||||
|
@ -249,7 +249,7 @@ tilde_expand_word (char *filename)
|
|||
else
|
||||
{
|
||||
temp_name = xmalloc (1 + strlen (user_entry->pw_dir)
|
||||
+ strlen (&dirname[i]));
|
||||
+ strlen (&dirname[i]));
|
||||
strcpy (temp_name, user_entry->pw_dir);
|
||||
strcat (temp_name, &dirname[i]);
|
||||
|
||||
|
@ -266,7 +266,7 @@ tilde_expand_word (char *filename)
|
|||
return dirname;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#if defined (TEST)
|
||||
#undef NULL
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -604,7 +604,7 @@ window_set_node_of_window (WINDOW *window, NODE *node)
|
|||
window_adjust_pagetop (window);
|
||||
window_make_modeline (window);
|
||||
}
|
||||
|
||||
|
||||
/* Delete WINDOW from the list of known windows. If this window was the
|
||||
active window, make the next window in the chain be the active window.
|
||||
If the active window is the next or previous window, choose that window
|
||||
|
@ -656,7 +656,7 @@ window_delete_window (WINDOW *window)
|
|||
window_to_fix = prev;
|
||||
else
|
||||
window_to_fix = windows;
|
||||
|
||||
|
||||
if (window_to_fix->first_row > window->first_row)
|
||||
{
|
||||
int diff;
|
||||
|
@ -1223,7 +1223,7 @@ window_set_state (WINDOW *window, SEARCH_STATE *state)
|
|||
window->point = state->point;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Manipulating home-made nodes. */
|
||||
|
||||
/* A place to buffer echo area messages. */
|
||||
|
@ -1242,7 +1242,7 @@ free_echo_area (void)
|
|||
echo_area_node = NULL;
|
||||
window_set_node_of_window (the_echo_area, echo_area_node);
|
||||
}
|
||||
|
||||
|
||||
/* Clear the echo area, removing any message that is already present.
|
||||
The echo area is cleared immediately. */
|
||||
void
|
||||
|
|
|
@ -164,7 +164,7 @@ pop (int x)
|
|||
return x;
|
||||
}
|
||||
|
||||
|
||||
|
||||
struct loaded_l10nfile *
|
||||
_nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list,
|
||||
const char *dirlist, size_t dirlist_len,
|
||||
|
@ -359,7 +359,7 @@ _nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list,
|
|||
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
/* Normalize codeset name. There is no standard for the codeset
|
||||
names. Normalization allows the user to use any of the common
|
||||
names. The return value is dynamically allocated and has to be
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
# it with the rest of us. Send it using the `glibcbug' script to
|
||||
# bugs@gnu.org.
|
||||
|
||||
# Packages using this file:
|
||||
# Packages using this file:
|
||||
|
||||
bokmal nb_NO.ISO-8859-1
|
||||
bokmål nb_NO.ISO-8859-1
|
||||
|
|
|
@ -223,8 +223,8 @@ static const short yyrline[] =
|
|||
/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */
|
||||
static const char *const yytname[] =
|
||||
{
|
||||
"$", "error", "$undefined.", "'?'", "'|'", "'&'", "EQUOP2", "CMPOP2",
|
||||
"ADDOP2", "MULOP2", "'!'", "NUMBER", "':'", "'n'", "'('", "')'",
|
||||
"$", "error", "$undefined.", "'?'", "'|'", "'&'", "EQUOP2", "CMPOP2",
|
||||
"ADDOP2", "MULOP2", "'!'", "NUMBER", "':'", "'n'", "'('", "')'",
|
||||
"start", "exp", 0
|
||||
};
|
||||
#endif
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
|
||||
/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>.
|
||||
Ditto for AIX 3.2 and <stdlib.h>. */
|
||||
#ifndef _NO_PROTO
|
||||
|
@ -117,7 +117,7 @@ int optopt = '?';
|
|||
|
||||
static struct _getopt_data getopt_data;
|
||||
|
||||
|
||||
|
||||
#ifndef __GNU_LIBRARY__
|
||||
|
||||
/* Avoid depending on library functions or files
|
||||
|
@ -128,7 +128,7 @@ extern char *getenv ();
|
|||
#endif
|
||||
|
||||
#endif /* not __GNU_LIBRARY__ */
|
||||
|
||||
|
||||
#ifdef _LIBC
|
||||
/* Stored original parameters.
|
||||
XXX This is no good solution. We should rather copy the args so
|
||||
|
@ -312,7 +312,7 @@ _getopt_initialize (int argc, char *const *argv, const char *optstring,
|
|||
|
||||
return optstring;
|
||||
}
|
||||
|
||||
|
||||
/* Scan elements of ARGV (whose length is ARGC) for option characters
|
||||
given in OPTSTRING.
|
||||
|
||||
|
@ -1162,7 +1162,7 @@ getopt (int argc, char *const *argv, const char *optstring)
|
|||
0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef TEST
|
||||
|
||||
/* Compile with -DTEST to make an executable for use in testing
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
@ -77,7 +77,7 @@ _getopt_long_only_r (int argc, char *const *argv, const char *options,
|
|||
1, d);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef TEST
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -25,7 +25,7 @@ extern int _getopt_internal (int ___argc, char *const *___argv,
|
|||
const struct option *__longopts, int *__longind,
|
||||
int __long_only);
|
||||
|
||||
|
||||
|
||||
/* Reentrant versions which can handle parsing multiple argument
|
||||
vectors at the same time. */
|
||||
|
||||
|
|
|
@ -27,10 +27,10 @@
|
|||
|
||||
#ifdef MIKTEX
|
||||
#include <gnu-miktex.h>
|
||||
#define S_ISDIR(x) ((x)&_S_IFDIR)
|
||||
#define S_ISDIR(x) ((x)&_S_IFDIR)
|
||||
#else
|
||||
/* MiKTeX defines substring() in a separate DLL, where it has its
|
||||
own __declspec declaration. We don't want to try to duplicate
|
||||
own __declspec declaration. We don't want to try to duplicate
|
||||
this Microsoft-ism here. */
|
||||
extern char *substring (const char *, const char *);
|
||||
#endif
|
||||
|
|
|
@ -368,7 +368,7 @@ COMMAND command_table[] = {
|
|||
|
||||
{ NULL, NULL, NO_BRACE_ARGS }
|
||||
};
|
||||
|
||||
|
||||
/* The bulk of the Texinfo commands. */
|
||||
|
||||
/* Commands which insert their own names. */
|
||||
|
@ -409,7 +409,7 @@ cm_asterisk (void)
|
|||
add_word ("<br>");
|
||||
else if (xml && !docbook)
|
||||
xml_insert_entity ("linebreak");
|
||||
else if (docbook)
|
||||
else if (docbook)
|
||||
xml_asterisk ();
|
||||
else
|
||||
{
|
||||
|
@ -652,7 +652,7 @@ cm_comment (void)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* We keep acronyms with two arguments around, to be able to refer to them
|
||||
later with only one argument. */
|
||||
static ACRONYM_DESC *acronyms_stack = NULL;
|
||||
|
@ -1034,7 +1034,7 @@ cm_verb (int arg)
|
|||
else
|
||||
line_error (_("`{' expected, but saw `%c'"), character);
|
||||
}
|
||||
|
||||
|
||||
if (input_text_offset < input_text_length)
|
||||
{
|
||||
delimiter = curchar ();
|
||||
|
@ -1073,7 +1073,7 @@ cm_verb (int arg)
|
|||
|
||||
if (!seen_end)
|
||||
warning (_("end of file inside verb block"));
|
||||
|
||||
|
||||
if (input_text_offset < input_text_length)
|
||||
{
|
||||
character = curchar ();
|
||||
|
@ -1101,7 +1101,7 @@ cm_strong (int arg, int start_pos, int end_pos)
|
|||
insert_html_tag (arg, "strong");
|
||||
else
|
||||
add_char ('*');
|
||||
|
||||
|
||||
if (!xml && !html && !docbook && !no_headers
|
||||
&& arg == END
|
||||
&& end_pos - start_pos >= 6
|
||||
|
@ -1120,7 +1120,7 @@ void
|
|||
cm_cite (int arg, int position)
|
||||
{
|
||||
if (xml)
|
||||
xml_insert_element (CITE, arg);
|
||||
xml_insert_element (CITE, arg);
|
||||
else if (html)
|
||||
insert_html_tag (arg, "cite");
|
||||
else
|
||||
|
@ -1276,7 +1276,7 @@ cm_w (int arg)
|
|||
/* This is so @w{$}Log$ doesn't end up as <dollar>Log<dollar>
|
||||
in the output. */
|
||||
insert_string ("<!-- /@w -->");
|
||||
|
||||
|
||||
non_splitting_words--;
|
||||
}
|
||||
}
|
||||
|
@ -1341,7 +1341,7 @@ cm_indent (void)
|
|||
inhibit_paragraph_indentation = 0;
|
||||
xml_no_indent = 0;
|
||||
skip_whitespace_and_newlines();
|
||||
|
||||
|
||||
if (xml)
|
||||
xml_start_para ();
|
||||
else if (html && !paragraph_is_open)
|
||||
|
@ -1453,7 +1453,7 @@ cm_sp (void)
|
|||
free (line);
|
||||
}
|
||||
|
||||
/* @dircategory LINE outputs INFO-DIR-SECTION LINE, unless --no-headers. */
|
||||
/* @dircategory LINE outputs INFO-DIR-SECTION LINE, unless --no-headers. */
|
||||
void
|
||||
cm_dircategory (void)
|
||||
{
|
||||
|
@ -1625,7 +1625,7 @@ cm_exdent (void)
|
|||
|
||||
/* @exdent arg is supposed to be in roman. */
|
||||
in_fixed_width_font = 0;
|
||||
|
||||
|
||||
/* The preceding newline already inserted the `current_indent'.
|
||||
Remove one level's worth. */
|
||||
kill_self_indent (default_indentation_increment);
|
||||
|
@ -1658,7 +1658,7 @@ cm_exdent (void)
|
|||
start_paragraph ();
|
||||
}
|
||||
|
||||
/*
|
||||
/*
|
||||
Read include-filename, process the include-file:
|
||||
verbatim_include == 0: process through reader_loop
|
||||
verbatim_include != 0: process through handle_verbatim_environment
|
||||
|
@ -1673,7 +1673,7 @@ handle_include (int verbatim_include)
|
|||
|
||||
if (!insertion_stack)
|
||||
close_paragraph (); /* No blank lines etc. if not at outer level. */
|
||||
|
||||
|
||||
get_rest_of_line (0, &arg);
|
||||
/* We really only want to expand @value, but it's easier to just do
|
||||
everything. TeX will only work with @value. */
|
||||
|
@ -1731,7 +1731,7 @@ handle_include (int verbatim_include)
|
|||
void
|
||||
cm_verbatiminclude (void)
|
||||
{
|
||||
handle_include (1);
|
||||
handle_include (1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1739,7 +1739,7 @@ cm_verbatiminclude (void)
|
|||
void
|
||||
cm_include (void)
|
||||
{
|
||||
handle_include (0);
|
||||
handle_include (0);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1751,7 +1751,7 @@ cm_bye (void)
|
|||
discard_braces (); /* should not have any unclosed braces left */
|
||||
input_text_offset = input_text_length;
|
||||
}
|
||||
|
||||
|
||||
/* @paragraphindent */
|
||||
|
||||
static void
|
||||
|
@ -1784,7 +1784,7 @@ static void
|
|||
cm_exampleindent (void)
|
||||
{
|
||||
char *arg;
|
||||
|
||||
|
||||
get_rest_of_line (1, &arg);
|
||||
if (set_example_indentation_increment (arg) != 0)
|
||||
line_error (_("Bad argument to @%s"), command);
|
||||
|
@ -1824,7 +1824,7 @@ cm_firstparagraphindent (void)
|
|||
|
||||
/* For DocBook and XML, produce . for `.@:'. This gives the processing
|
||||
software a fighting chance to treat it specially by not adding extra space.
|
||||
|
||||
|
||||
Do this also for ?, !, and :. */
|
||||
void
|
||||
cm_colon (void)
|
||||
|
|
|
@ -263,9 +263,9 @@ process_defun_args (char **defun_args, int auto_var_p)
|
|||
sans serif and brackets bold. We use roman instead. */
|
||||
if (html)
|
||||
insert_html_tag (START, "");
|
||||
|
||||
|
||||
add_char (defun_arg[0]);
|
||||
|
||||
|
||||
if (html)
|
||||
insert_html_tag (END, "");
|
||||
}
|
||||
|
@ -324,7 +324,7 @@ get_base_type (int type)
|
|||
|
||||
return base_type;
|
||||
}
|
||||
|
||||
|
||||
/* Make the defun type insertion.
|
||||
TYPE says which insertion this is.
|
||||
X_P, if nonzero, says not to start a new insertion. */
|
||||
|
@ -705,7 +705,7 @@ cm_defun (void)
|
|||
/* Skip over ifclear and ifset conditionals. */
|
||||
while (i && (i->insertion == ifset || i->insertion == ifclear))
|
||||
i = i->next;
|
||||
|
||||
|
||||
if (!i || i->insertion != type)
|
||||
{
|
||||
line_error (_("Must be in `@%s' environment to use `@%s'"),
|
||||
|
|
|
@ -31,7 +31,7 @@ FSTACK *filestack = NULL;
|
|||
static int node_filename_stack_index = 0;
|
||||
static int node_filename_stack_size = 0;
|
||||
static char **node_filename_stack = NULL;
|
||||
|
||||
|
||||
/* Looking for include files. */
|
||||
|
||||
/* Given a string containing units of information separated by colons,
|
||||
|
@ -181,7 +181,7 @@ pop_path_from_include_path (void)
|
|||
free (include_files_path);
|
||||
include_files_path = tmp;
|
||||
}
|
||||
|
||||
|
||||
/* Find and load the file named FILENAME. Return a pointer to
|
||||
the loaded file, or NULL if it can't be loaded. If USE_PATH is zero,
|
||||
just look for the given file (this is used in handle_delayed_writes),
|
||||
|
@ -199,7 +199,7 @@ find_and_load (char *filename, int use_path)
|
|||
result = fullpath = NULL;
|
||||
|
||||
fullpath
|
||||
= get_file_info_in_path (filename, use_path ? include_files_path : NULL,
|
||||
= get_file_info_in_path (filename, use_path ? include_files_path : NULL,
|
||||
&fileinfo);
|
||||
|
||||
if (!fullpath)
|
||||
|
@ -259,7 +259,7 @@ error_exit:
|
|||
input_text[input_text_length+1] = 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/* Pushing and popping files. */
|
||||
static void
|
||||
push_node_filename (void)
|
||||
|
@ -414,7 +414,7 @@ full_pathname (char *filename)
|
|||
/* No filename given? */
|
||||
if (!filename || !*filename)
|
||||
return xstrdup ("");
|
||||
|
||||
|
||||
/* Already absolute? */
|
||||
if (IS_ABSOLUTE (filename) ||
|
||||
(*filename == '.' &&
|
||||
|
@ -538,7 +538,7 @@ expand_filename (char *filename, char *input_name)
|
|||
{
|
||||
/* Make it so that relative names work. */
|
||||
char *result;
|
||||
|
||||
|
||||
i = strlen (input_name) - 1;
|
||||
|
||||
result = xmalloc (1 + strlen (input_name) + strlen (filename));
|
||||
|
@ -619,7 +619,7 @@ normalize_filename (char *fname)
|
|||
|
||||
return fname;
|
||||
}
|
||||
|
||||
|
||||
/* Delayed writing functions. A few of the commands
|
||||
needs to be handled at the end, namely @contents,
|
||||
@shortcontents, @printindex and @listoffloats.
|
||||
|
@ -652,7 +652,7 @@ register_delayed_write (char *delayed_command)
|
|||
if (FILENAME_CMP (current_output_filename, NULL_DEVICE) == 0
|
||||
|| FILENAME_CMP (current_output_filename, ALSO_NULL_DEVICE) == 0)
|
||||
return;
|
||||
|
||||
|
||||
/* We need the HTML header in the output,
|
||||
to get a proper output_position. */
|
||||
if (!executing_string && html)
|
||||
|
|
|
@ -61,7 +61,7 @@ add_new_float (char *id, char *title, char *shorttitle,
|
|||
|
||||
sprintf (s, "%s%d", new->number,
|
||||
count_floats_of_type_in_chapter (text_expansion (type),
|
||||
new->number) + 1);
|
||||
new->number) + 1);
|
||||
free (new->number);
|
||||
new->number = xstrdup (s);
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@ int number_footnotes = 1;
|
|||
/* Nonzero means we are currently outputting footnotes. */
|
||||
int already_outputting_pending_notes = 0;
|
||||
|
||||
|
||||
|
||||
/* Footnotes can be handled in one of two ways:
|
||||
|
||||
separate_node:
|
||||
|
@ -55,7 +55,7 @@ int already_outputting_pending_notes = 0;
|
|||
int footnote_style = end_node;
|
||||
int first_footnote_this_node = 1;
|
||||
int footnote_count = 0;
|
||||
|
||||
|
||||
/* Set the footnote style based on the style identifier in STRING. */
|
||||
int
|
||||
set_footnote_style (char *string)
|
||||
|
@ -228,7 +228,7 @@ cm_footnote (void)
|
|||
|
||||
if (xml)
|
||||
xml_insert_footnote (note);
|
||||
else
|
||||
else
|
||||
{
|
||||
remember_note (marker, note);
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
#include "node.h"
|
||||
#include "sectioning.h"
|
||||
|
||||
|
||||
|
||||
/* Append CHAR to BUFFER, (re)allocating as necessary. We don't handle
|
||||
null characters. */
|
||||
|
||||
|
@ -185,7 +185,7 @@ process_css_file (char *filename)
|
|||
/* We're wasting the buffer struct memory, but so what. */
|
||||
return inline_text->buffer;
|
||||
}
|
||||
|
||||
|
||||
HSTACK *htmlstack = NULL;
|
||||
|
||||
/* See html.h. */
|
||||
|
@ -226,7 +226,7 @@ html_output_head (void)
|
|||
add_word ("<meta http-equiv=\"Content-Type\" content=\"text/html");
|
||||
if (encoding && *encoding)
|
||||
add_word_args ("; charset=%s", encoding);
|
||||
|
||||
|
||||
add_word ("\">\n");
|
||||
|
||||
if (!document_description)
|
||||
|
@ -338,7 +338,7 @@ rel=\"generator-home\" title=\"Texinfo Homepage\">\n");
|
|||
|
||||
free (encoding);
|
||||
}
|
||||
|
||||
|
||||
/* Escape HTML special characters in the string if necessary,
|
||||
returning a pointer to a possibly newly-allocated one. */
|
||||
char *
|
||||
|
@ -401,7 +401,7 @@ escape_string (char *string)
|
|||
free (string);
|
||||
return newstring - newlen;
|
||||
}
|
||||
|
||||
|
||||
/* Save current tag. */
|
||||
static void
|
||||
push_tag (char *tag, char *attribs)
|
||||
|
@ -517,7 +517,7 @@ insert_html_tag_with_attribute (start_or_end, tag, format, va_alist)
|
|||
old_tag = htmlstack->tag;
|
||||
old_attribs = htmlstack->attribs;
|
||||
}
|
||||
|
||||
|
||||
if (format)
|
||||
{
|
||||
#ifdef VA_SPRINTF
|
||||
|
@ -577,7 +577,7 @@ insert_html_tag (int start_or_end, char *tag)
|
|||
{
|
||||
insert_html_tag_with_attribute (start_or_end, tag, NULL);
|
||||
}
|
||||
|
||||
|
||||
/* Output an HTML <link> to the filename for NODE, including the
|
||||
other string as extra attributes. */
|
||||
void
|
||||
|
@ -596,7 +596,7 @@ add_link (char *nodename, char *attributes)
|
|||
/* Output NAME with characters escaped as appropriate for an anchor
|
||||
name, i.e., escape URL special characters with our _00hh convention
|
||||
if OLD is zero. (See the manual for details on the new scheme.)
|
||||
|
||||
|
||||
If OLD is nonzero, generate the node name with the 4.6-and-earlier
|
||||
convention of %hh (and more special characters output as-is, notably
|
||||
- and *). This is only so that external references to old names can
|
||||
|
@ -637,7 +637,7 @@ add_escaped_anchor_name (char *name, int old)
|
|||
|
||||
/* Insert the text for the name of a reference in an HTML anchor
|
||||
appropriate for NODENAME.
|
||||
|
||||
|
||||
If HREF is zero, generate text for name= in the new node name
|
||||
conversion convention.
|
||||
If HREF is negative, generate text for name= in the old convention.
|
||||
|
|
|
@ -52,7 +52,7 @@ int (*index_compare_fn) (const char *a, const char *b) = strcasecmp;
|
|||
/* Function to compare index entries for sorting. (Calls
|
||||
`index_compare_fn' above.) */
|
||||
int index_element_compare (const void *element1, const void *element2);
|
||||
|
||||
|
||||
/* Find which element in the known list of indices has this name.
|
||||
Returns -1 if NAME isn't found. */
|
||||
static int
|
||||
|
@ -76,7 +76,7 @@ find_index (char *name)
|
|||
else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/* User-defined commands, which happens only from user-defined indexes.
|
||||
Used to initialize the builtin indices, too. */
|
||||
static void
|
||||
|
@ -96,7 +96,7 @@ define_user_command (char *name, COMMAND_FUNCTION (*proc), int needs_braces_p)
|
|||
user_command_array[slot]->proc = proc;
|
||||
user_command_array[slot]->argument_in_braces = needs_braces_p;
|
||||
}
|
||||
|
||||
|
||||
/* Please release me, let me go... */
|
||||
static void
|
||||
free_index (INDEX_ELT *index)
|
||||
|
@ -137,7 +137,7 @@ undefindex (char *name)
|
|||
free (name_index_alist[which]);
|
||||
name_index_alist[which] = NULL;
|
||||
}
|
||||
|
||||
|
||||
/* Add the arguments to the current index command to the index NAME. */
|
||||
static void
|
||||
index_add_arg (char *name)
|
||||
|
@ -218,7 +218,7 @@ index_add_arg (char *name)
|
|||
new->output_file = xstrdup ("");
|
||||
}
|
||||
else
|
||||
new->output_file = NULL;
|
||||
new->output_file = NULL;
|
||||
|
||||
new->entry_number = index_counter;
|
||||
the_indices[which] = new;
|
||||
|
@ -271,7 +271,7 @@ gen_index (void)
|
|||
index_add_arg (name);
|
||||
free (name);
|
||||
}
|
||||
|
||||
|
||||
/* Define an index known as NAME. We assign the slot number.
|
||||
If CODE is nonzero, make this a code index. */
|
||||
static void
|
||||
|
@ -325,7 +325,7 @@ top_defindex (char *name, int code)
|
|||
defindex (name, code);
|
||||
free (temp);
|
||||
}
|
||||
|
||||
|
||||
/* Set up predefined indices. */
|
||||
void
|
||||
init_indices (void)
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
/* Must match list in insertion.h. */
|
||||
static char *insertion_type_names[] =
|
||||
{
|
||||
{
|
||||
"cartouche", "copying", "defcv", "deffn", "defivar", "defmac",
|
||||
"defmethod", "defop", "defopt", "defspec", "deftp", "deftypecv",
|
||||
"deftypefn", "deftypefun", "deftypeivar", "deftypemethod",
|
||||
|
@ -62,7 +62,7 @@ int in_detailmenu = 0;
|
|||
/* Whether to examine menu lines. */
|
||||
int in_menu = 0;
|
||||
|
||||
/* Set to 1 if <p> is written in normal context.
|
||||
/* Set to 1 if <p> is written in normal context.
|
||||
Used for menu and itemize. */
|
||||
int in_paragraph = 0;
|
||||
|
||||
|
@ -79,7 +79,7 @@ static int raw_output_block = 0;
|
|||
/* Non-zero if a <dl> element has a <dt> element in it. We use this when
|
||||
deciding whether to insert a <br> or not. */
|
||||
static int html_deflist_has_term = 0;
|
||||
|
||||
|
||||
void
|
||||
init_insertion_stack (void)
|
||||
{
|
||||
|
@ -128,7 +128,7 @@ current_item_function (void)
|
|||
case cartouche:
|
||||
elt = elt->next;
|
||||
break;
|
||||
|
||||
|
||||
default:
|
||||
done = 1;
|
||||
}
|
||||
|
@ -147,7 +147,7 @@ get_item_function (void)
|
|||
{
|
||||
char *item_function;
|
||||
char *item_loc;
|
||||
|
||||
|
||||
get_rest_of_line (0, &item_function);
|
||||
|
||||
/* If the document erroneously says
|
||||
|
@ -399,7 +399,7 @@ enum_html (void)
|
|||
|
||||
add_html_block_elt_args ("<ol type=%c start=%d>\n", type, start);
|
||||
}
|
||||
|
||||
|
||||
/* Conditionally parse based on the current command name. */
|
||||
void
|
||||
command_name_condition (void)
|
||||
|
@ -520,7 +520,7 @@ begin_insertion (enum insertion_type type)
|
|||
in the header of the Info file, before the first node, and thus
|
||||
get copied automatically to all the split files. For xml, also
|
||||
output it right away since xml output is never split.
|
||||
For html, we output it specifically in html_output_head.
|
||||
For html, we output it specifically in html_output_head.
|
||||
For plain text, there's no way to hide it, so the author must
|
||||
use @insertcopying in the desired location. */
|
||||
if (docbook)
|
||||
|
@ -678,7 +678,7 @@ begin_insertion (enum insertion_type type)
|
|||
|
||||
if (xml)
|
||||
xml_begin_enumerate (enumeration_arg);
|
||||
|
||||
|
||||
if (isdigit (*enumeration_arg))
|
||||
start_enumerating (atoi (enumeration_arg), ENUM_DIGITS);
|
||||
else
|
||||
|
@ -982,7 +982,7 @@ end_insertion (int type)
|
|||
switch (type)
|
||||
{
|
||||
case ifinfo:
|
||||
case documentdescription:
|
||||
case documentdescription:
|
||||
break;
|
||||
case quotation:
|
||||
xml_insert_quotation ("", END);
|
||||
|
@ -1030,7 +1030,7 @@ end_insertion (int type)
|
|||
break;
|
||||
case table:
|
||||
case ftable:
|
||||
case vtable:
|
||||
case vtable:
|
||||
case itemize:
|
||||
xml_end_table (type);
|
||||
break;
|
||||
|
@ -1108,7 +1108,7 @@ end_insertion (int type)
|
|||
insert_string (document_description);
|
||||
xml_insert_element (DOCUMENTDESCRIPTION, END);
|
||||
break;
|
||||
|
||||
|
||||
case menu:
|
||||
in_menu--; /* No longer hacking menus. */
|
||||
if (html && !no_headers)
|
||||
|
@ -1265,7 +1265,7 @@ end_insertion (int type)
|
|||
|
||||
if (type < defcv || type > defvr)
|
||||
line_error ("end_insertion internal error: type=%d", type);
|
||||
|
||||
|
||||
base_type = get_base_type (type);
|
||||
switch (base_type)
|
||||
{
|
||||
|
@ -1293,12 +1293,12 @@ end_insertion (int type)
|
|||
xml_end_definition ();
|
||||
break;
|
||||
} /* switch (base_type)... */
|
||||
|
||||
|
||||
current_indent -= default_indentation_increment;
|
||||
close_insertion_paragraph ();
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (current_indent < 0)
|
||||
|
@ -1341,7 +1341,7 @@ discard_insertions (int specials_ok)
|
|||
}
|
||||
line_number = real_line_number;
|
||||
}
|
||||
|
||||
|
||||
/* Insertion (environment) commands. */
|
||||
|
||||
void
|
||||
|
@ -1697,7 +1697,7 @@ handle_verbatim_environment (int find_end_verbatim)
|
|||
xml_insert_element (VERBATIM, END);
|
||||
escape_html = save_escape_html;
|
||||
}
|
||||
|
||||
|
||||
in_fixed_width_font--;
|
||||
filling_enabled = save_filling_enabled;
|
||||
inhibit_paragraph_indentation = save_inhibit_paragraph_indentation;
|
||||
|
@ -1738,7 +1738,7 @@ cm_group (void)
|
|||
{
|
||||
begin_insertion (group);
|
||||
}
|
||||
|
||||
|
||||
/* Insert raw HTML (no escaping of `<' etc.). */
|
||||
void
|
||||
cm_html (int arg)
|
||||
|
@ -1887,7 +1887,7 @@ cm_ifnotxml (void)
|
|||
command_name_condition ();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Generic xrefable block with a caption. */
|
||||
void
|
||||
cm_float (void)
|
||||
|
@ -1964,7 +1964,7 @@ cm_detailmenu (void)
|
|||
}
|
||||
begin_insertion (detailmenu);
|
||||
}
|
||||
|
||||
|
||||
/* Title page commands. */
|
||||
|
||||
void
|
||||
|
@ -2081,7 +2081,7 @@ cm_end (void)
|
|||
end_insertion (type);
|
||||
free (temp);
|
||||
}
|
||||
|
||||
|
||||
/* @itemx, @item. */
|
||||
|
||||
static int itemx_flag = 0;
|
||||
|
@ -2257,7 +2257,7 @@ cm_item (void)
|
|||
/* We are about to insert a <dt>, so this <dl> has a term.
|
||||
Feel free to insert a <br> next time. :) */
|
||||
html_deflist_has_term = 1;
|
||||
|
||||
|
||||
add_html_block_elt ("<dt>");
|
||||
if (item_func && *item_func)
|
||||
execute_string ("%s{%s}", item_func, rest_of_line);
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
/* Must match list in insertion.c. */
|
||||
enum insertion_type
|
||||
{
|
||||
{
|
||||
cartouche, copying, defcv, deffn, defivar, defmac, defmethod, defop,
|
||||
defopt, defspec, deftp, deftypecv, deftypefn, deftypefun, deftypeivar,
|
||||
deftypemethod, deftypeop, deftypevar, deftypevr, defun, defvar, defvr,
|
||||
|
|
|
@ -142,7 +142,7 @@ static iso_map_type iso8859_1_map [] = {
|
|||
{ NULL, 0, 0 }
|
||||
};
|
||||
|
||||
|
||||
|
||||
/* ISO 8859-15, also known as Latin 9, differs from Latin 1 in only a
|
||||
few positions. http://www.cs.tut.fi/~jkorpela/latin9.html has a good
|
||||
explanation and listing, summarized here. The names are abbreviated
|
||||
|
@ -263,7 +263,7 @@ static iso_map_type iso8859_15_map [] = {
|
|||
};
|
||||
|
||||
|
||||
|
||||
|
||||
/* Date: Mon, 31 Mar 2003 00:19:28 +0200
|
||||
From: Wojciech Polak <polak@gnu.org>
|
||||
...
|
||||
|
@ -548,7 +548,7 @@ language_type language_table[] = {
|
|||
{ zu, "zu", "Zulu" },
|
||||
{ last_language_code, NULL, NULL }
|
||||
};
|
||||
|
||||
|
||||
/* @documentlanguage. Maybe we'll do something useful with this in the
|
||||
future. For now, we just recognize it. */
|
||||
|
||||
|
@ -589,7 +589,7 @@ cm_documentlanguage (void)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Search through the encoding table for the given character, returning
|
||||
its equivalent. */
|
||||
|
||||
|
@ -721,7 +721,7 @@ add_encoded_char (char *html_str, char *info_str)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Output an accent for HTML or XML. */
|
||||
|
||||
static void
|
||||
|
@ -832,7 +832,7 @@ cm_accent_generic_no_headers (int arg, int start, int end, int single,
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Accent commands that take explicit arguments and don't have any
|
||||
special HTML support. */
|
||||
|
||||
|
@ -940,7 +940,7 @@ cm_accent_tilde (int arg, int start, int end)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Non-English letters/characters that don't insert themselves. */
|
||||
void
|
||||
cm_special_char (int arg)
|
||||
|
|
|
@ -72,7 +72,7 @@ typedef struct
|
|||
extern language_type language_table[];
|
||||
|
||||
|
||||
|
||||
|
||||
/* The document encoding. This is useful to produce true 8-bit
|
||||
characters according to the @documentencoding. */
|
||||
|
||||
|
@ -127,7 +127,7 @@ typedef struct
|
|||
/* Table with all the encoding codes that we recognize. */
|
||||
extern encoding_type encoding_table[];
|
||||
|
||||
|
||||
|
||||
/* The commands. */
|
||||
extern void cm_documentlanguage (void),
|
||||
cm_documentencoding (void);
|
||||
|
|
|
@ -52,7 +52,7 @@ MACRO_DEF **macro_list = NULL;
|
|||
|
||||
int macro_list_len = 0; /* Number of elements. */
|
||||
int macro_list_size = 0; /* Number of slots in total. */
|
||||
|
||||
|
||||
/* Return the length of the array in ARRAY. */
|
||||
int
|
||||
array_len (char **array)
|
||||
|
@ -77,7 +77,7 @@ free_array (char **array)
|
|||
free (array);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Return the macro definition of NAME or NULL if NAME is not defined. */
|
||||
MACRO_DEF *
|
||||
find_macro (char *name)
|
||||
|
@ -336,7 +336,7 @@ apply (char **named, char **actuals, char *body)
|
|||
else
|
||||
{
|
||||
int which;
|
||||
|
||||
|
||||
/* Check against named parameters. */
|
||||
for (which = 0; named && named[which]; which++)
|
||||
if (STREQ (named[which], param))
|
||||
|
@ -353,7 +353,7 @@ apply (char **named, char **actuals, char *body)
|
|||
else
|
||||
{ /* not a parameter, so it's an error. */
|
||||
warning (_("\\ in macro expansion followed by `%s' instead of parameter name"),
|
||||
param);
|
||||
param);
|
||||
len++;
|
||||
text = xmalloc (1 + len);
|
||||
sprintf (text, "\\%s", param);
|
||||
|
@ -447,7 +447,7 @@ execute_macro (MACRO_DEF *def)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Read and remember the definition of a macro. If RECURSIVE is set,
|
||||
set the ME_RECURSE flag. MACTYPE is either "macro" or "rmacro", and
|
||||
tells us what the matching @end should be. */
|
||||
|
@ -566,7 +566,7 @@ define_macro (char *mactype, int recursive)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* If we have exactly one argument, do @quote-arg implicitly. Not
|
||||
only does this match TeX's behavior (which can't feasibly be
|
||||
changed), but it's a good idea. */
|
||||
|
@ -677,7 +677,7 @@ define_macro (char *mactype, int recursive)
|
|||
|
||||
if (recursive)
|
||||
flags |= ME_RECURSE;
|
||||
|
||||
|
||||
add_macro (name, arglist, body, input_filename, defining_line, flags);
|
||||
|
||||
if (macro_expansion_output_stream && !executing_string)
|
||||
|
@ -699,18 +699,18 @@ define_macro (char *mactype, int recursive)
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
void
|
||||
cm_macro (void)
|
||||
{
|
||||
define_macro ("macro", 0);
|
||||
}
|
||||
|
||||
void
|
||||
void
|
||||
cm_rmacro (void)
|
||||
{
|
||||
define_macro ("rmacro", 1);
|
||||
}
|
||||
|
||||
|
||||
/* Delete the macro with name NAME. The macro is deleted from the list,
|
||||
but it is also returned. If there was no macro defined, NULL is
|
||||
returned. */
|
||||
|
@ -778,7 +778,7 @@ cm_unmacro (void)
|
|||
if (macro_expansion_output_stream && !executing_string)
|
||||
remember_itext (input_text, input_text_offset);
|
||||
}
|
||||
|
||||
|
||||
/* How to output sections of the input file verbatim. */
|
||||
|
||||
/* Set the value of POINTER's offset to OFFSET. */
|
||||
|
@ -871,7 +871,7 @@ me_execute_string (char *execution_string)
|
|||
int saved_in_paragraph = in_paragraph;
|
||||
escape_html = me_executing_string == 0;
|
||||
in_paragraph = 0;
|
||||
|
||||
|
||||
pushfile ();
|
||||
input_text_offset = 0;
|
||||
/* The following xstrdup is so we can relocate input_text at will. */
|
||||
|
@ -976,7 +976,7 @@ write_region_to_macro_output (char *string, int start, int end)
|
|||
if (macro_expansion_output_stream)
|
||||
fwrite (string + start, 1, end - start, macro_expansion_output_stream);
|
||||
}
|
||||
|
||||
|
||||
/* Aliases. */
|
||||
|
||||
typedef struct alias_struct
|
||||
|
@ -986,7 +986,7 @@ typedef struct alias_struct
|
|||
struct alias_struct *next;
|
||||
} alias_type;
|
||||
|
||||
static alias_type *aliases;
|
||||
static alias_type *aliases;
|
||||
|
||||
/* @alias aname = cmdname */
|
||||
|
||||
|
@ -1024,11 +1024,11 @@ alias_expand (char *tok)
|
|||
|
||||
return tok;
|
||||
}
|
||||
|
||||
|
||||
/* definfoenclose implementation. */
|
||||
|
||||
/* This structure is used to track enclosure macros. When an enclosure
|
||||
macro is recognized, a pointer to the enclosure block corresponding
|
||||
macro is recognized, a pointer to the enclosure block corresponding
|
||||
to its name is saved in the brace element for its argument. */
|
||||
typedef struct enclose_struct
|
||||
{
|
||||
|
@ -1038,7 +1038,7 @@ typedef struct enclose_struct
|
|||
struct enclose_struct *next;
|
||||
} enclosure_type;
|
||||
|
||||
static enclosure_type *enclosures;
|
||||
static enclosure_type *enclosures;
|
||||
|
||||
typedef struct enclosure_stack_struct
|
||||
{
|
||||
|
|
|
@ -3331,7 +3331,7 @@ cm_image (int arg)
|
|||
add_html_elt ("<img src=");
|
||||
add_word_args ("\"%s\"", fullname);
|
||||
add_html_elt (" alt=");
|
||||
add_word_args ("\"%s\">",
|
||||
add_word_args ("\"%s\">",
|
||||
escape_string (*alt_arg ? text_expansion (alt_arg) : fullname));
|
||||
|
||||
if (image_in_div)
|
||||
|
|
|
@ -31,14 +31,14 @@
|
|||
|
||||
/* Hardcoded per GNU standards, not dependent on argv[0]. */
|
||||
DECLARE (char *, progname, "makeinfo");
|
||||
|
||||
|
||||
/* Nonzero means a string is in execution, as opposed to a file. */
|
||||
DECLARE (int, executing_string, 0);
|
||||
|
||||
/* Nonzero means to inhibit writing macro expansions to the output
|
||||
stream, because it has already been written. */
|
||||
DECLARE (int, me_inhibit_expansion, 0);
|
||||
|
||||
|
||||
/* Current output stream. */
|
||||
DECLARE (FILE *, output_stream, NULL);
|
||||
|
||||
|
@ -175,14 +175,14 @@ DECLARE (int, input_text_offset, 0);
|
|||
DECLARE (int, line_number, 0);
|
||||
DECLARE (char *, toplevel_output_filename, NULL);
|
||||
#define curchar() input_text[input_text_offset]
|
||||
|
||||
|
||||
/* A colon separated list of directories to search for files included
|
||||
with @include. This can be controlled with the `-I' option to makeinfo. */
|
||||
DECLARE (char *, include_files_path, NULL);
|
||||
|
||||
/* The filename of the current input file. This is never freed. */
|
||||
DECLARE (char *, node_filename, NULL);
|
||||
|
||||
|
||||
/* Name of CSS file to include, if any. (--css-include). */
|
||||
DECLARE (char *, css_include, NULL);
|
||||
|
||||
|
@ -235,7 +235,7 @@ DECLARE (int, split_size, 0);
|
|||
like @@ and @value inconsistently in node names, but will slow
|
||||
the program by about 80%. You HAVE been warned. */
|
||||
DECLARE (int, expensive_validation, 0);
|
||||
|
||||
|
||||
/* C's standard macros don't check to make sure that the characters being
|
||||
changed are within range. So I have to check explicitly. */
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
|
||||
|
||||
Originally written by phr@gnu.org (Paul Rubin). */
|
||||
|
||||
#include "system.h"
|
||||
|
@ -29,7 +29,7 @@
|
|||
|
||||
#define MAXCOLS 100 /* remove this limit later @@ */
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Output environments. This is a hack grafted onto existing
|
||||
* structure. The "output environment" used to consist of the
|
||||
|
@ -84,7 +84,7 @@ static int hsep, vsep;
|
|||
|
||||
/* whether this is the first row. */
|
||||
static int first_row;
|
||||
|
||||
|
||||
/* Called to handle a {...} template on the @multitable line.
|
||||
We're at the { and our first job is to find the matching }; as a side
|
||||
effect, we change *PARAMS to point to after it. Our other job is to
|
||||
|
@ -119,21 +119,21 @@ find_template_width (char **params)
|
|||
(*params)++;
|
||||
}
|
||||
while (brace_level > 0);
|
||||
|
||||
|
||||
template = substring (start + 1, *params - 1); /* omit braces */
|
||||
xtemplate = expansion (template, 0);
|
||||
len = strlen (xtemplate);
|
||||
|
||||
|
||||
free (template);
|
||||
free (xtemplate);
|
||||
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
/* Direct current output to environment number N. Used when
|
||||
switching work from one column of a multitable to the next.
|
||||
Returns previous environment number. */
|
||||
static int
|
||||
static int
|
||||
select_output_environment (int n)
|
||||
{
|
||||
struct env *e = &envs[current_env_no];
|
||||
|
@ -226,7 +226,7 @@ setup_multitable_parameters (void)
|
|||
number) and then non-whitespace (the number). */
|
||||
while (*params && (*params == ' ' || *params == '\t'))
|
||||
params++;
|
||||
/* Hmm, but what about @columnfractions 3foo. Oh well,
|
||||
/* Hmm, but what about @columnfractions 3foo. Oh well,
|
||||
it's invalid input anyway. */
|
||||
while (*params && *params != ' ' && *params != '\t'
|
||||
&& *params != '\n' && *params != '@')
|
||||
|
@ -249,7 +249,7 @@ setup_multitable_parameters (void)
|
|||
/* This gives us two spaces between columns. Seems reasonable.
|
||||
How to take into account current_indent here? */
|
||||
setup_output_environment (i++, template_width + 2);
|
||||
|
||||
|
||||
} else {
|
||||
warning (_("ignoring stray text `%s' after @multitable"), params);
|
||||
break;
|
||||
|
@ -314,7 +314,7 @@ draw_horizontal_separator (void)
|
|||
out_char ('\n');
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* multitable strategy:
|
||||
for each item {
|
||||
for each column in an item {
|
||||
|
@ -396,7 +396,7 @@ nselect_next_environment (void)
|
|||
select_output_environment (current_env_no + 1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* do anything needed at the beginning of processing a
|
||||
multitable column. */
|
||||
static void
|
||||
|
@ -452,10 +452,10 @@ output_multitable_row (void)
|
|||
}
|
||||
if (!remaining)
|
||||
break;
|
||||
|
||||
|
||||
for (s = 0; s < envs[0].current_indent; s++)
|
||||
out_char (' ');
|
||||
|
||||
|
||||
if (vsep)
|
||||
out_char ('|');
|
||||
|
||||
|
@ -468,7 +468,7 @@ output_multitable_row (void)
|
|||
out_char (CHAR_AT (j));
|
||||
}
|
||||
offset[i] += j + 1; /* skip last text plus skip the newline */
|
||||
|
||||
|
||||
/* Do not output trailing blanks if we're in the last column and
|
||||
there will be no trailing |. */
|
||||
if (i < last_column && !vsep)
|
||||
|
@ -480,7 +480,7 @@ output_multitable_row (void)
|
|||
out_char ('\n'); /* end of line */
|
||||
had_newline = 1;
|
||||
}
|
||||
|
||||
|
||||
/* If completely blank item, get blank line despite no other output. */
|
||||
if (!had_newline)
|
||||
out_char ('\n'); /* end of line */
|
||||
|
@ -584,7 +584,7 @@ cm_tab (void)
|
|||
error (_("ignoring @tab outside of multitable"));
|
||||
|
||||
current_column_no++;
|
||||
|
||||
|
||||
if (html)
|
||||
{
|
||||
if (seen_column_fractions)
|
||||
|
@ -611,7 +611,7 @@ cm_tab (void)
|
|||
void
|
||||
end_multitable (void)
|
||||
{
|
||||
if (!html && !docbook)
|
||||
if (!html && !docbook)
|
||||
output_multitable_row ();
|
||||
|
||||
/* Multitables cannot be nested. Otherwise, we'd have to save the
|
||||
|
|
|
@ -39,7 +39,7 @@ int node_number = -1;
|
|||
int node_order = 0;
|
||||
int current_section = 0;
|
||||
int outstanding_node = 0;
|
||||
|
||||
|
||||
/* Adding nodes, and making tags. */
|
||||
|
||||
/* Start a new tag table. */
|
||||
|
@ -57,7 +57,7 @@ init_tag_table (void)
|
|||
free (temp);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Write out the contents of the existing tag table.
|
||||
INDIRECT_P says how to format the output (it depends on whether the
|
||||
table is direct or indirect). */
|
||||
|
@ -132,7 +132,7 @@ write_tag_table_indirect (void)
|
|||
{
|
||||
write_tag_table_internal (1);
|
||||
}
|
||||
|
||||
|
||||
/* Convert "top" and friends into "Top". */
|
||||
static void
|
||||
normalize_node_name (char *string)
|
||||
|
@ -500,7 +500,7 @@ add_html_names (char *node)
|
|||
{
|
||||
char *optr = otem;
|
||||
int need_old = 0;
|
||||
|
||||
|
||||
for (; *optr; optr++)
|
||||
{
|
||||
if (!cr_or_whitespace (*optr) && !URL_SAFE_CHAR (*optr))
|
||||
|
@ -509,7 +509,7 @@ add_html_names (char *node)
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (need_old)
|
||||
{
|
||||
add_word ("<a name=\"");
|
||||
|
@ -528,7 +528,7 @@ add_html_names (char *node)
|
|||
free (tem);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* The order is: nodename, nextnode, prevnode, upnode.
|
||||
If all of the NEXT, PREV, and UP fields are empty, they are defaulted.
|
||||
You must follow a node command which has those fields defaulted
|
||||
|
@ -969,7 +969,7 @@ cm_node (void)
|
|||
}
|
||||
|
||||
if (!splitting && no_headers)
|
||||
{ /* cross refs need a name="#anchor" even if not writing headers */
|
||||
{ /* cross refs need a name="#anchor" even if not writing headers */
|
||||
add_html_names (node);
|
||||
}
|
||||
|
||||
|
@ -979,7 +979,7 @@ cm_node (void)
|
|||
/* The <p> avoids the links area running on with old Lynxen. */
|
||||
add_word_args ("<p>%s\n", splitting ? "" : "<hr>");
|
||||
|
||||
/* In the split HTML case, the filename is wrong for the
|
||||
/* In the split HTML case, the filename is wrong for the
|
||||
old-style converted names, but we'll add them anyway, for
|
||||
consistency. (And we need them in the normal (not
|
||||
no_headers) nonsplit case.) */
|
||||
|
@ -990,12 +990,12 @@ cm_node (void)
|
|||
tem = expansion (next, 0);
|
||||
add_word ((char *) _("Next:"));
|
||||
add_word (" ");
|
||||
|
||||
|
||||
add_word ("<a rel=\"next\" accesskey=\"n\" href=\"");
|
||||
add_anchor_name (tem, 1);
|
||||
tem = escape_string (tem);
|
||||
add_word_args ("\">%s</a>", tem);
|
||||
|
||||
|
||||
free (tem);
|
||||
|
||||
if (prev || up)
|
||||
|
@ -1229,7 +1229,7 @@ cm_anchor (int arg)
|
|||
output_position + output_paragraph_offset,
|
||||
line_number, fname_for_anchor, TAG_FLAG_ANCHOR);
|
||||
}
|
||||
|
||||
|
||||
/* Find NODE in REF_LIST. */
|
||||
static NODE_REF *
|
||||
find_node_reference (char *node, NODE_REF *ref_list)
|
||||
|
@ -1321,7 +1321,7 @@ number_of_node (char *node)
|
|||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/* validation */
|
||||
|
||||
/* Return 1 if TAG (at LINE) correctly validated, or 0 if not.
|
||||
|
@ -1636,7 +1636,7 @@ validate_file (TAG_ENTRY *tag_table)
|
|||
input_filename = old_input_filename;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Splitting */
|
||||
|
||||
/* Return true if the tag entry pointed to by TAGS is the last node.
|
||||
|
|
|
@ -56,7 +56,7 @@ typedef struct tentry
|
|||
#define TAG_FLAG_NO_WARN 8
|
||||
#define TAG_FLAG_IS_TOP 16
|
||||
#define TAG_FLAG_ANCHOR 32
|
||||
|
||||
|
||||
/* Menu reference, *note reference, and validation hacking. */
|
||||
|
||||
/* A structure to remember references with. A reference to a node is
|
||||
|
@ -97,7 +97,7 @@ extern int current_section;
|
|||
/* Nonzero when the next sectioning command should generate an anchor
|
||||
corresponding to the current node in HTML mode. */
|
||||
extern int outstanding_node;
|
||||
|
||||
|
||||
extern TAG_ENTRY *find_node (char *name);
|
||||
|
||||
/* A search string which is used to find a line defining a node. */
|
||||
|
|
|
@ -57,7 +57,7 @@ section_alist_type section_alist[] = {
|
|||
{ "top", 1, ENUM_SECT_NO, TOC_YES },
|
||||
{ NULL, 0, 0, 0 }
|
||||
};
|
||||
|
||||
|
||||
/* The argument of @settitle, used for HTML. */
|
||||
char *title = NULL;
|
||||
|
||||
|
@ -88,7 +88,7 @@ static int section_alist_offset = 0;
|
|||
static char *last_sectioning_number = "";
|
||||
/* Last title used by sectioning_underscore, etc. */
|
||||
static char *last_sectioning_title = "";
|
||||
|
||||
|
||||
/* num == ENUM_SECT_NO means unnumbered (should never call this)
|
||||
num == ENUM_SECT_YES means numbered
|
||||
num == ENUM_SECT_APP means numbered like A.1 and so on */
|
||||
|
@ -321,7 +321,7 @@ sectioning_underscore (char *cmd)
|
|||
{
|
||||
char *temp, *secname;
|
||||
int level;
|
||||
|
||||
|
||||
/* If we're not indenting the first paragraph, we shall make it behave
|
||||
like @noindent is called directly after the section heading. */
|
||||
if (! do_first_par_indent)
|
||||
|
@ -599,7 +599,7 @@ sectioning_html (int level, char *cmd)
|
|||
no_indent = old_no_indent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Shift the meaning of @section to @chapter. */
|
||||
void
|
||||
cm_raisesections (void)
|
||||
|
@ -625,7 +625,7 @@ cm_ideprecated (int arg, int start, int end)
|
|||
sectioning_underscore (command + 1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Treat this just like @unnumbered. The only difference is
|
||||
in node defaulting. */
|
||||
void
|
||||
|
|
|
@ -50,9 +50,9 @@ Polish suppressed-L: @l{} @L{}
|
|||
|
||||
O-with-slash: @o{} @O{}
|
||||
|
||||
es-zet or sharp S: @ss{}
|
||||
es-zet or sharp S: @ss{}
|
||||
|
||||
pounds sterling: @pounds{}
|
||||
pounds sterling: @pounds{}
|
||||
|
||||
@c arg is command -- @dotless{i} is special-cased for HTML
|
||||
should be dotless i`: @`{@dotless{i}}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
@c From: Marius Groeger <mag@sysgo.de>, 13nov98.
|
||||
|
||||
@menu
|
||||
* entry1::
|
||||
* entry1::
|
||||
@end menu
|
||||
|
||||
@bye
|
||||
|
|
|
@ -53,19 +53,19 @@ absence.
|
|||
+++ texinfo-3.12b/makeinfo/node.c Sun Dec 6 00:23:59 1998
|
||||
@@ -523,9 +523,10 @@
|
||||
orig_size = size_of_input_text;
|
||||
|
||||
|
||||
input_text_offset =
|
||||
- search_forward ("\n@menu ", orig_offset);
|
||||
+ search_forward ("\n@menu", orig_offset);
|
||||
|
||||
|
||||
- if (input_text_offset > -1)
|
||||
+ if (input_text_offset > -1
|
||||
+ && cr_or_whitespace (input_text[input_text_offset + 6]))
|
||||
{
|
||||
char *nodename_from_menu = NULL;
|
||||
|
||||
|
||||
--
|
||||
|
||||
--
|
||||
Andreas Schwab "And now for something
|
||||
schwab@issan.cs.uni-dortmund.de completely different"
|
||||
schwab@gnu.org
|
||||
|
|
|
@ -37,7 +37,7 @@ static TOC_ENTRY_ELT **toc_entry_alist = NULL;
|
|||
|
||||
/* toc_counter start from 0 ... n for every @chapter, @section ... */
|
||||
static int toc_counter = 0;
|
||||
|
||||
|
||||
/* Routine to add an entry to the table of contents */
|
||||
int
|
||||
toc_add_entry (char *tocname, int level, char *node_name, char *anchor)
|
||||
|
@ -179,7 +179,7 @@ toc_free (void)
|
|||
toc_counter = 0; /* to be absolutley sure ;-) */
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Print table of contents in HTML. */
|
||||
|
||||
static void
|
||||
|
|
|
@ -557,7 +557,7 @@ static int in_table_title = 0;
|
|||
static int in_indexentry = 0;
|
||||
static int in_secondary = 0;
|
||||
static int in_indexterm = 0;
|
||||
|
||||
|
||||
char *
|
||||
xml_id (char *id)
|
||||
{
|
||||
|
@ -650,7 +650,7 @@ xml_begin_document (char *output_filename)
|
|||
}
|
||||
}
|
||||
|
||||
/* */
|
||||
/* */
|
||||
static int element_stack[256];
|
||||
static int element_stack_index = 0;
|
||||
|
||||
|
@ -1633,7 +1633,7 @@ try_docbook_image (const char *name, const char *ext, const char *fmt,
|
|||
xml_insert_element (IMAGEOBJECT, END);
|
||||
used = 1;
|
||||
}
|
||||
|
||||
|
||||
free (fullname);
|
||||
return used;
|
||||
}
|
||||
|
@ -1673,7 +1673,7 @@ xml_insert_docbook_image (char *name_arg)
|
|||
/* If no luck so far, just assume we'll eventually have a jpg. */
|
||||
if (!found)
|
||||
try_docbook_image (name_arg, "jpg", "JPG", 1);
|
||||
|
||||
|
||||
xml_insert_text_file (name_arg);
|
||||
xml_insert_element (elt, END);
|
||||
|
||||
|
|
|
@ -55,8 +55,8 @@ enum xml_element
|
|||
/* Structuring */
|
||||
CHAPTER, SECTION, SUBSECTION, SUBSUBSECTION,
|
||||
TOP, UNNUMBERED, UNNUMBEREDSEC, UNNUMBEREDSUBSEC,
|
||||
UNNUMBEREDSUBSUBSEC,
|
||||
APPENDIX, APPENDIXSEC, APPENDIXSUBSEC, APPENDIXSUBSUBSEC,
|
||||
UNNUMBEREDSUBSUBSEC,
|
||||
APPENDIX, APPENDIXSEC, APPENDIXSUBSEC, APPENDIXSUBSUBSEC,
|
||||
MAJORHEADING, CHAPHEADING, HEADING, SUBHEADING, SUBSUBHEADING,
|
||||
/* Titlepage */
|
||||
TITLEPAGE, AUTHOR, BOOKTITLE, BOOKSUBTITLE,
|
||||
|
@ -69,8 +69,8 @@ enum xml_element
|
|||
TT, CODE, COMMAND_TAG, ENV, FILE_TAG, OPTION, SAMP, KBD, URL, KEY,
|
||||
VAR, SC, DFN, EMPH, STRONG, CITE, NOTFIXEDWIDTH, I, B, R, SLANTED, SANSSERIF,
|
||||
EXDENT,
|
||||
TITLE,
|
||||
IFINFO,
|
||||
TITLE,
|
||||
IFINFO,
|
||||
SP, CENTER,
|
||||
DIRCATEGORY,
|
||||
QUOTATION, EXAMPLE, SMALLEXAMPLE, LISP, SMALLLISP, CARTOUCHE,
|
||||
|
@ -78,20 +78,20 @@ enum xml_element
|
|||
FOOTNOTE, LINEANNOTATION,
|
||||
TIP, NOTE, IMPORTANT, WARNING, CAUTION,
|
||||
ITEMIZE, ITEMFUNCTION, ITEM, ENUMERATE, TABLE, TABLEITEM, TABLETERM,
|
||||
INDEXTERM,
|
||||
INDEXTERM,
|
||||
MATH, DIMENSION,
|
||||
XREF, XREFNODENAME, XREFINFONAME, XREFPRINTEDDESC, XREFINFOFILE,
|
||||
XREFPRINTEDNAME,
|
||||
INFOREF, INFOREFNODENAME, INFOREFREFNAME, INFOREFINFONAME,
|
||||
XREFPRINTEDNAME,
|
||||
INFOREF, INFOREFNODENAME, INFOREFREFNAME, INFOREFINFONAME,
|
||||
UREF, UREFURL, UREFDESC, UREFREPLACEMENT,
|
||||
EMAIL, EMAILADDRESS, EMAILNAME,
|
||||
GROUP, FLOAT, FLOATTYPE, FLOATPOS, CAPTION, SHORTCAPTION,
|
||||
FLOATTABLE, FLOATFIGURE, FLOATEXAMPLE, FLOATCARTOUCHE,
|
||||
PRINTINDEX, LISTOFFLOATS,
|
||||
ANCHOR,
|
||||
ANCHOR,
|
||||
IMAGE, INLINEIMAGE, IMAGEALTTEXT,
|
||||
PRIMARY, SECONDARY, INFORMALFIGURE, MEDIAOBJECT, IMAGEOBJECT,
|
||||
IMAGEDATA, TEXTOBJECT,
|
||||
IMAGEDATA, TEXTOBJECT,
|
||||
INDEXENTRY, PRIMARYIE, SECONDARYIE, INDEXDIV,
|
||||
MULTITABLE, TGROUP, COLSPEC, THEAD, TBODY, ENTRY, ROW,
|
||||
BOOKINFO, ABSTRACT, REPLACEABLE, ENVAR, COMMENT, FUNCTION, LEGALNOTICE,
|
||||
|
|
|
@ -248,7 +248,7 @@ cm_xref (int arg)
|
|||
if (p != NULL)
|
||||
*p = 0;
|
||||
}
|
||||
|
||||
|
||||
if (! *file_arg)
|
||||
warning (_("Empty file name for HTML cross reference in `%s'"),
|
||||
arg4);
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
#
|
||||
#
|
||||
# List of source files containing translatable strings.
|
||||
# The last line must not be a comment.
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Copyright © 2004 Free Software Foundation, Inc.
|
||||
# Michel Robitaille <robitail@iro.umontreal.ca>, traducteur depuis/since 1996.
|
||||
#
|
||||
# Laurent Bourbeau est le traducteur officiel mais depuis plus d'un
|
||||
# Laurent Bourbeau est le traducteur officiel mais depuis plus d'un
|
||||
# an, Michel assume la traduction avec l'accord de Laurent.
|
||||
#
|
||||
# Laurent Bourbeau <bourbeau@progiciels-bpi.ca>, 2001.
|
||||
|
|
|
@ -313,10 +313,10 @@ uninstall-binPROGRAMS:
|
|||
|
||||
clean-binPROGRAMS:
|
||||
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
|
||||
ginstall-info$(EXEEXT): $(ginstall_info_OBJECTS) $(ginstall_info_DEPENDENCIES)
|
||||
ginstall-info$(EXEEXT): $(ginstall_info_OBJECTS) $(ginstall_info_DEPENDENCIES)
|
||||
@rm -f ginstall-info$(EXEEXT)
|
||||
$(LINK) $(ginstall_info_LDFLAGS) $(ginstall_info_OBJECTS) $(ginstall_info_LDADD) $(LIBS)
|
||||
texindex$(EXEEXT): $(texindex_OBJECTS) $(texindex_DEPENDENCIES)
|
||||
texindex$(EXEEXT): $(texindex_OBJECTS) $(texindex_DEPENDENCIES)
|
||||
@rm -f texindex$(EXEEXT)
|
||||
$(LINK) $(texindex_LDFLAGS) $(texindex_OBJECTS) $(texindex_LDADD) $(LIBS)
|
||||
install-binSCRIPTS: $(bin_SCRIPTS)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* deref.c
|
||||
*
|
||||
* Make all texinfo references into the one argument form.
|
||||
*
|
||||
*
|
||||
* Arnold Robbins
|
||||
* arnold@gnu.org
|
||||
* Written: December, 1991
|
||||
|
@ -14,12 +14,12 @@
|
|||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
*
|
||||
* DEREF is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# lcircle10 files already exist.
|
||||
|
||||
# Don't override definition of prefix and/or libdir if they are
|
||||
# already defined in the environment.
|
||||
# already defined in the environment.
|
||||
if test "z${prefix}" = "z" ; then
|
||||
prefix=/usr/local
|
||||
else
|
||||
|
|
|
@ -8,12 +8,12 @@
|
|||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
#
|
||||
# FIXREF is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
|
|
@ -56,7 +56,7 @@ looking at that node, which is (dir)Top.
|
|||
|
||||
File: dir Node: Top This is the top of the INFO tree
|
||||
|
||||
This (the Directory node) gives a menu of major topics.
|
||||
This (the Directory node) gives a menu of major topics.
|
||||
Typing "q" exits, "?" lists all Info commands, "d" returns here,
|
||||
"h" gives a primer for first-timers,
|
||||
"mEmacs<Return>" visits the Emacs topic, etc.
|
||||
|
@ -73,8 +73,8 @@ moobler
|
|||
### use it, otherwise create a minimal dir entry.
|
||||
###
|
||||
### Then remove that file from the list of existing files. If any
|
||||
### additional files remain (ones that don't have a skeleton entry),
|
||||
### then generate entries for those in the same way, putting the info for
|
||||
### additional files remain (ones that don't have a skeleton entry),
|
||||
### then generate entries for those in the same way, putting the info for
|
||||
### those at the end....
|
||||
|
||||
infofiles=`(cd ${INFODIR}; /bin/ls | grep -v '\-[0-9]*$' | egrep -v '^dir$|^dir\.info$|^dir\.orig$')`
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# gendocs.sh -- generate a GNU manual in many formats. This script is
|
||||
# mentioned in maintain.texi. See the help message below for usage details.
|
||||
# $Id: gendocs.sh,v 1.1.1.1 2006/07/17 16:03:50 espie Exp $
|
||||
#
|
||||
#
|
||||
# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
|
|
|
@ -36,12 +36,12 @@
|
|||
<p>This manual (%%PACKAGE%%) is available in the following formats:</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="%%PACKAGE%%.html">HTML
|
||||
<li><a href="%%PACKAGE%%.html">HTML
|
||||
(%%HTML_MONO_SIZE%%K characters)</a> - entirely on one web page.</li>
|
||||
<li><a href="html_node/index.html">HTML</a> - with one web page per
|
||||
node.</li>
|
||||
<li><a href="%%PACKAGE%%.html.gz">HTML compressed
|
||||
(%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
|
||||
(%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
|
||||
one web page.</li>
|
||||
<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
|
||||
(%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
|
||||
|
@ -71,9 +71,9 @@ Return to the <a href="/home.html">GNU Project home page</a>.
|
|||
</p>
|
||||
|
||||
<p>
|
||||
Please send FSF & GNU inquiries to
|
||||
Please send FSF & GNU inquiries to
|
||||
<a href="mailto:gnu@gnu.org"><em>gnu@gnu.org</em></a>.
|
||||
There are also <a href="/home.html#ContactInfo">other ways to contact</a>
|
||||
There are also <a href="/home.html#ContactInfo">other ways to contact</a>
|
||||
the FSF.
|
||||
<br />
|
||||
Please send broken links and other corrections (or suggestions) to
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# infosrch does a regex search on an info manual.
|
||||
# By Harry Putnam <reader@newsguy.com>.
|
||||
|
||||
($myscript = $0) =~ s:^.*/::;
|
||||
($myscript = $0) =~ s:^.*/::;
|
||||
$six = '';
|
||||
|
||||
if($ARGV[0] eq "help"){
|
||||
|
@ -28,7 +28,7 @@ open(SHELL_PROC," $shell_proc|");
|
|||
while(<SHELL_PROC>){
|
||||
chomp;
|
||||
push @lines,$_;
|
||||
}
|
||||
}
|
||||
close(SHELL_PROC);
|
||||
$cnt = 0;
|
||||
for(@lines){
|
||||
|
@ -79,7 +79,7 @@ for(@lines){
|
|||
print "-- \n";
|
||||
}
|
||||
$cnt++;
|
||||
}
|
||||
}
|
||||
|
||||
sub usage {
|
||||
print <<EOM;
|
||||
|
|
|
@ -32,7 +32,7 @@ Options:
|
|||
-v,--version show version
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
|
||||
function cleanup ()
|
||||
{
|
||||
|
|
|
@ -28,10 +28,10 @@ struct spec_section;
|
|||
|
||||
struct line_data *findlines (char *data, int size, int *nlinesp);
|
||||
void insert_entry_here (struct spec_entry *entry, int line_number,
|
||||
struct line_data *dir_lines, int n_entries);
|
||||
struct line_data *dir_lines, int n_entries);
|
||||
int compare_section_names (const void *s1, const void *s2);
|
||||
int compare_entries_text (const void *e1, const void *e2);
|
||||
|
||||
int compare_entries_text (const void *e1, const void *e2);
|
||||
|
||||
/* Data structures. */
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ struct menu_section
|
|||
/* Line number of end of section. */
|
||||
int end_line;
|
||||
};
|
||||
|
||||
|
||||
/* This table defines all the long-named options, says whether they
|
||||
use an argument, and maps them into equivalent single-letter options. */
|
||||
|
||||
|
@ -133,7 +133,7 @@ struct option longopts[] =
|
|||
{ "version", no_argument, NULL, 'V' },
|
||||
{ 0 }
|
||||
};
|
||||
|
||||
|
||||
/* Error message functions. */
|
||||
|
||||
/* Print error message. S1 is printf control string, S2 and S3 args for it. */
|
||||
|
@ -164,7 +164,7 @@ fatal (const char *s1, const char *s2, const char *s3)
|
|||
error (s1, s2, s3);
|
||||
xexit (1);
|
||||
}
|
||||
|
||||
|
||||
/* Return a newly-allocated string
|
||||
whose contents concatenate those of S1, S2, S3. */
|
||||
char *
|
||||
|
@ -203,7 +203,7 @@ pfatal_with_name (const char *name)
|
|||
char *s = concat ("", strerror (errno), _(" for %s"));
|
||||
fatal (s, name, 0);
|
||||
}
|
||||
|
||||
|
||||
/* Compare the menu item names in LINE1 (line length LEN1)
|
||||
and LINE2 (line length LEN2). Return 1 if the item name
|
||||
in LINE1 is less, 0 otherwise. */
|
||||
|
@ -257,7 +257,7 @@ menu_line_equal (char *line1, int len1, char *line2, int len2)
|
|||
return 1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Given the full text of a menu entry, null terminated,
|
||||
return just the menu item name (copied). */
|
||||
|
||||
|
@ -319,7 +319,7 @@ extract_menu_file_name (char *item_text)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Return FNAME with any [.info][.gz] suffix removed. */
|
||||
|
||||
static char *
|
||||
|
@ -376,7 +376,7 @@ menu_item_equal (const char *item, char term_char, const char *name)
|
|||
/* We must compare the basename in ITEM, since we are passed the
|
||||
basename of the original info file. Otherwise, a new entry like
|
||||
"lilypond/lilypond" won't match "lilypond".
|
||||
|
||||
|
||||
Actually, it seems to me that we should really compare the whole
|
||||
name, and not just the basename. Couldn't there be dir1/foo.info
|
||||
and dir2/foo.info? Also, it seems like we should be using the
|
||||
|
@ -390,7 +390,7 @@ menu_item_equal (const char *item, char term_char, const char *name)
|
|||
item_basename = item; /* no /, use original */
|
||||
else
|
||||
item_basename++; /* have /, move past it */
|
||||
|
||||
|
||||
/* First, ITEM must actually match NAME (usually it won't). */
|
||||
ret = strncasecmp (item_basename, name, name_len) == 0;
|
||||
if (ret)
|
||||
|
@ -419,7 +419,7 @@ menu_item_equal (const char *item, char term_char, const char *name)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void
|
||||
suggest_asking_for_help (void)
|
||||
{
|
||||
|
@ -469,7 +469,7 @@ general questions and discussion to help-texinfo@gnu.org.\n\
|
|||
Texinfo home page: http://www.gnu.org/software/texinfo/"));
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* If DIRFILE does not exist, create a minimal one (or abort). If it
|
||||
already exists, do nothing. */
|
||||
|
||||
|
@ -518,7 +518,7 @@ The first time you invoke Info you start off looking at this node.\n\
|
|||
else
|
||||
close (desc); /* It already existed, so fine. */
|
||||
}
|
||||
|
||||
|
||||
/* Open FILENAME and return the resulting stream pointer. If it doesn't
|
||||
exist, try FILENAME.gz. If that doesn't exist either, call
|
||||
CREATE_CALLBACK (with FILENAME as arg) to create it, if that is
|
||||
|
@ -652,7 +652,7 @@ open_possibly_compressed_file (char *filename,
|
|||
|
||||
return f;
|
||||
}
|
||||
|
||||
|
||||
/* Read all of file FILENAME into memory and return the address of the
|
||||
data. Store the size of the data into SIZEP. If need be, uncompress
|
||||
(i.e., try FILENAME.gz et al. if FILENAME does not exist) and store
|
||||
|
@ -708,7 +708,7 @@ readfile (char *filename, int *sizep,
|
|||
*sizep = filled;
|
||||
return data;
|
||||
}
|
||||
|
||||
|
||||
/* Output the old dir file, interpolating the new sections
|
||||
and/or new entries where appropriate. If COMPRESSION_PROGRAM is not
|
||||
null, pipe to it to create DIRFILE. Thus if we read dir.gz on input,
|
||||
|
@ -842,12 +842,12 @@ output_dirfile (char *dirfile, int dir_nlines, struct line_data *dir_lines,
|
|||
else
|
||||
fclose (output);
|
||||
}
|
||||
|
||||
|
||||
/* Parse the input to find the section names and the entry names it
|
||||
specifies. Return the number of entries to add from this file. */
|
||||
int
|
||||
parse_input (const struct line_data *lines, int nlines,
|
||||
struct spec_section **sections, struct spec_entry **entries)
|
||||
struct spec_section **sections, struct spec_entry **entries)
|
||||
{
|
||||
int n_entries = 0;
|
||||
int prefix_length = strlen ("INFO-DIR-SECTION ");
|
||||
|
@ -1457,7 +1457,7 @@ For more information about these matters, see the files named COPYING.\n"));
|
|||
xexit (0);
|
||||
return 0; /* Avoid bogus warnings. */
|
||||
}
|
||||
|
||||
|
||||
/* Divide the text at DATA (of SIZE bytes) into lines.
|
||||
Return a vector of struct line_data describing the lines.
|
||||
Store the length of that vector into *NLINESP. */
|
||||
|
@ -1507,7 +1507,7 @@ findlines (char *data, int size, int *nlinesp)
|
|||
*nlinesp = filled;
|
||||
return lines;
|
||||
}
|
||||
|
||||
|
||||
/* This is the comparison function for qsort for a vector of pointers to
|
||||
struct spec_section. (Have to use const void * as the parameter type
|
||||
to avoid incompatible-with-qsort warnings.)
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
#! /usr/local/bin/gawk -f
|
||||
|
||||
# texi.outline --- produce an outline from a texinfo source file
|
||||
#
|
||||
#
|
||||
# Copyright (C) 1998 Arnold David Robbins (arnold@gnu.org)
|
||||
#
|
||||
#
|
||||
# TEXI.OUTLINE 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 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
#
|
||||
# TEXI.OUTLINE is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
|
|
@ -8,12 +8,12 @@
|
|||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
#
|
||||
# PREPINFO is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
|
|
@ -6,7 +6,7 @@ ANYVERSION=no
|
|||
|
||||
for arg in $1 $2
|
||||
do
|
||||
case $arg in
|
||||
case $arg in
|
||||
--dammit | -d ) ANYVERSION=yes ;;
|
||||
|
||||
* ) dir=$arg
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
;;
|
||||
;; $Id: texi-docstring-magic.el,v 1.1.1.2 2006/07/17 16:03:50 espie Exp $
|
||||
;;
|
||||
;; This package is distributed under the terms of the
|
||||
;; GNU General Public License, Version 2.
|
||||
;; You should have a copy of the GPL with your version of
|
||||
;; This package is distributed under the terms of the
|
||||
;; GNU General Public License, Version 2.
|
||||
;; You should have a copy of the GPL with your version of
|
||||
;; GNU Emacs or the Texinfo distribution.
|
||||
;;
|
||||
;;
|
||||
;; This package generates Texinfo source fragments from Emacs
|
||||
;;
|
||||
;; This package generates Texinfo source fragments from Emacs
|
||||
;; docstrings. This avoids documenting functions and variables
|
||||
;; in more than one place, and automatically adds Texinfo markup
|
||||
;; to docstrings.
|
||||
|
@ -26,7 +26,7 @@
|
|||
;; * Arguments to functions should be written in upper case: ARG1..ARGN
|
||||
;; * User options (variables users may want to set) should have docstrings
|
||||
;; beginning with an asterisk.
|
||||
;;
|
||||
;;
|
||||
;; Usage:
|
||||
;;
|
||||
;; Write comments of the form:
|
||||
|
@ -39,7 +39,7 @@
|
|||
;;
|
||||
;; This will insert @defopt, @deffn and the like underneath the
|
||||
;; magic comment strings.
|
||||
;;
|
||||
;;
|
||||
;; The default value for user options will be printed.
|
||||
;;
|
||||
;; Symbols are recognized if they are defined for faces, functions,
|
||||
|
@ -48,7 +48,7 @@
|
|||
;; Automatic markup rules:
|
||||
;;
|
||||
;; 1. Indented lines are gathered into @lisp environment.
|
||||
;; 2. Pieces of text `stuff' or surrounded in quotes marked up with @samp.
|
||||
;; 2. Pieces of text `stuff' or surrounded in quotes marked up with @samp.
|
||||
;; 3. Words *emphasized* are made @strong{emphasized}
|
||||
;; 4. Words sym-bol which are symbols become @code{sym-bol}.
|
||||
;; 5. Upper cased words ARG corresponding to arguments become @var{arg}.
|
||||
|
@ -159,10 +159,10 @@
|
|||
Format of table is a list of elements of the form
|
||||
(regexp predicate replacement-form)
|
||||
If regexp matches and predicate holds, then replacement-form is
|
||||
evaluated to get the replacement for the match.
|
||||
evaluated to get the replacement for the match.
|
||||
predicate and replacement-form can use variables arg,
|
||||
and forms such as (match-string 1 docstring)
|
||||
Match string 1 is assumed to determine the
|
||||
Match string 1 is assumed to determine the
|
||||
length of the matched item, hence where parsing restarts from.
|
||||
The replacement must cover the whole match (match string 0),
|
||||
including any whitespace included to delimit matches.")
|
||||
|
@ -177,7 +177,7 @@ including any whitespace included to delimit matches.")
|
|||
(replace (nth 2 test))
|
||||
(i 0)
|
||||
in-quoted-region)
|
||||
|
||||
|
||||
(while (and
|
||||
(< i (length docstring))
|
||||
(string-match regexp docstring i))
|
||||
|
@ -195,14 +195,14 @@ including any whitespace included to delimit matches.")
|
|||
;; if not already a new paragraph.
|
||||
(let*
|
||||
((pos (string-match "\n" docstring))
|
||||
(needscr (and pos
|
||||
(not (string= "\n"
|
||||
(substring docstring
|
||||
(1+ pos)
|
||||
(needscr (and pos
|
||||
(not (string= "\n"
|
||||
(substring docstring
|
||||
(1+ pos)
|
||||
(+ pos 2)))))))
|
||||
(if (and pos needscr)
|
||||
(concat (substring docstring 0 pos)
|
||||
"@*\n"
|
||||
"@*\n"
|
||||
(substring docstring (1+ pos)))
|
||||
docstring)))
|
||||
|
||||
|
@ -223,7 +223,7 @@ including any whitespace included to delimit matches.")
|
|||
"Make a default value string for the value DEFAULT.
|
||||
Markup as @code{stuff} or @lisp stuff @end lisp."
|
||||
(let ((text (format "%S" default)))
|
||||
(concat
|
||||
(concat
|
||||
"\nThe default value is "
|
||||
(if (string-match "\n" text)
|
||||
;; Carriage return will break @code, use @lisp
|
||||
|
@ -231,7 +231,7 @@ Markup as @code{stuff} or @lisp stuff @end lisp."
|
|||
(concat "the string: \n@lisp\n" default "\n@end lisp\n")
|
||||
(concat "the value: \n@lisp\n" text "\n@end lisp\n"))
|
||||
(concat "@code{" text "}.\n")))))
|
||||
|
||||
|
||||
|
||||
(defun texi-docstring-magic-texi-for (symbol)
|
||||
(cond
|
||||
|
@ -343,5 +343,5 @@ Markup as @code{stuff} or @lisp stuff @end lisp."
|
|||
(list (if (equal val "") v (intern val)))))
|
||||
(insert "\n" texi-docstring-magic-comment " " (symbol-name symbol)))
|
||||
|
||||
|
||||
|
||||
(provide 'texi-docstring-magic)
|
||||
|
|
|
@ -153,7 +153,7 @@ done
|
|||
arg_sep="$$--$$"
|
||||
set dummy ${1+"$@"} "$arg_sep"; shift
|
||||
|
||||
#
|
||||
#
|
||||
# Parse command line arguments.
|
||||
while test x"$1" != x"$arg_sep"; do
|
||||
|
||||
|
@ -363,7 +363,7 @@ else
|
|||
exec 6>/dev/null
|
||||
fi
|
||||
|
||||
#
|
||||
#
|
||||
# TeXify files.
|
||||
|
||||
for command_line_filename in ${1+"$@"}; do
|
||||
|
|
|
@ -146,7 +146,7 @@ void error (const char *format, const char *arg);
|
|||
void *xmalloc (), *xrealloc ();
|
||||
char *concat (char *s1, char *s2);
|
||||
void flush_tempfiles (int to_count);
|
||||
|
||||
|
||||
#define MAX_IN_CORE_SORT 500000
|
||||
|
||||
int
|
||||
|
@ -239,7 +239,7 @@ main (int argc, char **argv)
|
|||
xexit (0);
|
||||
return 0; /* Avoid bogus warnings. */
|
||||
}
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
char *long_name;
|
||||
|
@ -386,7 +386,7 @@ For more information about these matters, see the files named COPYING.\n"));
|
|||
if (num_infiles == 0)
|
||||
usage (1);
|
||||
}
|
||||
|
||||
|
||||
/* Return a name for temporary file COUNT. */
|
||||
|
||||
static char *
|
||||
|
@ -432,7 +432,7 @@ flush_tempfiles (int to_count)
|
|||
unlink (maketempname (++last_deleted_tempcount));
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Compare LINE1 and LINE2 according to the specified set of keyfields. */
|
||||
|
||||
int
|
||||
|
@ -814,7 +814,7 @@ compare_field (struct keyfield *keyfield, char *start1, long int length1,
|
|||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* A `struct linebuffer' is a structure which holds a line of text.
|
||||
`readline' reads a line from a stream into a linebuffer
|
||||
and works regardless of the length of the line. */
|
||||
|
@ -864,7 +864,7 @@ readline (struct linebuffer *linebuffer, FILE *stream)
|
|||
|
||||
return p - buffer;
|
||||
}
|
||||
|
||||
|
||||
/* Sort an input file too big to sort in core. */
|
||||
|
||||
void
|
||||
|
@ -961,7 +961,7 @@ fail:
|
|||
|
||||
merge_files (tempfiles, ntemps, outfile);
|
||||
}
|
||||
|
||||
|
||||
/* Sort INFILE, whose size is TOTAL,
|
||||
assuming that is small enough to be done in-core,
|
||||
then indexify it and send the output to OUTFILE (or to stdout). */
|
||||
|
@ -1077,7 +1077,7 @@ sort_in_core (char *infile, int total, char *outfile)
|
|||
free (linearray);
|
||||
free (data);
|
||||
}
|
||||
|
||||
|
||||
/* Parse an input string in core into lines.
|
||||
DATA is the input string, and SIZE is its length.
|
||||
Data goes in LINEARRAY starting at NEXTLINE.
|
||||
|
@ -1133,7 +1133,7 @@ parsefile (char *filename, char **nextline, char *data, long int size)
|
|||
|
||||
return line;
|
||||
}
|
||||
|
||||
|
||||
/* Indexification is a filter applied to the sorted lines
|
||||
as they are being written to the output file.
|
||||
Multiple entries for the same name, with different page numbers,
|
||||
|
@ -1349,7 +1349,7 @@ finish_index (FILE *ostream)
|
|||
free (lastprimary);
|
||||
free (lastsecondary);
|
||||
}
|
||||
|
||||
|
||||
/* Copy the lines in the sorted order.
|
||||
Each line is copied out of the input file it was found in. */
|
||||
|
||||
|
@ -1385,7 +1385,7 @@ writelines (char **linearray, int nlines, FILE *ostream)
|
|||
|
||||
finish_index (ostream);
|
||||
}
|
||||
|
||||
|
||||
/* Assume (and optionally verify) that each input file is sorted;
|
||||
merge them and output the result.
|
||||
Returns nonzero if any input file fails to be sorted.
|
||||
|
@ -1436,7 +1436,7 @@ merge_files (char **infiles, int nfiles, char *outfile)
|
|||
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
/* Assume (and optionally verify) that each input file is sorted;
|
||||
merge them and output the result.
|
||||
Returns nonzero if any input file fails to be sorted.
|
||||
|
@ -1596,7 +1596,7 @@ merge_direct (char **infiles, int nfiles, char *outfile)
|
|||
|
||||
return lossage;
|
||||
}
|
||||
|
||||
|
||||
/* Print error message and exit. */
|
||||
|
||||
void
|
||||
|
@ -1630,7 +1630,7 @@ pfatal_with_name (const char *name)
|
|||
xexit (1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Return a newly-allocated string concatenating S1 and S2. */
|
||||
|
||||
char *
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
|
||||
<!ENTITY % section.level3 "subsection | unnumberedsubsec | appendixsubsec">
|
||||
|
||||
<!ENTITY % section.level4 "subsubsection | unnumberedsubsubsec
|
||||
<!ENTITY % section.level4 "subsubsection | unnumberedsubsubsec
|
||||
| appendixsubsubsec">
|
||||
|
||||
<!ENTITY % section.all "%section.level1; | %section.level2; | %section.level3;
|
||||
|
@ -102,7 +102,7 @@
|
|||
<!ENTITY % Inline.fonts "b | i | r | sansserif | slanted | titlefont | tt">
|
||||
<!ENTITY % Inline.footnote "footnote">
|
||||
<!ENTITY % Inline.markup "code | command | env | file | option | samp
|
||||
| dfn | cite | key | kbd | var | acronym | url">
|
||||
| dfn | cite | key | kbd | var | acronym | url">
|
||||
<!ENTITY % Inline.math "math">
|
||||
<!ENTITY % Inline.reference "xref | inforef | indexterm | email | uref">
|
||||
<!ENTITY % Inline.smallcaps "sc">
|
||||
|
|
|
@ -86,7 +86,7 @@
|
|||
</xsl:template>
|
||||
|
||||
<xsl:template match="TEXINFO/NODE/NODEPREV"/>
|
||||
|
||||
|
||||
<xsl:template match="TEXINFO/NODE/NODEUP" mode="select">
|
||||
[ <b>Up: </b>
|
||||
<a>
|
||||
|
@ -117,7 +117,7 @@
|
|||
<xsl:template match="//MENU">
|
||||
<h3>Menu</h3>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:template>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="//MENU/MENUENTRY">
|
||||
<a>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# Test texinfo.tex changes by running various manuals through with an
|
||||
# old version, saving the .ps result from dvips, doing the same with a
|
||||
# new version, and comparing. Idea from Stepan Kasal.
|
||||
#
|
||||
#
|
||||
# Another option is to run the manuals all the way through using
|
||||
# texi2dvi, which tests in another way.
|
||||
|
||||
|
@ -47,7 +47,7 @@ for manual in $manuals; do
|
|||
mandir=`dirname $manual`
|
||||
test $mandir = . && mandir=$initial_dir
|
||||
manual_base=`basename "$manual" | sed 's/\.[^.]*$//'`
|
||||
|
||||
|
||||
rm -f $manual_base.* texinfo.tex
|
||||
ln -s $newdir/texinfo.tex texinfo.tex
|
||||
|
||||
|
@ -58,7 +58,7 @@ for manual in $manuals; do
|
|||
echo "$0: testing $manual_base... (pdf)"
|
||||
texi2dvi --pdf $manual \
|
||||
|| { echo "texi2dvi --pdf $manual failed." >&2; exit 1; }
|
||||
|
||||
|
||||
else
|
||||
echo "$0: testing $manual_base... (new)"
|
||||
run_tex
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue