Mercurial > emacs
view man/back.texi @ 44604:4702b23921b4
Avoid doubly tagging parse.y when both parse.c and parse.y are given on
the command line, in either order.
* etags.c (find_entries): Delete tags previously obtained from
file xxx.c's #line directives when parsing file xxx.y. This is
generally done for automatically generated files containing
#line directives. This handles the case when xxx.y is tagged
before xxx.c, and the entries of xxx.c pointing to xxx.y should
be discarded.
(language): Added the metasource member. Initializers changed.
(invalidate_nodes): New function.
(readline): Discard lines after having found a #line
directive pointing to an already tagged file. This handles the
case when xxx.y is tagged before xxx.c, and the entries of
xxx.c pointing to xxx.y should be discarded.
(fdesc): New structure for keeping track of input files.
(fdesc): Remove `file' member (a string) and use instead a pointer
to a file description structure.
(curfile, curfiledir, curtagfname, curlang, nocharno,
forced_lang): Global variables removed in favor of fdhead and
curfdp, pointers to file description strucures.
(longopts, main, print_help): Use the CTAGS conditional to include
or exclude options that work on etags or ctags only.
(process_file, find_entries, pfnote, add_node, put_entries,
readline): Use fdhead and curfdp.
(process_file, find_entries): Do not take an arg string, all
callers changed.
* etags.c (longopts, print_help, main): Test CTAGS to disallow
options that are not right for either etags or ctags.
* etags.c (number_len, total_size_of_entries): Define them also
in CTAGS mode, because gcc does not compile all refs away.
author | Francesco Potortì <pot@gnu.org> |
---|---|
date | Mon, 15 Apr 2002 14:18:47 +0000 |
parents | e96ffe544684 |
children | 695cf19ef79e |
line wrap: on
line source
\input rotate \font\title=ptmb at20pt \font\body=ptmr at12pt \font\price=ptmr at10pt \baselineskip=13pt \parskip=13pt \parindent=0pt \nopagenumbers \hsize=7in \vsize=9.25in \voffset=-1in \hoffset=-1in \hbox to7in{% \vbox to9.25in{ \hsize=6in \leftskip=.75in \rightskip=.25in \vskip2in \title \hfil GNU Emacs\hfil \body Most of the GNU Emacs text editor is written in the programming language called Emacs Lisp. You can write new code in Emacs Lisp and install it as an extension to the editor. However, Emacs Lisp is more than a mere ``extension language''; it is a full computer programming language in its own right. You can use it as you would any other programming language. Because Emacs Lisp is designed for use in an editor, it has special features for scanning and parsing text as well as features for handling files, buffers, displays, subprocesses, and so on. Emacs Lisp is closely integrated with the editing facilities; thus, editing commands are functions that can also conveniently be called from Lisp programs, and parameters for customization are ordinary Lisp variables. This manual describes Emacs Lisp. Generally speaking, the earlier chapters describe features of Emacs Lisp that have counterparts in many programming languages, and later chapters describe features that are peculiar to Emacs Lisp or relate specifically to editing. \vfil \leftskip=0pt \rightskip=0pt \parfillskip=0pt\hfil% ISBN-1-882114-04-3 \vskip.5in }% \setbox0=\vbox to1in{ \vfil\hskip.5in {\price FSF $\bullet$ US\$25.00 $\bullet$ Printed in USA} \vskip.5in }% \rotl0% } \eject\bye