Mercurial > emacs
annotate lisp/textmodes/reftex.el @ 41882:f3bc5e440020
Resurrect the Hebrew category
settings for all Hebrew characters removed by the last change.
Add code for setting the Hebrew category of the Unicode Hebrew
characters. Set syntax entries for Hebrew punctuation characters.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Fri, 07 Dec 2001 17:52:20 +0000 |
parents | 7a94f1c588c4 |
children | 7522419c4db0 |
rev | line source |
---|---|
38422
7a94f1c588c4
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
37998
diff
changeset
|
1 ;;; reftex.el --- minor mode for doing \label, \ref, \cite, \index in LaTeX |
27192
f70a80cecdd3
New version number.
Carsten Dominik <dominik@science.uva.nl>
parents:
27170
diff
changeset
|
2 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. |
18050 | 3 |
38422
7a94f1c588c4
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
37998
diff
changeset
|
4 ;; Author: Carsten Dominik <dominik@strw.LeidenUniv.nl> |
7a94f1c588c4
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
37998
diff
changeset
|
5 ;; Version: 4.16 |
7a94f1c588c4
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
37998
diff
changeset
|
6 ;; Keywords: tex |
18050 | 7 |
27034 | 8 ;; This file is part of GNU Emacs. |
18050 | 9 |
10 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
11 ;; it under the terms of the GNU General Public License as published by | |
12 ;; the Free Software Foundation; either version 2, or (at your option) | |
13 ;; any later version. | |
14 | |
15 ;; GNU Emacs is distributed in the hope that it will be useful, | |
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 ;; GNU General Public License for more details. | |
19 | |
20 ;; You should have received a copy of the GNU General Public License | |
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the | |
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
23 ;; Boston, MA 02111-1307, USA. | |
24 | |
25 ;;--------------------------------------------------------------------------- | |
26 ;; | |
27 ;;; Commentary: | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
28 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
29 ;; RefTeX is a minor mode with distinct support for \ref, \label, \cite, |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
30 ;; and \index commands in (multi-file) LaTeX documents. |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
31 ;; - A table of contents provides easy access to any part of a document. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
32 ;; - Labels are created semi-automatically. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
33 ;; - Definition context of labels is provided when creating a reference. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
34 ;; - Citations are simplified with efficient database lookup. |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
35 ;; - Text phrases can be collected in a file, for later global indexing. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
36 ;; - The index preview buffer helps to check and edit index entries. |
18050 | 37 ;; |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
38 ;; |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
39 ;; INSTALLATION |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
40 ;; ------------ |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
41 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
42 ;; - If this file is part of an X/Emacs distribution, it is installed. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
43 ;; - For XEmacs 21.x, you need to install the RefTeX plug-in package |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
44 ;; available from the XEmacs distribution sites. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
45 ;; - If you have downloaded this file from the maintainers webpage, follow |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
46 ;; the instructions in the INSTALL file of the distrubution. |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
47 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
48 ;; To turn RefTeX Mode on and off in a buffer, use `M-x reftex-mode'. |
18050 | 49 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
50 ;; To turn on RefTeX Mode for all LaTeX files, add the following lines |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
51 ;; to your .emacs file: |
18050 | 52 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
53 ;; (add-hook 'LaTeX-mode-hook 'turn-on-reftex) ; AUCTeX LaTeX mode |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
54 ;; (add-hook 'latex-mode-hook 'turn-on-reftex) ; Emacs latex mode |
18050 | 55 ;; |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
56 ;; |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
57 ;; DOCUMENTATION |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
58 ;; ------------- |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
59 ;; |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
60 ;; See below for a short summary of how to use RefTeX. |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
61 ;; |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
62 ;; There is an extensive texinfo document describing RefTeX in detail. |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
63 ;; One way to view this documentation is `M-x reftex-info RET'. |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
64 ;; |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
65 ;; The documentation in various formats is also available at |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
66 ;; |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
67 ;; http://www.strw.leidenuniv.nl/~dominik/Tools/ |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
68 ;; |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
69 ;;--------------------------------------------------------------------------- |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
70 ;; |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
71 ;; Introduction |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
72 ;; ************ |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
73 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
74 ;; RefTeX is a specialized package for support of labels, references, |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
75 ;; citations, and the index in LaTeX. RefTeX wraps itself round 4 LaTeX |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
76 ;; macros: `\label', `\ref', `\cite', and `\index'. Using these macros |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
77 ;; usually requires looking up different parts of the document and |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
78 ;; searching through BibTeX database files. RefTeX automates these |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
79 ;; time-consuming tasks almost entirely. It also provides functions to |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
80 ;; display the structure of a document and to move around in this |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
81 ;; structure quickly. |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
82 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
83 ;; *Note Imprint::, for information about who to contact for help, bug |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
84 ;; reports or suggestions. |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
85 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
86 ;; Environment |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
87 ;; =========== |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
88 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
89 ;; RefTeX needs to access all files which are part of a multifile |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
90 ;; document, and the BibTeX database files requested by the |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
91 ;; `\bibliography' command. To find these files, RefTeX will require a |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
92 ;; search path, i.e. a list of directories to check. Normally this list |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
93 ;; is stored in the environment variables `TEXINPUTS' and `BIBINPUTS' |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
94 ;; which are also used by RefTeX. However, on some systems these |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
95 ;; variables do not contain the full search path. If RefTeX does not work |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
96 ;; for you because it cannot find some files, read *Note Finding Files::. |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
97 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
98 ;; Entering RefTeX Mode |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
99 ;; ==================== |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
100 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
101 ;; To turn RefTeX Mode on and off in a particular buffer, use `M-x |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
102 ;; reftex-mode'. To turn on RefTeX Mode for all LaTeX files, add the |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
103 ;; following lines to your `.emacs' file: |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
104 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
105 ;; (add-hook 'LaTeX-mode-hook 'turn-on-reftex) ; with AUCTeX LaTeX mode |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
106 ;; (add-hook 'latex-mode-hook 'turn-on-reftex) ; with Emacs latex mode |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
107 ;; |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
108 ;; RefTeX in a Nutshell |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
109 ;; ==================== |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
110 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
111 ;; 1. Table of Contents |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
112 ;; Typing `C-c =' (`reftex-toc') will show a table of contents of the |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
113 ;; document. This buffer can display sections, labels and index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
114 ;; entries defined in the document. From the buffer, you can jump |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
115 ;; quickly to every part of your document. Press `?' to get help. |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
116 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
117 ;; 2. Labels and References |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
118 ;; RefTeX helps to create unique labels and to find the correct key |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
119 ;; for references quickly. It distinguishes labels for different |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
120 ;; environments, knows about all standard environments (and many |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
121 ;; others), and can be configured to recognize any additional labeled |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
122 ;; environments you have defined yourself (variable |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
123 ;; `reftex-label-alist'). |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
124 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
125 ;; * Creating Labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
126 ;; Type `C-c (' (`reftex-label') to insert a label at point. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
127 ;; RefTeX will either |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
128 ;; - derive a label from context (default for section labels) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
129 ;; - prompt for a label string (default for figures and |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
130 ;; tables) or |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
131 ;; - insert a simple label made of a prefix and a number (all |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
132 ;; other environments) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
133 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
134 ;; Which labels are created how is configurable with the variable |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
135 ;; `reftex-insert-label-flags'. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
136 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
137 ;; * Referencing Labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
138 ;; To make a reference, type `C-c )' (`reftex-reference'). This |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
139 ;; shows an outline of the document with all labels of a certain |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
140 ;; type (figure, equation,...) and some label context. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
141 ;; Selecting a label inserts a `\ref{LABEL}' macro into the |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
142 ;; original buffer. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
143 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
144 ;; 3. Citations |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
145 ;; Typing `C-c [' (`reftex-citation') will let you specify a regular |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
146 ;; expression to search in current BibTeX database files (as |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
147 ;; specified in the `\bibliography' command) and pull out a list of |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
148 ;; matches for you to choose from. The list is _formatted_ and |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
149 ;; sorted. The selected article is referenced as `\cite{KEY}' (see |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
150 ;; the variable `reftex-cite-format' if you want to insert different |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
151 ;; macros). |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
152 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
153 ;; 4. Index Support |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
154 ;; RefTeX helps to enter index entries. It also compiles all entries |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
155 ;; into an alphabetically sorted `*Index*' buffer which you can use |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
156 ;; to check and edit the entries. RefTeX knows about the standard |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
157 ;; index macros and can be configured to recognize any additional |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
158 ;; macros you have defined (`reftex-index-macros'). Multiple indices |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
159 ;; are supported. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
160 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
161 ;; * Creating Index Entries |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
162 ;; To index the current selection or the word at point, type |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
163 ;; `C-c /' (`reftex-index-selection-or-word'). The default macro |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
164 ;; `reftex-index-default-macro' will be used. For a more |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
165 ;; complex entry type `C-c <' (`reftex-index'), select any of |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
166 ;; the index macros and enter the arguments with completion. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
167 ;; |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
168 ;; * The Index Phrases File (Delayed Indexing) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
169 ;; Type `C-c \' (`reftex-index-phrase-selection-or-word') to add |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
170 ;; the current word or selection to a special _index phrase |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
171 ;; file_. RefTeX can later search the document for occurrences |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
172 ;; of these phrases and let you interactively index the matches. |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
173 ;; |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
174 ;; * Displaying and Editing the Index |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
175 ;; To display the compiled index in a special buffer, type `C-c |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
176 ;; >' (`reftex-display-index'). From that buffer you can check |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
177 ;; and edit all entries. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
178 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
179 ;; 5. Viewing Cross-References |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
180 ;; When point is on the KEY argument of a cross-referencing macro |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
181 ;; (`\label', `\ref', `\cite', `\bibitem', `\index', and variations) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
182 ;; or inside a BibTeX database entry, you can press `C-c &' |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
183 ;; (`reftex-view-crossref') to display corresponding locations in the |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
184 ;; document and associated BibTeX database files. |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
185 ;; When the enclosing macro is `\cite' or `\ref' and no other message |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
186 ;; occupies the echo area, information about the citation or label |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
187 ;; will automatically be displayed in the echo area. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
188 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
189 ;; 6. Multifile Documents |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
190 ;; Multifile Documents are fully supported. The included files must |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
191 ;; have a file variable `TeX-master' or `tex-main-file' pointing to |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
192 ;; the master file. RefTeX provides cross-referencing information |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
193 ;; from all parts of the document, and across document borders |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
194 ;; (`xr.sty'). |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
195 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
196 ;; 7. Document Parsing |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
197 ;; RefTeX needs to parse the document in order to find labels and |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
198 ;; other information. It does it automatically once and updates its |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
199 ;; list internally when `reftex-label' and `reftex-index' are used. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
200 ;; To enforce reparsing, call any of the commands described above |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
201 ;; with a raw `C-u' prefix, or press the `r' key in the label |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
202 ;; selection buffer, the table of contents buffer, or the index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
203 ;; buffer. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
204 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
205 ;; 8. AUCTeX |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
206 ;; If your major LaTeX mode is AUCTeX, RefTeX can cooperate with it |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
207 ;; (see variable `reftex-plug-into-AUCTeX'). AUCTeX contains style |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
208 ;; files which trigger appropriate settings in RefTeX, so that for |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
209 ;; many of the popular LaTeX packages no additional customizations |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
210 ;; will be necessary. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
211 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
212 ;; 9. Useful Settings |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
213 ;; To make RefTeX faster for large documents, try these: |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
214 ;; (setq reftex-enable-partial-scans t) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
215 ;; (setq reftex-save-parse-info t) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
216 ;; (setq reftex-use-multiple-selection-buffers t) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
217 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
218 ;; To integrate with AUCTeX, use |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
219 ;; (setq reftex-plug-into-AUCTeX t) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
220 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
221 ;; To make your own LaTeX macro definitions known to RefTeX, |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
222 ;; customize the variables |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
223 ;; `reftex-label-alist' (for label macros/environments) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
224 ;; `reftex-section-levels' (for sectioning commands) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
225 ;; `reftex-cite-format' (for `\cite'-like macros) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
226 ;; `reftex-index-macros' (for `\index'-like macros) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
227 ;; `reftex-index-default-macro' (to set the default macro) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
228 ;; If you have a large number of macros defined, you may want to write |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
229 ;; an AUCTeX style file to support them with both AUCTeX and RefTeX. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
230 ;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
231 ;; 10. Where Next? |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
232 ;; Go ahead and use RefTeX. Use its menus until you have picked up |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
233 ;; the key bindings. For an overview of what you can do in each of |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
234 ;; the different special buffers, press `?'. Read the manual if you |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
235 ;; get stuck, of if you are curious what else might be available. |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
236 ;; The first part of the manual explains in a tutorial way how to use |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
237 ;; and customize RefTeX. The second part is a command and variable |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
238 ;; reference. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
239 ;; |
18050 | 240 ;;--------------------------------------------------------------------------- |
241 ;; | |
242 ;; AUTHOR | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
243 ;; ====== |
18050 | 244 ;; |
245 ;; Carsten Dominik <dominik@strw.LeidenUniv.nl> | |
246 ;; | |
247 ;; with contributions from Stephen Eglen | |
248 ;; | |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
249 ;; RefTeX is bundled with Emacs and available as a plug-in package for |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
250 ;; XEmacs 21.x. If you need to install it yourself, you can find a |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
251 ;; distribution at |
18050 | 252 ;; |
253 ;; http://www.strw.leidenuniv.nl/~dominik/Tools/ | |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
254 ;; |
18050 | 255 ;; THANKS TO: |
256 ;; --------- | |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
257 ;; Thanks to the people on the Net who have used RefTeX and helped |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
258 ;; developing it with their reports. In particular thanks to |
18050 | 259 ;; |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
260 ;; Fran Burstall, Alastair Burt, Soren Dayton, Stephen Eglen, |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
261 ;; Karl Eichwalder, Peter Galbraith, Dieter Kraft, Kai Grossjohann, |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
262 ;; Frank Harrell, Adrian Lanz, Rory Molinari, Stefan Monnier, |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
263 ;; Laurent Mugnier, Sudeep Kumar Palat, Daniel Polani, Robin Socha, |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
264 ;; Richard Stanton, Allan Strand, Jan Vroonhof, Christoph Wedler, |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
265 ;; Alan Williams. |
18050 | 266 ;; |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
267 ;; Finally thanks to Uwe Bolick who first got me (some years ago) into |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
268 ;; supporting LaTeX labels and references with an editor (which was |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
269 ;; MicroEmacs at the time). |
18219
aaeaae005e98
Updated documentation at several points in the file.
Richard M. Stallman <rms@gnu.org>
parents:
18123
diff
changeset
|
270 ;; |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
271 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
272 ;; |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
273 ;;;;;; |
18050 | 274 |
275 ;;; Code: | |
276 | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
277 (eval-when-compile (require 'cl)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
278 |
18050 | 279 ;; Stuff that needs to be there when we use defcustom |
280 (require 'custom) | |
281 | |
282 (defvar reftex-tables-dirty t | |
283 "Flag showing if tables need to be re-computed.") | |
284 | |
285 (eval-and-compile | |
286 (defun reftex-set-dirty (symbol value) | |
287 (setq reftex-tables-dirty t) | |
288 (set symbol value))) | |
289 | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
290 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
291 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
292 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
293 ;;; Configuration variables |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
294 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
295 (require 'reftex-vars) |
21114
3e8ab19bdccb
1998-03-08 Carsten Dominik <cd@gnu.org>
Carsten Dominik <dominik@science.uva.nl>
parents:
21075
diff
changeset
|
296 |
18050 | 297 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
298 ;;; ========================================================================= |
18050 | 299 ;;; |
300 ;;; Define the formal stuff for a minor mode named RefTeX. | |
301 ;;; | |
302 | |
37998
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
303 (defconst reftex-version "RefTeX version 4.16" |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
304 "Version string for RefTeX.") |
20177
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
305 |
18050 | 306 (defvar reftex-mode nil |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
307 "Determines if RefTeX mode is active.") |
18050 | 308 (make-variable-buffer-local 'reftex-mode) |
309 | |
310 (defvar reftex-mode-map (make-sparse-keymap) | |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
311 "Keymap for RefTeX mode.") |
18050 | 312 |
313 (defvar reftex-mode-menu nil) | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
314 (defvar reftex-syntax-table nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
315 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
316 (defvar reftex-auto-view-crossref-timer nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
317 "The timer used for auto-view-crossref.") |
18050 | 318 |
319 ;;;###autoload | |
320 (defun turn-on-reftex () | |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
321 "Turn on RefTeX mode." |
18050 | 322 (reftex-mode t)) |
323 | |
324 ;;;###autoload | |
325 (defun reftex-mode (&optional arg) | |
18123 | 326 "Minor mode with distinct support for \\label, \\ref and \\cite in LaTeX. |
18050 | 327 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
328 \\<reftex-mode-map>A Table of Contents of the entire (multifile) document with browsing |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
329 capabilities is available with `\\[reftex-toc]'. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
330 |
18050 | 331 Labels can be created with `\\[reftex-label]' and referenced with `\\[reftex-reference]'. |
332 When referencing, you get a menu with all labels of a given type and | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
333 context of the label definition. The selected label is inserted as a |
18123 | 334 \\ref macro. |
18050 | 335 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
336 Citations can be made with `\\[reftex-citation]' which will use a regular expression |
18050 | 337 to pull out a *formatted* list of articles from your BibTeX |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
338 database. The selected citation is inserted as a \\cite macro. |
18050 | 339 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
340 Index entries can be made with `\\[reftex-index-selection-or-word]' which indexes the word at point |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
341 or the current selection. More general index entries are created with |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
342 `\\[reftex-index]'. `\\[reftex-display-index]' displays the compiled index. |
18050 | 343 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
344 Most command have help available on the fly. This help is accessed by |
18050 | 345 pressing `?' to any prompt mentioning this feature. |
346 | |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
347 Extensive documentation about RefTeX is available in Info format. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
348 You can view this information with `\\[reftex-info]'. |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
349 |
18050 | 350 \\{reftex-mode-map} |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
351 Under X, these and other functions will also be available as `Ref' menu |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
352 on the menu bar. |
18050 | 353 |
354 ------------------------------------------------------------------------------" | |
355 | |
356 (interactive "P") | |
357 (setq reftex-mode (not (or (and (null arg) reftex-mode) | |
358 (<= (prefix-numeric-value arg) 0)))) | |
359 | |
360 (if reftex-mode | |
361 (progn | |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
362 ;; Mode was turned on |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
363 (easy-menu-add reftex-mode-menu) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
364 (and reftex-plug-into-AUCTeX |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
365 (reftex-plug-into-AUCTeX)) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
366 (unless (get 'reftex-auto-view-crossref 'initialized) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
367 (and reftex-auto-view-crossref |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
368 (reftex-toggle-auto-view-crossref)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
369 (put 'reftex-auto-view-crossref 'initialized t)) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
370 (unless reftex-syntax-table |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
371 (setq reftex-syntax-table (copy-syntax-table (syntax-table))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
372 (modify-syntax-entry ?\( "." reftex-syntax-table) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
373 (modify-syntax-entry ?\) "." reftex-syntax-table)) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
374 (run-hooks 'reftex-mode-hook)) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
375 ;; Mode was turned off |
18050 | 376 (easy-menu-remove reftex-mode-menu))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
377 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
378 (if (fboundp 'add-minor-mode) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
379 ;; Use it so that we get the extras |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
380 (progn |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
381 (put 'reftex-mode :included '(memq major-mode '(latex-mode tex-mode))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
382 (put 'reftex-mode :menu-tag "RefTeX Mode") |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
383 (add-minor-mode 'reftex-mode " Ref" reftex-mode-map)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
384 ;; The standard way |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
385 (unless (assoc 'reftex-mode minor-mode-alist) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
386 (push '(reftex-mode " Ref") minor-mode-alist)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
387 (unless (assoc 'reftex-mode minor-mode-map-alist) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
388 (push (cons 'reftex-mode reftex-mode-map) minor-mode-map-alist))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
389 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
390 (defvar reftex-docstruct-symbol) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
391 (defun reftex-kill-buffer-hook () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
392 "Save RefTeX's parse file for this buffer if the information has changed." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
393 ;; Save the parsing information if it was modified. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
394 ;; This function should be installed in `kill-buffer-hook'. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
395 ;; We are careful to make sure nothing goes wring in this function. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
396 (when (and (boundp 'reftex-mode) reftex-mode |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
397 (boundp 'reftex-save-parse-info) reftex-save-parse-info |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
398 (boundp 'reftex-docstruct-symbol) reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
399 (symbol-value reftex-docstruct-symbol) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
400 (get reftex-docstruct-symbol 'modified)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
401 ;; Write the file. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
402 (condition-case nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
403 (reftex-access-parse-file 'write) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
404 (error nil)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
405 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
406 (defun reftex-kill-emacs-hook () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
407 "Call `reftex-kill-buffer-hook' on all buffers." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
408 ;; This function should be installed in `kill-emacs-hook'. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
409 (save-excursion |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
410 (mapcar (lambda (buf) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
411 (set-buffer buf) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
412 (reftex-kill-buffer-hook)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
413 (buffer-list)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
414 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
415 ;;; ========================================================================= |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
416 ;;; |
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
417 ;;; Silence warnings about variables in other packages. |
36469 | 418 (eval-when-compile |
419 (defvar TeX-master) | |
420 (defvar LaTeX-section-hook) | |
421 (defvar LaTeX-label-function) | |
422 (defvar tex-main-file) | |
423 (defvar outline-minor-mode) | |
424 (defvar font-lock-mode) | |
425 (defvar font-lock-fontify-region-function) | |
426 (defvar font-lock-syntactic-keywords)) | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
427 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
428 ;;; ========================================================================= |
18050 | 429 ;;; |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
430 ;;; Multibuffer Variables |
18050 | 431 ;;; |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
432 ;;; Technical notes: These work as follows: We keep just one list |
18050 | 433 ;;; of labels for each master file - this can save a lot of memory. |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
434 ;;; `reftex-master-index-list' is an alist which connects the true file name |
18050 | 435 ;;; of each master file with the symbols holding the information on that |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
436 ;;; document. Each buffer has local variables which point to these symbols. |
18050 | 437 |
438 ;; List of variables which handle the multifile stuff. | |
439 ;; This list is used to tie, untie, and reset these symbols. | |
440 (defconst reftex-multifile-symbols | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
441 '(reftex-docstruct-symbol)) |
18050 | 442 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
443 ;; Alist connecting master file names with the corresponding lisp symbols. |
18050 | 444 (defvar reftex-master-index-list nil) |
445 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
446 ;; Last index used for a master file. |
18050 | 447 (defvar reftex-multifile-index 0) |
448 | |
449 ;; Variable holding the symbol with the label list of the document. | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
450 (defvar reftex-docstruct-symbol nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
451 (make-variable-buffer-local 'reftex-docstruct-symbol) |
18050 | 452 |
453 (defun reftex-next-multifile-index () | |
454 ;; Return the next free index for multifile symbols. | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
455 (incf reftex-multifile-index)) |
18050 | 456 |
457 (defun reftex-tie-multifile-symbols () | |
458 ;; Tie the buffer-local symbols to globals connected with the master file. | |
459 ;; If the symbols for the current master file do not exist, they are created. | |
460 | |
461 (let* ((master (file-truename (reftex-TeX-master-file))) | |
462 (index (assoc master reftex-master-index-list)) | |
463 (symlist reftex-multifile-symbols) | |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
464 symbol symname newflag) |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
465 ;; Find the correct index. |
18050 | 466 (if index |
467 ;; symbols do exist | |
468 (setq index (cdr index)) | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
469 ;; Get a new index and add info to the alist. |
18050 | 470 (setq index (reftex-next-multifile-index) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
471 newflag t) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
472 (push (cons master index) reftex-master-index-list)) |
18050 | 473 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
474 ;; Get/create symbols and tie them. |
18050 | 475 (while symlist |
476 (setq symbol (car symlist) | |
477 symlist (cdr symlist) | |
478 symname (symbol-name symbol)) | |
479 (set symbol (intern (concat symname "-" (int-to-string index)))) | |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
480 (put (symbol-value symbol) :master-index index) |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
481 ;; Initialize if new symbols. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
482 (when newflag |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
483 (set (symbol-value symbol) nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
484 (put (symbol-value symbol) 'reftex-index-macros-style '(default)))) |
18050 | 485 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
486 ;; Return t if the symbols did already exist, nil when we've made them. |
18050 | 487 (not newflag))) |
488 | |
489 (defun reftex-untie-multifile-symbols () | |
490 ;; Remove ties from multifile symbols, so that next use makes new ones. | |
491 (let ((symlist reftex-multifile-symbols) | |
492 (symbol nil)) | |
493 (while symlist | |
494 (setq symbol (car symlist) | |
495 symlist (cdr symlist)) | |
496 (set symbol nil)))) | |
497 | |
498 (defun reftex-TeX-master-file () | |
499 ;; Return the name of the master file associated with the current buffer. | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
500 ;; When AUCTeX is loaded, we will use it's more sophisticated method. |
18219
aaeaae005e98
Updated documentation at several points in the file.
Richard M. Stallman <rms@gnu.org>
parents:
18123
diff
changeset
|
501 ;; We also support the default TeX and LaTeX modes by checking for a |
aaeaae005e98
Updated documentation at several points in the file.
Richard M. Stallman <rms@gnu.org>
parents:
18123
diff
changeset
|
502 ;; variable tex-main-file. |
18050 | 503 (let |
504 ((master | |
505 (cond | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
506 ((fboundp 'TeX-master-file) ; AUCTeX is loaded. Use its mechanism. |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
507 (condition-case nil |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
508 (TeX-master-file t) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
509 (error (buffer-file-name)))) |
34402
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
510 ((fboundp 'tex-main-file) (tex-main-file)) ; Emacs LaTeX mode |
18050 | 511 ((boundp 'TeX-master) ; The variable is defined - lets use it. |
512 (cond | |
513 ((eq TeX-master t) | |
514 (buffer-file-name)) | |
515 ((eq TeX-master 'shared) | |
516 (setq TeX-master (read-file-name "Master file: " | |
517 nil nil t nil))) | |
518 (TeX-master) | |
519 (t | |
520 (setq TeX-master (read-file-name "Master file: " | |
521 nil nil t nil))))) | |
522 ((boundp 'tex-main-file) | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
523 ;; This is the variable from the default TeX modes. |
18050 | 524 (cond |
525 ((stringp tex-main-file) | |
526 ;; ok, this must be it | |
527 tex-main-file) | |
528 (t | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
529 ;; In this case, the buffer is its own master. |
18050 | 530 (buffer-file-name)))) |
531 (t | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
532 ;; Know nothing about master file. Assume this is a master file. |
18050 | 533 (buffer-file-name))))) |
534 (cond | |
535 ((null master) | |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
536 (error "Need a filename for this buffer, please save it first")) |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
537 ((or (file-exists-p (concat master ".tex")) |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
538 (reftex-get-buffer-visiting (concat master ".tex"))) |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
539 ;; Ahh, an extra .tex was missing... |
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
540 (setq master (concat master ".tex"))) |
18050 | 541 ((or (file-exists-p master) |
542 (reftex-get-buffer-visiting master)) | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
543 ;; We either see the file, or have a buffer on it. OK. |
18050 | 544 ) |
545 (t | |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
546 ;; Use buffer file name. |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
547 (buffer-file-name))) |
18050 | 548 (expand-file-name master))) |
549 | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
550 (defun reftex-is-multi () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
551 ;; Tell if this is a multifile document. When not sure, say yes. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
552 (let ((entry (assq 'is-multi (symbol-value reftex-docstruct-symbol)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
553 (if entry |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
554 (nth 1 entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
555 t))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
556 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
557 (defun reftex-set-cite-format (value) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
558 "Set the document-local value of `reftex-cite-format'. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
559 When such a value exists, it overwrites the setting given with |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
560 `reftex-cite-format'. See the documentation of `reftex-cite-format' |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
561 for possible values. This function should be used from AUCTeX style files." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
562 (unless reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
563 (reftex-tie-multifile-symbols)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
564 (when (and reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
565 (symbolp reftex-docstruct-symbol)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
566 (put reftex-docstruct-symbol 'reftex-cite-format value))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
567 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
568 (defun reftex-get-cite-format () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
569 ;; Return the current citation format. Either the document-local value in |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
570 ;; reftex-cite-format-symbol, or the global value in reftex-cite-format. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
571 (if (and reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
572 (symbolp reftex-docstruct-symbol) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
573 (get reftex-docstruct-symbol 'reftex-cite-format)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
574 (get reftex-docstruct-symbol 'reftex-cite-format) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
575 reftex-cite-format)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
576 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
577 (defun reftex-add-index-macros (entry-list) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
578 "Add index macro descriptions to `reftex-index-macros-style'. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
579 The format of ENTRY-LIST is exactly like `reftex-index-macros'. See there |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
580 for details. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
581 This function makes it possible to support RefTeX from AUCTeX style files. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
582 The entries in ENTRY-LIST will be processed after the user settings in |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
583 `reftex-index-entries', and before the defaults. Any changes made to |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
584 `reftex-label-alist-style' will raise a flag to the effect that |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
585 the label information is recompiled on next use." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
586 (unless reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
587 (reftex-tie-multifile-symbols)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
588 (when (and reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
589 (symbolp reftex-docstruct-symbol)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
590 (let ((list (get reftex-docstruct-symbol 'reftex-index-macros-style)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
591 entry changed) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
592 (while entry-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
593 (setq entry (pop entry-list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
594 ;; When it is a symbol, remove all other symbols |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
595 (and (symbolp entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
596 (not (memq entry list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
597 (setq list (reftex-remove-symbols-from-list list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
598 ;; Add to list unless already member |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
599 (unless (member entry list) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
600 (setq reftex-tables-dirty t |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
601 changed t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
602 (push entry list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
603 (when changed |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
604 (put reftex-docstruct-symbol 'reftex-index-macros-style list))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
605 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
606 ;;; ========================================================================= |
18050 | 607 ;;; |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
608 ;;; Functions to compile the tables, reset the mode etc. |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
609 |
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
610 ;; The following constants are derived from `reftex-label-alist'. |
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
611 |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
612 ;; Prompt used for label type queries directed to the user. |
18050 | 613 (defconst reftex-type-query-prompt nil) |
614 | |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
615 ;; Help string for label type queries. |
18050 | 616 (defconst reftex-type-query-help nil) |
617 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
618 ;; Alist relating label type to reference format. |
18050 | 619 (defconst reftex-typekey-to-format-alist nil) |
620 | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
621 ;; Alist relating label type to label prefix. |
18050 | 622 (defconst reftex-typekey-to-prefix-alist nil) |
623 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
624 ;; Alist relating environments or macros to label type and context regexp. |
18050 | 625 (defconst reftex-env-or-mac-alist nil) |
626 | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
627 ;; List of special environment parser functions |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
628 (defconst reftex-special-env-parsers nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
629 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
630 ;; List of macros carrying a label. |
18050 | 631 (defconst reftex-label-mac-list nil) |
632 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
633 ;; List of environments carrying a label. |
18050 | 634 (defconst reftex-label-env-list nil) |
635 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
636 ;; List of all typekey letters in use. |
18050 | 637 (defconst reftex-typekey-list nil) |
638 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
639 ;; Alist relating magic words to a label type. |
18050 | 640 (defconst reftex-words-to-typekey-alist nil) |
641 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
642 ;; The last list-of-labels entry used in a reference. |
18050 | 643 (defvar reftex-last-used-reference (list nil nil nil nil)) |
644 | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
645 ;; Alist relating index macros to other info. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
646 (defconst reftex-key-to-index-macro-alist nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
647 ;; Prompt for index macro queries |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
648 (defconst reftex-query-index-macro-prompt nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
649 ;; Help string for index macro queries |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
650 (defconst reftex-query-index-macro-help nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
651 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
652 ;; The message when follow-mode is suspended |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
653 (defconst reftex-no-follow-message |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
654 "No follow-mode into unvisited file. Press SPC to visit it.") |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
655 (defconst reftex-no-info-message |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
656 "%s: info not available, use `\\[reftex-view-crossref]' to get it.") |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
657 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
658 ;; Global variables used for communication between functions. |
18050 | 659 (defvar reftex-default-context-position nil) |
660 (defvar reftex-location-start nil) | |
661 (defvar reftex-call-back-to-this-buffer nil) | |
20979
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
662 (defvar reftex-select-return-marker (make-marker)) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
663 (defvar reftex-active-toc nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
664 (defvar reftex-tex-path nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
665 (defvar reftex-bib-path nil) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
666 (defvar reftex-select-marked nil) |
20979
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
667 (defvar reftex-last-follow-point nil) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
668 (defvar reftex-latex-syntax-table nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
669 (defvar reftex-prefix nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
670 (defvar reftex-section-levels-all nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
671 (defvar reftex-buffers-with-changed-invisibility nil) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
672 (defvar reftex-callback-fwd t) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
673 (defvar reftex-last-toc-master nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
674 "Stores the name of the tex file that `reftex-toc' was last run on.") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
675 (defvar reftex-auto-view-crossref-timer nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
676 "The timer used for auto-view-crossref.") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
677 ;; Marker for return point from recursive edit |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
678 (defvar reftex-recursive-edit-marker (make-marker)) |
18050 | 679 |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
680 ;; List of buffers created temporarily for lookup, which should be killed. |
18050 | 681 (defvar reftex-buffers-to-kill nil) |
682 | |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
683 ;; Regexp to find anything. |
19660
fa3d4e7a76d9
(reftex-customize): Added call to customize browse.
Richard M. Stallman <rms@gnu.org>
parents:
18321
diff
changeset
|
684 (defvar reftex-section-regexp nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
685 (defvar reftex-section-or-include-regexp nil) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
686 (defvar reftex-index-macro-regexp nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
687 (defvar reftex-index-level-re nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
688 (defvar reftex-index-key-end-re nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
689 (defvar reftex-find-index-entry-regexp-format nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
690 (defvar reftex-everything-regexp nil) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
691 (defvar reftex-everything-regexp-no-index nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
692 (defvar reftex-index-re nil) |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
693 (defvar reftex-find-citation-regexp-format |
29775
31536c6cf2e3
* textmodes/reftex.el (reftex-find-citation-regexp-format):
Carsten Dominik <dominik@science.uva.nl>
parents:
27601
diff
changeset
|
694 "\\\\\\([a-zA-Z]*cite[*a-zA-Z]*\\*?\\|bibentry\\)\\(\\[[^]]*\\]\\|{[^}]*}\\)*{\\([^}]*,\\)?\\(%s\\)[},]") |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
695 (defvar reftex-find-reference-format |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
696 "\\\\\\(ref[a-zA-Z]*\\|[a-zA-Z]*ref\\(range\\)?\\)\\*?\\(\\[[^]]*\\]\\|{[^}]*}\\)*{\\(%s\\)}") |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
697 (defvar reftex-macros-with-labels nil) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
698 (defvar reftex-macros-with-index nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
699 (defvar reftex-index-macro-alist nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
700 (defvar reftex-find-label-regexp-format nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
701 (defvar reftex-find-label-regexp-format2 nil) |
18050 | 702 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
703 (defvar reftex-memory nil |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
704 "Memorizes old variable values to indicate changes in these variables.") |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
705 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
706 ;; A list of all variables in the cache. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
707 ;; The cache is used to save the compiled versions of some variables. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
708 (defconst reftex-cache-variables |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
709 '(reftex-memory ;; This MUST ALWAYS be the first! |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
710 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
711 ;; Outline |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
712 reftex-section-levels-all |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
713 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
714 ;; Labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
715 reftex-env-or-mac-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
716 reftex-special-env-parsers |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
717 reftex-macros-with-labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
718 reftex-label-mac-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
719 reftex-label-env-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
720 reftex-typekey-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
721 reftex-typekey-to-format-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
722 reftex-typekey-to-prefix-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
723 reftex-words-to-typekey-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
724 reftex-type-query-prompt |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
725 reftex-type-query-help |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
726 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
727 ;; Index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
728 reftex-index-macro-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
729 reftex-macros-with-index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
730 reftex-query-index-macro-prompt |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
731 reftex-query-index-macro-help |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
732 reftex-key-to-index-macro-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
733 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
734 ;; Regular expressions |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
735 reftex-section-regexp |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
736 reftex-section-or-include-regexp |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
737 reftex-index-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
738 reftex-everything-regexp |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
739 reftex-everything-regexp-no-index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
740 reftex-find-label-regexp-format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
741 reftex-find-label-regexp-format2 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
742 reftex-find-index-entry-regexp-format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
743 )) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
744 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
745 (defun reftex-ensure-compiled-variables () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
746 ;; Recompile the label alist when necessary |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
747 (let* ((mem reftex-memory) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
748 (cache (get reftex-docstruct-symbol 'reftex-cache)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
749 (cmem (car cache)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
750 (alist reftex-label-alist) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
751 (levels (get reftex-docstruct-symbol 'reftex-section-levels)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
752 (style (get reftex-docstruct-symbol 'reftex-label-alist-style)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
753 (default reftex-default-label-alist-entries) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
754 (index reftex-index-macros) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
755 (istyle (get reftex-docstruct-symbol 'reftex-index-macros-style))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
756 (cond |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
757 (reftex-tables-dirty (reftex-compile-variables)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
758 ((and (eq alist (nth 0 mem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
759 (eq levels (nth 1 mem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
760 (eq style (nth 2 mem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
761 (eq default (nth 3 mem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
762 (eq index (nth 4 mem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
763 (eq istyle (nth 5 mem)))) ;; everything is OK |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
764 ((and (eq alist (nth 0 cmem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
765 (eq levels (nth 1 cmem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
766 (eq style (nth 2 cmem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
767 (eq default (nth 2 cmem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
768 (eq index (nth 4 cmem)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
769 (eq istyle (nth 5 cmem))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
770 ;; restore the cache |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
771 (message "Restoring cache") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
772 (mapcar (lambda (sym) (set sym (pop cache))) reftex-cache-variables)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
773 (t (reftex-compile-variables))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
774 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
775 (defun reftex-reset-mode () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
776 "Reset RefTeX Mode. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
777 This will re-compile the configuration information and remove all |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
778 current scanning information and the parse file to enforce a rescan |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
779 on next use." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
780 (interactive) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
781 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
782 ;; Reset the file search path variables |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
783 (loop for prop in '(status master-dir recursive-path rec-type) do |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
784 (put 'reftex-tex-path prop nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
785 (put 'reftex-bib-path prop nil)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
786 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
787 ;; Kill temporary buffers associated with RefTeX - just in case they |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
788 ;; were not cleaned up properly |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
789 (save-excursion |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
790 (let ((buffer-list '("*RefTeX Help*" "*RefTeX Select*" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
791 "*Duplicate Labels*" "*toc*" " *RefTeX-scratch*")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
792 buf) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
793 (while (setq buf (pop buffer-list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
794 (if (get-buffer buf) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
795 (kill-buffer buf)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
796 (reftex-erase-all-selection-and-index-buffers)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
797 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
798 ;; Make sure the current document will be rescanned soon. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
799 (reftex-reset-scanning-information) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
800 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
801 ;; Remove any parse info file |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
802 (reftex-access-parse-file 'kill) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
803 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
804 ;; Plug functions into AUCTeX if the user option says so. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
805 (and reftex-plug-into-AUCTeX |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
806 (reftex-plug-into-AUCTeX)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
807 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
808 (reftex-compile-variables)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
809 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
810 (defun reftex-reset-scanning-information () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
811 "Reset the symbols containing information from buffer scanning. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
812 This enforces rescanning the buffer on next use." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
813 (if (string= reftex-last-toc-master (reftex-TeX-master-file)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
814 (reftex-erase-buffer "*toc*")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
815 (let ((symlist reftex-multifile-symbols) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
816 symbol) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
817 (while symlist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
818 (setq symbol (car symlist) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
819 symlist (cdr symlist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
820 (if (and (symbolp (symbol-value symbol)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
821 (not (null (symbol-value symbol)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
822 (set (symbol-value symbol) nil))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
823 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
824 (defun reftex-erase-all-selection-and-index-buffers () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
825 ;; Remove all selection buffers associated with current document. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
826 (mapcar |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
827 (lambda (type) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
828 (reftex-erase-buffer (reftex-make-selection-buffer-name type))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
829 reftex-typekey-list) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
830 ;; Kill all index buffers |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
831 (mapcar |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
832 (lambda (tag) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
833 (reftex-kill-buffer (reftex-make-index-buffer-name tag))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
834 (cdr (assoc 'index-tags (symbol-value reftex-docstruct-symbol))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
835 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
836 (defun reftex-compile-variables () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
837 ;; Compile the information in reftex-label-alist & Co. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
838 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
839 (message "Compiling label environment definitions...") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
840 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
841 ;; Update AUCTeX style information |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
842 (when (and (featurep 'tex-site) (fboundp 'TeX-update-style)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
843 (condition-case nil (TeX-update-style) (error nil))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
844 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
845 ;; Record that we have done this, and what we have used. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
846 (setq reftex-tables-dirty nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
847 (setq reftex-memory |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
848 (list reftex-label-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
849 (get reftex-docstruct-symbol 'reftex-section-levels) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
850 (get reftex-docstruct-symbol 'reftex-label-alist-style) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
851 reftex-default-label-alist-entries |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
852 reftex-index-macros |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
853 (get reftex-docstruct-symbol 'reftex-index-macros-style))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
854 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
855 ;; Compile information in reftex-label-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
856 (let ((all (reftex-uniquify-by-car |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
857 (reftex-splice-symbols-into-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
858 (append reftex-label-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
859 (get reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
860 'reftex-label-alist-style) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
861 reftex-default-label-alist-entries) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
862 reftex-label-alist-builtin) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
863 '(nil))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
864 (all-index (reftex-uniquify-by-car |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
865 (reftex-splice-symbols-into-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
866 (append reftex-index-macros |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
867 (get reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
868 'reftex-index-macros-style) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
869 '(default)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
870 reftex-index-macros-builtin))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
871 entry env-or-mac typekeychar typekey prefix context word |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
872 fmt reffmt labelfmt wordlist qh-list macros-with-labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
873 nargs nlabel opt-args cell sum i |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
874 macro verify repeat nindex tag key toc-level toc-levels) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
875 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
876 (setq reftex-words-to-typekey-alist nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
877 reftex-typekey-list nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
878 reftex-typekey-to-format-alist nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
879 reftex-typekey-to-prefix-alist nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
880 reftex-env-or-mac-alist nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
881 reftex-label-env-list nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
882 reftex-label-mac-list nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
883 (while all |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
884 (catch 'next-entry |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
885 (setq entry (car all) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
886 env-or-mac (car entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
887 entry (cdr entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
888 all (cdr all)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
889 (if (null env-or-mac) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
890 (setq env-or-mac "")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
891 (if (stringp (car entry)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
892 ;; This is before version 2.00 - convert entry to new format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
893 ;; This is just to keep old users happy |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
894 (setq entry (cons (string-to-char (car entry)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
895 (cons (concat (car entry) ":") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
896 (cdr entry))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
897 (setq typekeychar (nth 0 entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
898 typekey (if typekeychar (char-to-string typekeychar) nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
899 prefix (nth 1 entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
900 fmt (nth 2 entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
901 context (nth 3 entry) |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
902 wordlist (nth 4 entry) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
903 toc-level (nth 5 entry)) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
904 (if (stringp wordlist) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
905 ;; This is before version 2.04 - convert to new format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
906 (setq wordlist (nthcdr 4 entry))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
907 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
908 (if (and (stringp fmt) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
909 (string-match "@" fmt)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
910 ;; Special syntax for specifying a label format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
911 (setq fmt (split-string fmt "@+")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
912 (setq fmt (list "\\label{%s}" fmt))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
913 (setq labelfmt (car fmt) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
914 reffmt (nth 1 fmt)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
915 ;; Note a new typekey |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
916 (if typekey |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
917 (add-to-list 'reftex-typekey-list typekey)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
918 (if (and typekey prefix |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
919 (not (assoc typekey reftex-typekey-to-prefix-alist))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
920 (add-to-list 'reftex-typekey-to-prefix-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
921 (cons typekey prefix))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
922 ;; Check if this is a macro or environment |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
923 (cond |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
924 ((symbolp env-or-mac) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
925 ;; A special parser function |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
926 (unless (fboundp env-or-mac) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
927 (message "Warning: %s does not seem to be a valid function" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
928 env-or-mac)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
929 (setq nargs nil nlabel nil opt-args nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
930 (add-to-list 'reftex-special-env-parsers env-or-mac) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
931 (setq env-or-mac (symbol-name env-or-mac))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
932 ((string-match "\\`\\\\" env-or-mac) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
933 ;; It's a macro |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
934 (let ((result (reftex-parse-args env-or-mac))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
935 (setq env-or-mac (or (first result) env-or-mac) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
936 nargs (second result) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
937 nlabel (third result) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
938 opt-args (fourth result)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
939 (if nlabel (add-to-list 'macros-with-labels env-or-mac))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
940 (if typekey (add-to-list 'reftex-label-mac-list env-or-mac))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
941 (t |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
942 ;; It's an environment |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
943 (setq nargs nil nlabel nil opt-args nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
944 (cond ((string= env-or-mac "any")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
945 ((string= env-or-mac "")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
946 ((string= env-or-mac "section")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
947 (t |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
948 (add-to-list 'reftex-label-env-list env-or-mac) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
949 (if toc-level |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
950 (let ((string (format "begin{%s}" env-or-mac))) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
951 (or (assoc string toc-levels) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
952 (push (cons string toc-level) toc-levels)))))))) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
953 ;; Translate some special context cases |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
954 (when (assq context reftex-default-context-regexps) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
955 (setq context |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
956 (format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
957 (cdr (assq context reftex-default-context-regexps)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
958 (regexp-quote env-or-mac)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
959 ;; See if this is the first format for this typekey |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
960 (and reffmt |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
961 (not (assoc typekey reftex-typekey-to-format-alist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
962 (push (cons typekey reffmt) reftex-typekey-to-format-alist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
963 ;; See if this is the first definition for this env-or-mac |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
964 (and (not (string= env-or-mac "any")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
965 (not (string= env-or-mac "")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
966 (not (assoc env-or-mac reftex-env-or-mac-alist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
967 (push (list env-or-mac typekey context labelfmt |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
968 nargs nlabel opt-args) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
969 reftex-env-or-mac-alist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
970 ;; Are the magic words regular expressions? Quote normal words. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
971 (if (eq (car wordlist) 'regexp) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
972 (setq wordlist (cdr wordlist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
973 (setq wordlist (mapcar 'regexp-quote wordlist))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
974 ;; Remember the first association of each word. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
975 (while (stringp (setq word (pop wordlist))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
976 (or (assoc word reftex-words-to-typekey-alist) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
977 (push (cons word typekey) reftex-words-to-typekey-alist))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
978 (cond |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
979 ((string= "" env-or-mac) nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
980 ((setq cell (assoc typekey qh-list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
981 (push env-or-mac (cdr cell))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
982 (typekey |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
983 (push (list typekey env-or-mac) qh-list))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
984 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
985 (setq reftex-typekey-to-prefix-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
986 (nreverse reftex-typekey-to-prefix-alist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
987 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
988 ;; Prepare the typekey query prompt and help string. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
989 (setq qh-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
990 (sort qh-list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
991 (lambda (x1 x2) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
992 (string< (downcase (car x1)) (downcase (car x2)))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
993 (setq reftex-type-query-prompt |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
994 (concat "Label type: [" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
995 (mapconcat (lambda(x) (format "%s" (car x))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
996 qh-list "") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
997 "]")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
998 ;; In the help string, we need to wrap lines... |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
999 (setq reftex-type-query-help |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1000 (concat |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1001 "SELECT A LABEL TYPE:\n--------------------\n" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1002 (mapconcat |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1003 (lambda(x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1004 (setq sum 0) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1005 (format " [%s] %s" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1006 (car x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1007 (mapconcat (lambda(env) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1008 (setq sum (+ sum (length env))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1009 (if (< sum 60) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1010 env |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1011 (setq sum 0) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1012 (concat "\n " env))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1013 (cdr x) " "))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1014 qh-list "\n"))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1015 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1016 ;; Convert magic words to regular expressions. We make regular expressions |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1017 ;; which allow for some chars from the ref format to be in the buffer. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1018 ;; These characters will be seen and removed. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1019 (setq reftex-words-to-typekey-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1020 (mapcar |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1021 (lambda (x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1022 (setq word (car x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1023 typekey (cdr x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1024 fmt (cdr (assoc typekey reftex-typekey-to-format-alist))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1025 (setq word (concat "\\W\\(" word "[ \t\n\r]*\\)\\(")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1026 (setq i 0) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1027 (while (and (< i 10) ; maximum number of format chars allowed |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1028 (< i (length fmt)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1029 (not (member (aref fmt i) '(?%)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1030 (setq word (concat word "\\|" (regexp-quote |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1031 (substring fmt 0 (1+ i))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1032 (incf i)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1033 (cons (concat word "\\)\\=") typekey)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1034 (nreverse reftex-words-to-typekey-alist))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1035 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1036 ;; Parse the index macros |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1037 (setq reftex-index-macro-alist nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1038 reftex-key-to-index-macro-alist nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1039 reftex-macros-with-index nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1040 (while all-index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1041 (setq entry (car all-index) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1042 macro (car entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1043 tag (nth 1 entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1044 key (nth 2 entry) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1045 prefix (or (nth 3 entry) "") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1046 verify (nth 4 entry) |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1047 ;; For repeat, we need to be compatible with older code |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1048 ;; This information used to be given only for the default macro, |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1049 ;; but later we required to have it for *every* index macro |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1050 repeat (cond ((> (length entry) 5) (nth 5 entry)) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1051 ((and (eq key (car reftex-index-default-macro)) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1052 (> (length reftex-index-default-macro) 2)) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1053 ;; User has old setting - respect it |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1054 (nth 2 reftex-index-default-macro)) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1055 (t t)) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1056 all-index (cdr all-index)) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1057 (let ((result (reftex-parse-args macro))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1058 (setq macro (or (first result) macro) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1059 nargs (second result) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1060 nindex (third result) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1061 opt-args (fourth result)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1062 (unless (member macro reftex-macros-with-index) |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1063 ;; 0 1 2 3 4 5 6 7 |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1064 (push (list macro tag prefix verify nargs nindex opt-args repeat) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1065 reftex-index-macro-alist) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1066 (or (assoc key reftex-key-to-index-macro-alist) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1067 (push (list key macro) reftex-key-to-index-macro-alist)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1068 (push macro reftex-macros-with-index)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1069 ;; Make the prompt and help string for index macros query |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1070 (setq reftex-key-to-index-macro-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1071 (sort reftex-key-to-index-macro-alist |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1072 (lambda (a b) (< (downcase (car a)) (downcase (car b)))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1073 (setq reftex-query-index-macro-prompt |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1074 (concat "Index macro: [" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1075 (mapconcat (lambda (x) (char-to-string (car x))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1076 reftex-key-to-index-macro-alist "") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1077 "]")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1078 (setq i 0 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1079 reftex-query-index-macro-help |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1080 (concat |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1081 "SELECT A MACRO:\n---------------\n" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1082 (mapconcat |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1083 (lambda(x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1084 (format "[%c] %-20.20s%s" (car x) (nth 1 x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1085 (if (= 0 (mod (incf i) 3)) "\n" ""))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1086 reftex-key-to-index-macro-alist ""))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1087 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1088 ;; Make the full list of section levels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1089 (setq reftex-section-levels-all |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1090 (append toc-levels |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1091 (get reftex-docstruct-symbol 'reftex-section-levels) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1092 reftex-section-levels)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1093 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1094 ;; Calculate the regular expressions |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1095 (let* ((wbol "\\(\\`\\|[\n\r]\\)[ \t]*") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1096 (label-re "\\\\label{\\([^}]*\\)}") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1097 (include-re (concat wbol "\\\\\\(include\\|input\\)[{ \t]+\\([^} \t\n\r]+\\)")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1098 (section-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1099 (concat wbol "\\\\\\(" |
27601
225cd305a20e
(reftex-compile-variables): regexp-quote the
Carsten Dominik <dominik@science.uva.nl>
parents:
27192
diff
changeset
|
1100 (mapconcat (lambda (x) (regexp-quote (car x))) |
225cd305a20e
(reftex-compile-variables): regexp-quote the
Carsten Dominik <dominik@science.uva.nl>
parents:
27192
diff
changeset
|
1101 reftex-section-levels-all "\\|") |
29775
31536c6cf2e3
* textmodes/reftex.el (reftex-find-citation-regexp-format):
Carsten Dominik <dominik@science.uva.nl>
parents:
27601
diff
changeset
|
1102 "\\)\\*?\\(\\[[^]]*\\]\\)?[[{ \t\r\n]")) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1103 (appendix-re (concat wbol "\\(\\\\appendix\\)")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1104 (macro-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1105 (if macros-with-labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1106 (concat "\\(" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1107 (mapconcat 'regexp-quote macros-with-labels "\\|") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1108 "\\)[[{]") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1109 "")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1110 (index-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1111 (concat "\\(" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1112 (mapconcat 'regexp-quote reftex-macros-with-index "\\|") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1113 "\\)[[{]")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1114 (find-index-re-format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1115 (concat "\\(" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1116 (mapconcat 'regexp-quote reftex-macros-with-index "\\|") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1117 "\\)\\([[{][^]}]*[]}]\\)*[[{]\\(%s\\)[]}]")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1118 (find-label-re-format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1119 (concat "\\(" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1120 (mapconcat 'regexp-quote (append '("\\label") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1121 macros-with-labels) "\\|") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1122 "\\)\\([[{][^]}]*[]}]\\)*[[{]\\(%s\\)[]}]")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1123 (index-level-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1124 (regexp-quote (nth 0 reftex-index-special-chars))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1125 (index-key-end-re ;; ^]- not allowed |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1126 (concat "[^" (nth 3 reftex-index-special-chars) "]" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1127 "[" (nth 1 reftex-index-special-chars) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1128 (nth 2 reftex-index-special-chars) "]")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1129 ) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1130 (setq reftex-section-regexp section-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1131 reftex-section-or-include-regexp |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1132 (concat section-re "\\|" include-re) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1133 reftex-everything-regexp |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1134 (concat label-re "\\|" section-re "\\|" include-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1135 "\\|" appendix-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1136 "\\|" index-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1137 (if macros-with-labels "\\|" "") macro-re) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1138 reftex-everything-regexp-no-index |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1139 (concat label-re "\\|" section-re "\\|" include-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1140 "\\|" appendix-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1141 "\\|" "\\(\\\\6\\\\3\\\\1\\)" ; This is unlikely to match |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1142 (if macros-with-labels "\\|" "") macro-re) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1143 reftex-index-re index-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1144 reftex-index-level-re index-level-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1145 reftex-index-key-end-re index-key-end-re |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1146 reftex-macros-with-labels macros-with-labels |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1147 reftex-find-index-entry-regexp-format find-index-re-format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1148 reftex-find-label-regexp-format find-label-re-format |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1149 reftex-find-label-regexp-format2 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1150 "\\([]} \t\n\r]\\)\\([[{]\\)\\(%s\\)[]}]") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1151 (message "Compiling label environment definitions...done"))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1152 (put reftex-docstruct-symbol 'reftex-cache |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1153 (mapcar 'symbol-value reftex-cache-variables))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1154 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1155 (defun reftex-parse-args (macro) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1156 ;; Return a list of macro name, nargs, arg-nr which is label and a list of |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1157 ;; optional argument indices. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1158 (if (string-match "[[{]\\*?[]}]" macro) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1159 (progn |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1160 (let ((must-match (substring macro 0 (match-beginning 0))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1161 (args (substring macro (match-beginning 0))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1162 opt-list nlabel (cnt 0)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1163 (while (string-match "\\`[[{]\\(\\*\\)?[]}]" args) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1164 (incf cnt) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1165 (when (eq ?\[ (string-to-char args)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1166 (push cnt opt-list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1167 (when (and (match-end 1) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1168 (not nlabel)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1169 (setq nlabel cnt)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1170 (setq args (substring args (match-end 0)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1171 (list must-match cnt nlabel opt-list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1172 nil)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1173 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1174 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1175 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1176 ;;; Accessing the parse information |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1177 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1178 (defun reftex-access-scan-info (&optional rescan file) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1179 "Ensure access to the scanning info for the current file." |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1180 ;; When the multifile symbols are not yet tied, |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1181 ;; tie them. When they are empty or RESCAN is non-nil, scan the document. |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1182 ;; But, when RESCAN is -1, don't rescan even if docstruct is empty. |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1183 ;; When FILE is non-nil, parse only from that file. |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1184 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1185 ;; Make sure we have the symbols tied |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1186 (if (eq reftex-docstruct-symbol nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1187 ;; Symbols are not yet tied: Tie them. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1188 (reftex-tie-multifile-symbols)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1189 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1190 (reftex-ensure-compiled-variables) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1191 |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1192 (when (or (null (symbol-value reftex-docstruct-symbol)) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1193 (member rescan '(t 1 (4) (16)))) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1194 ;; The docstruct will change: Remove selection buffers. |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1195 (save-excursion |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1196 (reftex-erase-buffer "*toc*") |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1197 (reftex-erase-all-selection-and-index-buffers))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1198 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1199 (if (and (null (symbol-value reftex-docstruct-symbol)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1200 (not (member rescan '(t 1 (4) (16)))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1201 reftex-save-parse-info) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1202 ;; Try to read the stuff from a file |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1203 (reftex-access-parse-file 'read)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1204 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1205 (cond |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1206 ((equal rescan -1)) ;; We are not allowed to scan. |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1207 ((not (symbol-value reftex-docstruct-symbol)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1208 ;; Scan the whole document |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1209 (reftex-do-parse 1 file)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1210 ((member rescan '(t 1 (4) (16))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1211 ;; Scan whatever was required by the caller. |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1212 (reftex-do-parse rescan file)))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1213 |
34402
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1214 (defun reftex-scanning-info-available-p () |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1215 "Is the scanning info about the current document available?" |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1216 (unless reftex-docstruct-symbol |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1217 (reftex-tie-multifile-symbols)) |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1218 (and (symbolp reftex-docstruct-symbol) |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1219 (symbol-value reftex-docstruct-symbol) |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1220 t)) |
5eec8d1d09f0
Update to RefTeX 4.15, see ChangeLog for details
Carsten Dominik <dominik@science.uva.nl>
parents:
29775
diff
changeset
|
1221 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1222 (defun reftex-silence-toc-markers (list n) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1223 ;; Set all toc markers in the first N entries in list to nil |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1224 (while (and list (> (decf n) -1)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1225 (and (eq (car (car list)) 'toc) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1226 (markerp (nth 4 (car list))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1227 (set-marker (nth 4 (car list)) nil)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1228 (pop list))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1229 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1230 (defun reftex-access-parse-file (action) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1231 "Perform ACTION on the parse file (the .rel file). |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1232 Valid actions are: readable, restore, read, kill, write." |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1233 (let* ((list (symbol-value reftex-docstruct-symbol)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1234 (docstruct-symbol reftex-docstruct-symbol) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1235 (master (reftex-TeX-master-file)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1236 (enable-local-variables nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1237 (file (if (string-match "\\.[a-zA-Z]+\\'" master) |
27192
f70a80cecdd3
New version number.
Carsten Dominik <dominik@science.uva.nl>
parents:
27170
diff
changeset
|
1238 (concat (substring master 0 (match-beginning 0)) |
f70a80cecdd3
New version number.
Carsten Dominik <dominik@science.uva.nl>
parents:
27170
diff
changeset
|
1239 reftex-parse-file-extension) |
f70a80cecdd3
New version number.
Carsten Dominik <dominik@science.uva.nl>
parents:
27170
diff
changeset
|
1240 (concat master reftex-parse-file-extension)))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1241 (cond |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1242 ((eq action 'readable) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1243 (file-readable-p file)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1244 ((eq action 'restore) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1245 (put reftex-docstruct-symbol 'modified nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1246 (if (eq reftex-docstruct-symbol nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1247 ;; Symbols are not yet tied: Tie them. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1248 (reftex-tie-multifile-symbols)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1249 (if (file-exists-p file) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1250 ;; load the file and return t for success |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1251 (condition-case nil |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1252 (progn (load-file file) t) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1253 (error (set reftex-docstruct-symbol nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1254 (error "Error while loading file %s" file))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1255 ;; Throw an exception if the file does not exist |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1256 (error "No restore file %s" file))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1257 ((eq action 'read) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1258 (put reftex-docstruct-symbol 'modified nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1259 (if (file-exists-p file) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1260 ;; load the file and return t for success |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1261 (condition-case nil |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1262 (progn |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1263 (load-file file) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1264 (reftex-check-parse-consistency) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1265 t) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1266 (error (message "Error while restoring file %s" file) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1267 (set reftex-docstruct-symbol nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1268 nil)) |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1269 ;; return nil for failure, but no exception |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1270 nil)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1271 ((eq action 'kill) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1272 ;; Remove the file |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1273 (when (and (file-exists-p file) (file-writable-p file)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1274 (message "Unlinking file %s" file) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1275 (delete-file file))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1276 (t |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1277 (put docstruct-symbol 'modified nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1278 (save-excursion |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1279 (if (file-writable-p file) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1280 (progn |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1281 (message "Writing parse file %s" (abbreviate-file-name file)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1282 (find-file file) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1283 (erase-buffer) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1284 (insert (format ";; RefTeX parse info file\n")) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1285 (insert (format ";; File: %s\n" master)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1286 (insert (format ";; User: %s (%s)\n\n" |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1287 (user-login-name) (user-full-name))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1288 (insert "(set reftex-docstruct-symbol '(\n\n") |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1289 (let ((standard-output (current-buffer))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1290 (mapcar |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1291 (lambda (x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1292 (cond ((eq (car x) 'toc) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1293 ;; A toc entry. Do not save the marker. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1294 ;; Save the markers position at position 8 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1295 (print (list 'toc "toc" (nth 2 x) (nth 3 x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1296 nil (nth 5 x) (nth 6 x) (nth 7 x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1297 (or (and (markerp (nth 4 x)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1298 (marker-position (nth 4 x))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1299 (nth 8 x))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1300 ((and (not (eq t reftex-support-index)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1301 (eq (car x) 'index)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1302 ;; Don't save index entries |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1303 ) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1304 (t (print x)))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1305 list)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1306 (insert "))\n\n") |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1307 (save-buffer 0) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1308 (kill-buffer (current-buffer))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1309 (error "Cannot write to file %s" file))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1310 t)))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1311 |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1312 (defun reftex-check-parse-consistency () |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1313 ;; Check if parse file is consistent, throw an error if not. |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1314 |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1315 ;; Check if the master is the same: when moving a document, this will see it. |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1316 (let* ((real-master (reftex-TeX-master-file)) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1317 (parsed-master |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1318 (nth 1 (assq 'bof (symbol-value reftex-docstruct-symbol))))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1319 (unless (string= (file-truename real-master) (file-truename parsed-master)) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1320 (message "Master file name in load file is different: %s versus %s" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1321 parsed-master real-master) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1322 (error "Master file name error"))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1323 |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1324 ;; Check for the existence of all document files |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1325 ;;; (let* ((all (symbol-value reftex-docstruct-symbol))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1326 ;;; (while all |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1327 ;;; (when (and (eq (car (car all)) 'bof) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1328 ;;; (not (file-regular-p (nth 1 (car all))))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1329 ;;; (message "File %s in saved parse info not avalable" (cdr (car all))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1330 ;;; (error "File not found")) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1331 ;;; (setq all (cdr all)))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1332 ) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1333 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1334 (defun reftex-select-external-document (xr-alist xr-index) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1335 ;; Return index of an external document. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1336 (let* ((len (length xr-alist)) (highest (1- (+ ?0 len))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1337 (prompt (format "[%c-%c] Select TAB: Read prefix with completion" |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1338 ?0 highest)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1339 key prefix) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1340 (cond |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1341 ((= len 1) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1342 (message "No external documents available") |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1343 (ding) (sit-for 1) 0) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1344 ((= len 2) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1345 (- 1 xr-index)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1346 (t |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1347 (save-excursion |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1348 (let* ((length (apply 'max (mapcar |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1349 (lambda(x) (length (car x))) xr-alist))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1350 (fmt (format " [%%c] %%-%ds %%s\n" length)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1351 (n (1- ?0))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1352 (setq key |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1353 (reftex-select-with-char |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1354 prompt |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1355 (concat |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1356 "SELECT EXTERNAL DOCUMENT\n------------------------\n" |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1357 (mapconcat |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1358 (lambda (x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1359 (format fmt (incf n) (or (car x) "") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1360 (abbreviate-file-name (cdr x)))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1361 xr-alist "")) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1362 nil t)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1363 (cond |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1364 ((and (>= key ?0) (<= key highest)) (- key ?0)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1365 ((= key ?\C-i) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1366 (setq prefix (completing-read "Prefix: " xr-alist nil t)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1367 (- len (length (memq (assoc prefix xr-alist) xr-alist)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1368 (t (error "Illegal document selection [%c]" key))))))))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1369 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1370 ;;; ========================================================================= |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1371 ;;; |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1372 ;;; Finding files |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1373 |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1374 (defun reftex-locate-file (file type master-dir &optional die) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1375 "Find FILE of type TYPE in MASTER-DIR or on the path associcted with TYPE. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1376 If the file does not have any of the legal extensions for TYPE, |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1377 try first the default extension and only then the naked file name. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1378 When DIE is non-nil, throw an error if file not found." |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1379 (let* ((rec-values (if reftex-search-unrecursed-path-first '(nil t) '(t))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1380 (extensions (cdr (assoc type reftex-file-extensions))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1381 (def-ext (car extensions)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1382 (ext-re (concat "\\(" |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1383 (mapconcat 'regexp-quote extensions "\\|") |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1384 "\\)\\'")) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1385 (files (if (string-match ext-re file) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1386 (cons file nil) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1387 (cons (concat file def-ext) file))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1388 path old-path file1) |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1389 (cond |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1390 ((file-name-absolute-p file) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1391 (setq file1 |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1392 (or |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1393 (and (car files) (file-regular-p (car files)) (car files)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1394 (and (cdr files) (file-regular-p (cdr files)) (cdr files))))) |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1395 ((and reftex-use-external-file-finders |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1396 (assoc type reftex-external-file-finders)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1397 (setq file1 (reftex-find-file-externally file type master-dir))) |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1398 (t |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1399 (while (and (null file1) rec-values) |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
1400 (setq path (reftex-access-search-path |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1401 type (pop rec-values) master-dir file)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1402 (if (or (null old-path) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1403 (not (eq old-path path))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1404 (setq old-path path |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1405 path (cons master-dir path) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1406 file1 (or (and (car files) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1407 (reftex-find-file-on-path |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1408 (car files) path master-dir)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1409 (and (cdr files) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1410 (reftex-find-file-on-path |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1411 (cdr files) path master-dir)))))))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1412 (cond (file1 file1) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1413 (die (error "No such file: %s" file) nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1414 (t (message "No such file: %s (ignored)" file) nil)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1415 |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1416 (defun reftex-find-file-externally (file type &optional master-dir) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1417 ;; Use external program to find FILE. |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1418 ;; The program is taken from `reftex-external-file-finders'. |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1419 ;; Interprete relative path definitions starting from MASTER-DIR. |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1420 (let ((default-directory (or master-dir default-directory)) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1421 (prg (cdr (assoc type reftex-external-file-finders))) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1422 out) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1423 (if (string-match "%f" prg) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1424 (setq prg (replace-match file t t prg))) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1425 (setq out (apply 'reftex-process-string (split-string prg))) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1426 (if (string-match "[ \t\n]+\\'" out) ; chomp |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1427 (setq out (replace-match "" nil nil out))) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1428 (cond ((equal out "") nil) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1429 ((file-regular-p out) (expand-file-name out master-dir)) |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1430 (t nil)))) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1431 |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1432 (defun reftex-process-string (program &rest args) |
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1433 "Execute PROGRAM with arguments ARGS and return its STDOUT as a string." |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1434 (let ((calling-dir default-directory)) ; remember default directory |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1435 (with-output-to-string |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1436 (with-current-buffer standard-output |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1437 (let ((default-directory calling-dir)) ; set default directory |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1438 (apply 'call-process program nil '(t nil) nil args)))))) |
23344
608bc56ca20e
(reftex-finding-files): New customize group.
Carsten Dominik <dominik@science.uva.nl>
parents:
23200
diff
changeset
|
1439 |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1440 (defun reftex-access-search-path (type &optional recurse master-dir file) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1441 ;; Access path from environment variables. TYPE is either "tex" or "bib". |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1442 ;; When RECURSE is t, expand path elements ending in `//' recursively. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1443 ;; Relative path elements are left as they are. However, relative recursive |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1444 ;; elements are expanded with MASTER-DIR as default directory. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1445 ;; The expanded path is cached for the next search. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1446 ;; FILE is just for the progress message. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1447 ;; Returns the derived path. |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1448 (let* ((pathvar (intern (concat "reftex-" type "-path")))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1449 (when (null (get pathvar 'status)) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1450 ;; Get basic path |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1451 (set pathvar |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1452 (reftex-uniq |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1453 (reftex-parse-colon-path |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1454 (mapconcat |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1455 (lambda(x) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1456 (if (string-match "^!" x) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1457 (apply 'reftex-process-string |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1458 (split-string (substring x 1))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1459 (or (getenv x) x))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1460 ;; For consistency, the next line should look like this: |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1461 ;; (cdr (assoc type reftex-path-environment)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1462 ;; However, historically we have separate options for the |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1463 ;; environment variables, so we have to do this: |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1464 (symbol-value (intern (concat "reftex-" type |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1465 "path-environment-variables"))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1466 path-separator)))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1467 (put pathvar 'status 'split) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1468 ;; Check if we have recursive elements |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1469 (let ((path (symbol-value pathvar)) dir rec) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1470 (while (setq dir (pop path)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1471 (when (string= (substring dir -2) "//") |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1472 (if (file-name-absolute-p dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1473 (setq rec (or rec 'absolute)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1474 (setq rec 'relative)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1475 (put pathvar 'rec-type rec))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1476 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1477 (if recurse |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1478 ;; Return the recursive expansion of the path |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1479 (cond |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1480 ((not (get pathvar 'rec-type)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1481 ;; Path does not contain recursive elements - use simple path |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1482 (symbol-value pathvar)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1483 ((or (not (get pathvar 'recursive-path)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1484 (and (eq (get pathvar 'rec-type) 'relative) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1485 (not (equal master-dir (get pathvar 'master-dir))))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1486 ;; Either: We don't have a recursive expansion yet. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1487 ;; or: Relative recursive path elements need to be expanded |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1488 ;; relative to new default directory |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1489 (message "Expanding search path to find %s file: %s ..." type file) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1490 (put pathvar 'recursive-path |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1491 (reftex-expand-path (symbol-value pathvar) master-dir)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1492 (put pathvar 'master-dir master-dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1493 (get pathvar 'recursive-path)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1494 (t |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1495 ;; Recursive path computed earlier is still OK. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1496 (get pathvar 'recursive-path))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1497 ;; The simple path was requested |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1498 (symbol-value pathvar)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1499 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1500 (defun reftex-find-file-on-path (file path &optional def-dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1501 ;; Find FILE along the directory list PATH. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1502 ;; DEF-DIR is the default directory for expanding relative path elements. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1503 (catch 'exit |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1504 (when (file-name-absolute-p file) |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
1505 (if (file-regular-p file) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1506 (throw 'exit file) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1507 (throw 'exit nil))) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1508 (let* ((thepath path) file1 dir) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1509 (while (setq dir (pop thepath)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1510 (when (string= (substring dir -2) "//") |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1511 (setq dir (substring dir 0 -1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1512 (setq file1 (expand-file-name file (expand-file-name dir def-dir))) |
23200
4750ba95a176
(reftex-view-crossref): Split up into several functions. No longer moves
Carsten Dominik <dominik@science.uva.nl>
parents:
22991
diff
changeset
|
1513 (if (file-regular-p file1) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1514 (throw 'exit file1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1515 ;; No such file |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1516 nil))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1517 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1518 (defun reftex-parse-colon-path (path) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1519 ;; Like parse-colon-parse, but // or /~ are left alone. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1520 ;; Trailing ! or !! will be converted into `//' (emTeX convention) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1521 (mapcar |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1522 (lambda (dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1523 (if (string-match "\\(//+\\|/*!+\\)\\'" dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1524 (setq dir (replace-match "//" t t dir))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1525 (file-name-as-directory dir)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1526 (delete "" (split-string path (concat path-separator "+"))))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1527 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1528 (defun reftex-expand-path (path &optional default-dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1529 ;; Expand parts of path ending in `//' recursively into directory list. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1530 ;; Relative recursive path elements are expanded relative to DEFAULT-DIR. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1531 (let (path1 dir recursive) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1532 (while (setq dir (pop path)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1533 (if (setq recursive (string= (substring dir -2) "//")) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1534 (setq dir (substring dir 0 -1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1535 (if (and recursive |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1536 (not (file-name-absolute-p dir))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1537 (setq dir (expand-file-name dir default-dir))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1538 (if recursive |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1539 ;; Expand recursively |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1540 (setq path1 (append (reftex-recursive-directory-list dir) path1)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1541 ;; Keep unchanged |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1542 (push dir path1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1543 (nreverse path1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1544 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1545 (defun reftex-recursive-directory-list (dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1546 ;; Return a list of all directories below DIR, including DIR itself |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1547 (let ((path (list dir)) path1 file files) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1548 (while (setq dir (pop path)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1549 (when (file-directory-p dir) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1550 (setq files (nreverse (directory-files dir t "[^.]"))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1551 (while (setq file (pop files)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1552 (if (file-directory-p file) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1553 (push (file-name-as-directory file) path))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1554 (push dir path1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1555 path1)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1556 |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1557 (defun reftex-uniq (list) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1558 (let (new) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1559 (while list |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1560 (or (member (car list) new) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1561 (push (car list) new)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1562 (pop list)) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1563 (nreverse new))) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1564 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1565 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1566 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1567 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1568 ;;; Parser functions |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1569 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1570 (autoload 'reftex-parse-one "reftex-parse" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1571 "Re-parse this file." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1572 (autoload 'reftex-parse-all "reftex-parse" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1573 "Re-parse entire document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1574 (autoload 'reftex-do-parse "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1575 (autoload 'reftex-where-am-I "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1576 (autoload 'reftex-init-section-numbers "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1577 (autoload 'reftex-section-info "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1578 (autoload 'reftex-section-number "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1579 (autoload 'reftex-what-macro "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1580 (autoload 'reftex-what-macro-safe "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1581 (autoload 'reftex-index-info "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1582 (autoload 'reftex-index-info-safe "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1583 (autoload 'reftex-short-context "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1584 (autoload 'reftex-what-environment "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1585 (autoload 'reftex-what-special-env "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1586 (autoload 'reftex-move-over-touching-args "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1587 (autoload 'reftex-notice-new "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1588 (autoload 'reftex-nth-arg "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1589 (autoload 'reftex-locate-bibliography-files "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1590 (autoload 'reftex-all-document-files "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1591 (autoload 'reftex-ensure-index-support "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1592 (autoload 'reftex-everything-regexp "reftex-parse") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1593 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1594 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1595 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1596 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1597 ;;; Labels and References |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1598 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1599 (autoload 'reftex-label-location "reftex-ref") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1600 (autoload 'reftex-label-info-update "reftex-ref") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1601 (autoload 'reftex-label-info "reftex-ref") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1602 (autoload 'reftex-label "reftex-ref" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1603 "Insert a unique label." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1604 (autoload 'reftex-reference "reftex-ref" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1605 "Make a LaTeX reference." t) |
37998
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
1606 (autoload 'reftex-varioref-vref "reftex-ref" |
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
1607 "Make a varioref reference." t) |
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
1608 (autoload 'reftex-fancyref-fref "reftex-ref" |
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
1609 "Make a fancyref \\fref reference." t) |
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
1610 (autoload 'reftex-fancyref-Fref "reftex-ref" |
706af946b1e7
* reftex-ref.el (reftex-select-label-help): Added "z" key
Carsten Dominik <dominik@science.uva.nl>
parents:
36469
diff
changeset
|
1611 "Make a fancyref \\Fref reference." t) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1612 (autoload 'reftex-show-label-location "reftex-ref") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1613 (autoload 'reftex-query-label-type "reftex-ref") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1614 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1615 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1616 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1617 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1618 ;;; Table of contents |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1619 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1620 (autoload 'reftex-toc "reftex-toc" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1621 "Show the table of contents for the current document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1622 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1623 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1624 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1625 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1626 ;;; BibTeX citations. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1627 |
29775
31536c6cf2e3
* textmodes/reftex.el (reftex-find-citation-regexp-format):
Carsten Dominik <dominik@science.uva.nl>
parents:
27601
diff
changeset
|
1628 (autoload 'reftex-citep "reftex-cite") |
31536c6cf2e3
* textmodes/reftex.el (reftex-find-citation-regexp-format):
Carsten Dominik <dominik@science.uva.nl>
parents:
27601
diff
changeset
|
1629 (autoload 'reftex-citet "reftex-cite") |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1630 (autoload 'reftex-make-cite-echo-string "reftex-cite") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1631 (autoload 'reftex-get-bibfile-list "reftex-cite") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1632 (autoload 'reftex-pop-to-bibtex-entry "reftex-cite") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1633 (autoload 'reftex-end-of-bib-entry "reftex-cite") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1634 (autoload 'reftex-parse-bibtex-entry "reftex-cite") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1635 (autoload 'reftex-citation "reftex-cite" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1636 "Make a citation using BibTeX database files." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1637 (autoload 'reftex-default-bibliography "reftex-cite") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1638 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1639 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1640 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1641 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1642 ;;; Selection |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1643 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1644 (autoload 'reftex-select-label-mode "reftex-sel") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1645 (autoload 'reftex-select-bib-mode "reftex-sel") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1646 (autoload 'reftex-find-start-point "reftex-sel") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1647 (autoload 'reftex-insert-docstruct "reftex-sel") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1648 (autoload 'reftex-get-offset "reftex-sel") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1649 (autoload 'reftex-select-item "reftex-sel") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1650 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1651 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1652 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1653 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1654 ;;; Index support |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1655 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1656 (autoload 'reftex-index "reftex-index" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1657 "Query for an index macro and insert it along with its argments." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1658 (autoload 'reftex-index-selection-or-word "reftex-index" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1659 "Put selection or the word near point into the default index macro." t) |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1660 (autoload 'reftex-index-phrase-selection-or-word "reftex-index" |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1661 "Put selection or the word near point into Index Phrases File." t) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1662 (autoload 'reftex-display-index "reftex-index" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1663 "Display a buffer with an index compiled from the current document." t) |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1664 (autoload 'reftex-index-visit-phrases-buffer "reftex-index" |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1665 "Visit the Index Phrases File." t) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1666 (autoload 'reftex-index-phrases-mode "reftex-index" |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1667 "Major mode for managing the Index phrases of a LaTeX document." t) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1668 (autoload 'reftex-index-complete-tag "reftex-index") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1669 (autoload 'reftex-index-complete-key "reftex-index") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1670 (autoload 'reftex-index-show-entry "reftex-index") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1671 (autoload 'reftex-index-select-tag "reftex-index") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1672 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1673 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1674 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1675 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1676 ;;; View cross references |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1677 |
27170
3cba3e588544
renamed reftex-vcr.el to reftex-dcr.el
Carsten Dominik <dominik@science.uva.nl>
parents:
27034
diff
changeset
|
1678 (autoload 'reftex-view-crossref "reftex-dcr" |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1679 "View cross reference of \\ref or \\cite macro at point." t) |
27170
3cba3e588544
renamed reftex-vcr.el to reftex-dcr.el
Carsten Dominik <dominik@science.uva.nl>
parents:
27034
diff
changeset
|
1680 (autoload 'reftex-mouse-view-crossref "reftex-dcr" |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1681 "View cross reference of \\ref or \\cite macro where you click." t) |
27170
3cba3e588544
renamed reftex-vcr.el to reftex-dcr.el
Carsten Dominik <dominik@science.uva.nl>
parents:
27034
diff
changeset
|
1682 (autoload 'reftex-toggle-auto-view-crossref "reftex-dcr") |
3cba3e588544
renamed reftex-vcr.el to reftex-dcr.el
Carsten Dominik <dominik@science.uva.nl>
parents:
27034
diff
changeset
|
1683 (autoload 'reftex-view-crossref-from-bibtex "reftex-dcr" |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1684 "View location in a LaTeX document which cites the BibTeX entry at point." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1685 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1686 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1687 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1688 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1689 ;;; Operations on entire Multifile documents |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1690 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1691 (autoload 'reftex-create-tags-file "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1692 "Create TAGS file by running `etags' on the current document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1693 (autoload 'reftex-grep-document "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1694 "Run grep query through all files related to this document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1695 (autoload 'reftex-search-document "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1696 "Regexp search through all files of the current TeX document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1697 (autoload 'reftex-query-replace-document "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1698 "Run a query-replace-regexp of FROM with TO over the entire TeX document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1699 (autoload 'reftex-find-duplicate-labels "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1700 "Produce a list of all duplicate labels in the document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1701 (autoload 'reftex-change-label "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1702 "Query replace FROM with TO in all \\label and \\ref commands." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1703 (autoload 'reftex-renumber-simple-labels "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1704 "Renumber all simple labels in the document to make them sequentially." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1705 (autoload 'reftex-save-all-document-buffers "reftex-global" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1706 "Save all documents associated with the current document." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1707 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1708 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1709 ;;; ========================================================================= |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1710 ;;; |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1711 ;;; AUCTeX Interface |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1712 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1713 (autoload 'reftex-arg-label "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1714 (autoload 'reftex-arg-cite "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1715 (autoload 'reftex-arg-index-tag "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1716 (autoload 'reftex-arg-index "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1717 (autoload 'reftex-plug-into-AUCTeX "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1718 (autoload 'reftex-toggle-plug-into-AUCTeX "reftex-auc" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1719 "Toggle Interface between AUCTeX and RefTeX on and off." t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1720 (autoload 'reftex-add-label-environments "reftex-auc") |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1721 (autoload 'reftex-add-to-label-alist "reftex-auc") |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1722 (autoload 'reftex-add-section-levels "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1723 (autoload 'reftex-notice-new-section "reftex-auc") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1724 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1725 ;;; ========================================================================= |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1726 ;;; |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1727 ;;; Some generally useful functions |
18050 | 1728 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1729 (defun reftex-typekey-check (typekey conf-variable &optional n) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1730 ;; Check if CONF-VARIABLE is true or contains TYPEKEY |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1731 (and n (setq conf-variable (nth n conf-variable))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1732 (or (eq conf-variable t) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1733 (and (stringp conf-variable) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1734 (string-match (concat "[" conf-variable "]") typekey)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1735 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1736 (defun reftex-check-recursive-edit () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1737 ;; Check if we are already in a recursive edit. Abort with helpful |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1738 ;; message if so. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1739 (if (marker-position reftex-recursive-edit-marker) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1740 (error |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1741 (substitute-command-keys |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1742 "In unfinished selection process. Finish, or abort with \\[abort-recursive-edit]")))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1743 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1744 (defun reftex-in-comment () |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1745 (save-excursion |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1746 (skip-chars-backward "^%\n\r") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1747 (eq (preceding-char) ?%))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1748 |
18050 | 1749 (defun reftex-no-props (string) |
1750 ;; Return STRING with all text properties removed | |
1751 (and (stringp string) | |
1752 (set-text-properties 0 (length string) nil string)) | |
1753 string) | |
1754 | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1755 (defun reftex-match-string (n) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1756 ;; Match string without properties |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1757 (when (match-beginning n) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1758 (buffer-substring-no-properties (match-beginning n) (match-end n)))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1759 |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1760 (defun reftex-kill-buffer (buffer) |
20979
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1761 ;; Kill buffer if it exists. |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1762 (and (setq buffer (get-buffer buffer)) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1763 (kill-buffer buffer))) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1764 |
20979
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1765 (defun reftex-erase-buffer (&optional buffer) |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1766 ;; Erase BUFFER if it exists. BUFFER defaults to current buffer. |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1767 ;; This even erases read-only buffers. |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1768 (cond |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1769 ((null buffer) |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1770 ;; erase current buffer |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1771 (let ((buffer-read-only nil)) (erase-buffer))) |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1772 ((setq buffer (get-buffer buffer)) |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1773 ;; buffer exists |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1774 (save-excursion |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1775 (set-buffer buffer) |
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
1776 (let ((buffer-read-only nil)) (erase-buffer)))))) |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1777 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1778 (defun reftex-this-word (&optional class) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1779 ;; Grab the word around point. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1780 (setq class (or class "-a-zA-Z0-9:_/.*;|")) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1781 (save-excursion |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1782 (buffer-substring-no-properties |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1783 (progn (skip-chars-backward class) (point)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1784 (progn (skip-chars-forward class) (point))))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1785 |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1786 (defun reftex-number (n unit &optional ending) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1787 (if (and (integerp n) (stringp unit)) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1788 (format "%d %s%s" n unit (if (= n 1) "" (or ending "s"))) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1789 "")) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
1790 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1791 (defun reftex-all-assq (key list) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1792 ;; Return a list of all associations of KEY in LIST. Comparison with eq. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1793 (let (rtn) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1794 (while (setq list (memq (assq key list) list)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1795 (push (car list) rtn) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1796 (pop list)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1797 (nreverse rtn))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1798 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1799 (defun reftex-all-assoc-string (key list) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1800 ;; Return a list of all associations of KEY in LIST. Comparison with string=. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1801 (let (rtn) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1802 (while list |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1803 (if (string= (car (car list)) key) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1804 (push (car list) rtn)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1805 (pop list)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1806 (nreverse rtn))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1807 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1808 (defun reftex-last-assoc-before-elt (key elt list &optional exclusive) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1809 ;; Find the last association of KEY in LIST before or at ELT |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1810 ;; ELT is found in LIST with equal, not eq. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1811 ;; Returns nil when either KEY or elt are not found in LIST. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1812 ;; When EXCLUSIVE is non-nil, ELT cannot be the return value. |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1813 ;; On success, returns the association. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1814 (let* ((elt (car (member elt list))) (ex (not exclusive)) ass last-ass) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1815 (while (and (setq ass (assoc key list)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1816 (setq list (memq ass list)) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1817 (or ex (not (eq elt (car list)))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1818 (memq elt list)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1819 (setq last-ass ass |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1820 list (cdr list))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1821 last-ass)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1822 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1823 (defun reftex-sublist-nth (list nth predicate &optional completion) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1824 ;; Make a list of the NTH elements of all members of LIST which |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1825 ;; fulfill PREDICATE. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1826 ;; When COMPLETION is non-nil, make all elements of the resulting |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1827 ;; list also a list, so that the result can be used for completion. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1828 (let (rtn) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1829 (while list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1830 (if (funcall predicate (car list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1831 (push (if completion |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1832 (list (nth nth (car list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1833 (nth nth (car list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1834 rtn)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1835 (setq list (cdr list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1836 (nreverse rtn))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1837 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1838 (defun reftex-make-selection-buffer-name (type &optional index) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1839 ;; Make unique name for a selection buffer. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1840 (format " *RefTeX[%s][%d]*" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1841 type (or index (get reftex-docstruct-symbol :master-index) 0))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1842 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1843 (defun reftex-make-index-buffer-name (tag &optional cnt) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1844 ;; Make unique name for an index buffer. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1845 (format "*Index[%s][%d]*" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1846 tag (or cnt (get reftex-docstruct-symbol :master-index) 0))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1847 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1848 (defun reftex-truncate (string ncols &optional ellipses padding) |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1849 ;; Truncate STRING to NCOLS characters. |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1850 ;; When PADDING is non-nil, and string is shorter than NCOLS, fill with |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1851 ;; white space to NCOLS characters. When ELLIPSES is non-nil and the |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1852 ;; string needs to be truncated, replace last 3 characters by dots. |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1853 (setq string |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1854 (if (<= (length string) ncols) |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1855 string |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1856 (if ellipses |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1857 (concat (substring string 0 (- ncols 3)) "...") |
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
1858 (substring string 0 ncols)))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1859 (if padding |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1860 (format (format "%%-%ds" ncols) string) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1861 string)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1862 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1863 (defun reftex-nearest-match (regexp &optional max-length) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1864 ;; Find the nearest match of REGEXP. Set the match data. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1865 ;; If POS is given, calculate distances relative to it. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1866 ;; Return nil if there is no match. |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1867 (let ((pos (point)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1868 (dist (or max-length (length regexp))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1869 match1 match2 match) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1870 (goto-char (min (+ pos dist) (point-max))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1871 (when (re-search-backward regexp nil t) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1872 (setq match1 (match-data))) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1873 (goto-char (max (- pos dist) (point-min))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1874 (when (re-search-forward regexp nil t) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1875 (setq match2 (match-data))) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1876 (goto-char pos) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1877 (setq match |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1878 (cond |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1879 ((not match1) match2) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1880 ((not match2) match1) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1881 ((< (abs (- pos (car match1))) (abs (- pos (car match2)))) match1) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1882 (t match2))) |
21170
dbe101f49d57
(reftex-nearest-match): store-match-data => set-match-data.
Richard M. Stallman <rms@gnu.org>
parents:
21130
diff
changeset
|
1883 (if match (progn (set-match-data match) t) nil))) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1884 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1885 (defun reftex-auto-mode-alist () |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1886 ;; Return an `auto-mode-alist' with only the .gz (etc) thingies. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1887 ;; Stolen from gnus nnheader. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1888 (let ((alist auto-mode-alist) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1889 out) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1890 (while alist |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1891 (when (listp (cdr (car alist))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1892 (push (car alist) out)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1893 (pop alist)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1894 (nreverse out))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1895 |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1896 (defun reftex-window-height () |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1897 (if (fboundp 'window-displayed-height) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1898 (window-displayed-height) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1899 (window-height))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1900 |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1901 (defun reftex-enlarge-to-fit (buf2 &optional keep-current) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1902 ;; Enlarge other window displaying buffer to show whole buffer if possible. |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1903 ;; If KEEP-CURRENT in non-nil, current buffer must remain visible. |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1904 (let* ((win1 (selected-window)) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1905 (buf1 (current-buffer)) |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1906 (win2 (get-buffer-window buf2))) ;; Only on current frame. |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1907 (when win2 |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1908 (select-window win2) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1909 (unless (and (pos-visible-in-window-p 1) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1910 (pos-visible-in-window-p (point-max))) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1911 (enlarge-window (1+ (- (count-lines 1 (point-max)) |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1912 (reftex-window-height)))))) |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1913 (cond |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1914 ((window-live-p win1) (select-window win1)) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1915 (keep-current |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1916 ;; we must have the old buffer! |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1917 (switch-to-buffer-other-window buf1) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1918 (shrink-window (- (window-height) window-min-height)))))) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1919 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1920 (defun reftex-select-with-char (prompt help-string &optional delay-time scroll) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1921 ;; Offer to select something with PROMPT and, after DELAY-TIME seconds, |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1922 ;; also with HELP-STRING. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1923 ;; When SCROLL is non-nil, use SPC and DEL to scroll help window. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1924 (let ((char ?\?)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1925 (save-window-excursion |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1926 (catch 'exit |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1927 (message (concat prompt " (?=Help)")) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1928 (when (or (sit-for (or delay-time 0)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1929 (= ?\? (setq char (read-char-exclusive)))) |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1930 (reftex-kill-buffer "*RefTeX Select*") |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1931 (switch-to-buffer-other-window "*RefTeX Select*") |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1932 (insert help-string) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1933 (goto-char 1) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1934 (unless (and (pos-visible-in-window-p 1) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1935 (pos-visible-in-window-p (point-max))) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1936 (enlarge-window (1+ (- (count-lines 1 (point-max)) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
1937 (reftex-window-height))))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1938 (setq truncate-lines t)) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1939 (if (and (pos-visible-in-window-p 1) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1940 (pos-visible-in-window-p (point-max))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1941 nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1942 (setq prompt (concat prompt (if scroll " (SPC/DEL=Scroll)" "")))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1943 (message prompt) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1944 (and (equal char ?\?) (setq char (read-char-exclusive))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1945 (while t |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1946 (cond ((equal char ?\C-g) (keyboard-quit)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1947 ((equal char ?\?)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1948 ((and scroll (equal char ?\ )) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1949 (condition-case nil (scroll-up) (error nil)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1950 (message prompt)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1951 ((and scroll (equal char ?\C-? )) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1952 (condition-case nil (scroll-down) (error nil)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1953 (message prompt)) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1954 (t (message "") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1955 (throw 'exit char))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1956 (setq char (read-char-exclusive))))))) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
1957 |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1958 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1959 (defun reftex-make-regexp-allow-for-ctrl-m (string) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1960 ;; convert STRING into a regexp, allowing ^M for \n and vice versa |
18050 | 1961 (let ((start -2)) |
1962 (setq string (regexp-quote string)) | |
1963 (while (setq start (string-match "[\n\r]" string (+ 3 start))) | |
1964 (setq string (replace-match "[\n\r]" nil t string))) | |
1965 string)) | |
1966 | |
1967 (defun reftex-get-buffer-visiting (file) | |
1968 ;; return a buffer visiting FILE | |
1969 (cond | |
1970 ((boundp 'find-file-compare-truenames) ; XEmacs | |
1971 (let ((find-file-compare-truenames t)) | |
1972 (get-file-buffer file))) | |
20177
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
1973 ((fboundp 'find-buffer-visiting) ; Emacs |
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
1974 (find-buffer-visiting file)) |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
1975 (t (error "This should not happen (reftex-get-buffer-visiting)")))) |
18050 | 1976 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1977 ;; Define `current-message' for compatibility with XEmacs prior to 20.4 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1978 (defvar message-stack) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1979 (if (and (featurep 'xemacs) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1980 (not (fboundp 'current-message))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1981 (defun current-message (&optional frame) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1982 (cdr (car message-stack)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1983 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1984 (defun reftex-visited-files (list) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1985 ;; Takes a list of filenames and returns the buffers of those already visited |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1986 (delq nil (mapcar (lambda (x) (if (reftex-get-buffer-visiting x) x nil)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1987 list))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1988 |
18050 | 1989 (defun reftex-get-file-buffer-force (file &optional mark-to-kill) |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
1990 ;; Return a buffer visiting file. Make one, if necessary. |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1991 ;; If neither such a buffer nor the file exist, return nil. |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
1992 ;; If MARK-TO-KILL is t and there is no live buffer, visit the file with |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1993 ;; initializations according to `reftex-initialize-temporary-buffers', |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1994 ;; and mark the buffer to be killed after use. |
18050 | 1995 |
1996 (let ((buf (reftex-get-buffer-visiting file))) | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1997 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1998 (cond (buf |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
1999 ;; We have it already as a buffer - just return it |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2000 buf) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2001 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2002 ((file-readable-p file) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2003 ;; At least there is such a file and we can read it. |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2004 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2005 (if (or (not mark-to-kill) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2006 (eq t reftex-initialize-temporary-buffers)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2007 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2008 ;; Visit the file with full magic |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2009 (setq buf (find-file-noselect file)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2010 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2011 ;; Else: Visit the file just briefly, without or |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2012 ;; with limited Magic |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2013 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2014 ;; The magic goes away |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2015 (let ((format-alist nil) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2016 (auto-mode-alist (reftex-auto-mode-alist)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2017 (default-major-mode 'fundamental-mode) |
20979
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2018 (enable-local-variables nil) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2019 (after-insert-file-functions nil)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2020 (setq buf (find-file-noselect file))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2021 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2022 ;; Is there a hook to run? |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2023 (when (listp reftex-initialize-temporary-buffers) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2024 (save-excursion |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2025 (set-buffer buf) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2026 (run-hooks 'reftex-initialize-temporary-buffers)))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2027 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2028 ;; Lets see if we got a license to kill :-| |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2029 (and mark-to-kill |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2030 (add-to-list 'reftex-buffers-to-kill buf)) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2031 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2032 ;; Return the new buffer |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2033 buf) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2034 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2035 ;; If no such file exists, return nil |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2036 (t nil)))) |
18050 | 2037 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2038 (defun reftex-kill-temporary-buffers (&optional buffer) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2039 ;; Kill all buffers in the list reftex-kill-temporary-buffers. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2040 (cond |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2041 (buffer |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2042 (when (member buffer reftex-buffers-to-kill) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2043 (kill-buffer buffer) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2044 (setq reftex-buffers-to-kill |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2045 (delete buffer reftex-buffers-to-kill)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2046 (t |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2047 (while (setq buffer (pop reftex-buffers-to-kill)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2048 (when (bufferp buffer) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2049 (and (buffer-modified-p buffer) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2050 (y-or-n-p (format "Save file %s? " |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2051 (buffer-file-name buffer))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2052 (save-excursion |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2053 (set-buffer buffer) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2054 (save-buffer))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2055 (kill-buffer buffer)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2056 (pop reftex-buffers-to-kill))))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2057 |
18050 | 2058 (defun reftex-splice-symbols-into-list (list alist) |
2059 ;; Splice the association in ALIST of any symbols in LIST into the list. | |
2060 ;; Return new list. | |
2061 (let (rtn tmp) | |
2062 (while list | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2063 (while (and (not (null (car list))) ;; keep list elements nil |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2064 (symbolp (car list))) |
18050 | 2065 (setq tmp (car list)) |
2066 (cond | |
2067 ((assoc tmp alist) | |
19660
fa3d4e7a76d9
(reftex-customize): Added call to customize browse.
Richard M. Stallman <rms@gnu.org>
parents:
18321
diff
changeset
|
2068 (setq list (append (nth 2 (assoc tmp alist)) (cdr list)))) |
18050 | 2069 (t |
2070 (error "Cannot treat symbol %s in reftex-label-alist" | |
2071 (symbol-name tmp))))) | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2072 (push (pop list) rtn)) |
18050 | 2073 (nreverse rtn))) |
2074 | |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2075 (defun reftex-remove-symbols-from-list (list) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2076 ;; Remove all symbols from list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2077 (let (rtn) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2078 (while list |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2079 (unless (symbolp (car list)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2080 (push (car list) rtn)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2081 (setq list (cdr list))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2082 (nreverse rtn))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2083 |
25802
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2084 (defun reftex-uniquify (list) |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2085 ;; Return a list of all elements in LIST, but each only once |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2086 (let (new elm) |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2087 (while list |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2088 (setq elm (pop list)) |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2089 (unless (member elm new) |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2090 (push elm new))) |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2091 (nreverse new))) |
4c4fabd16782
Version number change
Carsten Dominik <dominik@science.uva.nl>
parents:
25279
diff
changeset
|
2092 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2093 (defun reftex-uniquify-by-car (alist &optional keep-list) |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
2094 ;; Return a list of all elements in ALIST, but each car only once. |
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
2095 ;; Elements of KEEP-LIST are not removed even if duplicate. |
18050 | 2096 (let (new elm) |
2097 (while alist | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2098 (setq elm (pop alist)) |
18050 | 2099 (if (or (member (car elm) keep-list) |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2100 (not (assoc (car elm) new))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2101 (push elm new))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2102 (nreverse new))) |
18050 | 2103 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2104 (defun reftex-abbreviate-title (string) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2105 (reftex-convert-string string "[-~ \t\n\r,;]" nil t t |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2106 5 40 nil 1 " " (nth 5 reftex-derive-label-parameters))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2107 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2108 (defun reftex-convert-string (string split-re illegal-re dot keep-fp |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2109 nwords maxchar illegal abbrev sep |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2110 ignore-words &optional downcase) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2111 "Convert a string (a sentence) to something shorter. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2112 SPLIT-RE is the regular expression used to split the string into words. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2113 ILLEGAL-RE matches characters which are illegal in the final string. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2114 DOT t means add dots to abbreviated words. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2115 KEEP-FP t means to keep a final punctuation when applicable. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2116 NWORDS Number of words to use. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2117 MAXCHAR Maximum number of characters in the final string. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2118 ILLEGAL nil: Throw away any words containing stuff matched with ILLEGAL-RE. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2119 t: Throw away only the matched part, not the whole word. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2120 ABBREV nil: Never abbreviate words. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2121 t: Always abbreviate words (see `reftex-abbrev-parameters'). |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2122 not t and not nil: Abbreviate words if necessary to shorten |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2123 string below MAXCHAR. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2124 SEP String separating different words in the output string. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2125 IGNORE-WORDS List of words which should be removed from the string." |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2126 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2127 (let* ((words0 (split-string string (or split-re "[ \t\n\r]"))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2128 (reftex-label-illegal-re (or illegal-re "\000")) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2129 (abbrev-re (concat |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2130 "\\`\\(" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2131 (make-string (nth 0 reftex-abbrev-parameters) ?.) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2132 "[" (nth 2 reftex-abbrev-parameters) "]*" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2133 "\\)" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2134 "[" (nth 3 reftex-abbrev-parameters) "]" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2135 (make-string (1- (nth 1 reftex-abbrev-parameters)) ?.))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2136 words word) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2137 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2138 ;; Remove words from the ignore list or with funny characters |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2139 (while (setq word (pop words0)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2140 (if downcase (setq word (downcase word))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2141 (cond |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2142 ((member (downcase word) ignore-words)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2143 ((string-match reftex-label-illegal-re word) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2144 (when illegal |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2145 (while (string-match reftex-label-illegal-re word) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2146 (setq word (replace-match "" nil nil word))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2147 (push word words))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2148 (t |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2149 (push word words)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2150 (setq words (nreverse words)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2151 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2152 ;; Restrict number of words |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2153 (if (> (length words) nwords) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2154 (setcdr (nthcdr (1- nwords) words) nil)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2155 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2156 ;; First, try to use all words |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2157 (setq string (mapconcat 'identity words sep)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2158 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2159 ;; Abbreviate words if enforced by user settings or string length |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2160 (if (or (eq t abbrev) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2161 (and abbrev |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2162 (> (length string) maxchar))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2163 (setq words |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2164 (mapcar |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2165 (lambda (w) (if (string-match abbrev-re w) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2166 (if dot |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2167 (concat (match-string 1 w) ".") |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2168 (match-string 1 w)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2169 w)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2170 words) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2171 string (mapconcat 'identity words sep))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2172 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2173 ;; Shorten if still to long |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2174 (setq string |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2175 (if (> (length string) maxchar) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2176 (substring string 0 maxchar) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2177 string)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2178 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2179 ;; Delete the final punctuation, if any |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2180 (if (and (not keep-fp) (string-match "\\s.+\\'" string)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2181 (setq string (replace-match "" nil nil string))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2182 string)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2183 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2184 (defun reftex-nicify-text (text) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2185 ;; Make TEXT nice for inclusion as context into label menu. |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2186 ;; 1. remove line breaks and extra white space |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2187 (while (string-match "[\n\r\t]\\|[ \t][ \t]+" text) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2188 (setq text (replace-match " " nil t text))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2189 ;; 2. cut before the next `\end{' or `\item' or `\\' |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2190 (if (string-match "\\(\\\\end{\\|\\\\item\\|\\\\\\\\\\).*" text) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2191 (setq text (replace-match "" nil t text))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2192 ;; 3. kill the embedded label |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2193 (if (string-match "\\\\label{[^}]*}" text) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2194 (setq text (replace-match "" nil t text))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2195 ;; 4. remove leading garbage |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2196 (if (string-match "\\`[ }]+" text) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2197 (setq text (replace-match "" nil t text))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2198 ;; 5. limit length |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2199 (cond |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2200 ((> (length text) 100) (substring text 0 100)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2201 ((= (length text) 0) (make-string 1 ?\ )) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2202 (t text))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2203 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2204 ;;; ========================================================================= |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2205 ;;; |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2206 ;;; Fontification and Highlighting |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2207 |
18050 | 2208 (defun reftex-use-fonts () |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
2209 ;; Return t if we can and want to use fonts. |
18050 | 2210 (and window-system |
2211 reftex-use-fonts | |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2212 (featurep 'font-lock))) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2213 |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2214 (defun reftex-refontify () |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2215 ;; Return t if we need to refontify context |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2216 (and (reftex-use-fonts) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2217 (or (eq t reftex-refontify-context) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2218 (and (eq 1 reftex-refontify-context) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2219 ;; Test of we use the font-lock version of x-symbol |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2220 (and (featurep 'x-symbol-tex) (not (boundp 'x-symbol-mode))))))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2221 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2222 (defvar font-lock-defaults-computed) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2223 (defun reftex-fontify-select-label-buffer (parent-buffer) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2224 ;; Fontify the `*RefTeX Select*' buffer. Buffer is temporarily renamed to |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2225 ;; start with none-SPC char, beacuse Font-Lock otherwise refuses operation. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2226 (run-hook-with-args 'reftex-pre-refontification-functions |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2227 parent-buffer 'reftex-ref) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2228 (let* ((oldname (buffer-name)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2229 (newname (concat "Fontify-me-" oldname))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2230 (unwind-protect |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2231 (progn |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2232 ;; Rename buffer temporarily to start w/o space (because of font-lock) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2233 (rename-buffer newname t) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2234 (cond |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2235 ((fboundp 'font-lock-default-fontify-region) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2236 ;; Good: we have the indirection functions |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2237 (set (make-local-variable 'font-lock-fontify-region-function) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2238 'reftex-select-font-lock-fontify-region) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2239 (let ((major-mode 'latex-mode)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2240 (font-lock-mode 1))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2241 ((fboundp 'font-lock-set-defaults-1) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2242 ;; Looks like the XEmacs font-lock stuff. |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
2243 ;; FIXME: this is still kind of a hack, but it works. |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2244 (set (make-local-variable 'font-lock-keywords) nil) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2245 (let ((major-mode 'latex-mode) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2246 (font-lock-defaults-computed nil)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2247 (font-lock-set-defaults-1) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2248 (reftex-select-font-lock-fontify-region (point-min) (point-max)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2249 (t |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2250 ;; Oops? |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2251 (message "Sorry: cannot refontify RefTeX Select buffer.")))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2252 (rename-buffer oldname)))) |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2253 |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2254 (defun reftex-select-font-lock-fontify-region (beg end &optional loudly) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2255 ;; Fontify a region, but only lines starting with a dot. |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2256 (let ((func (if (fboundp 'font-lock-default-fontify-region) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2257 'font-lock-default-fontify-region |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2258 'font-lock-fontify-region)) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2259 beg1 end1) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2260 (goto-char beg) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2261 (while (re-search-forward "^\\." end t) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2262 (setq beg1 (point) end1 (progn (skip-chars-forward "^\n") (point))) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2263 (funcall func beg1 end1 nil) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2264 (goto-char end1)))) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2265 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2266 (defun reftex-select-font-lock-unfontify (&rest ignore) t) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2267 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2268 (defun reftex-verified-face (&rest faces) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2269 ;; Return the first valid face in FACES, or nil if none is valid. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2270 ;; Also, when finding a nil element in FACES, return nil. This |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2271 ;; function is just a safety net to catch name changes of builtin |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2272 ;; fonts. Currently it is only used for reftex-label-face, which has |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2273 ;; as default font-lock-reference-face, which was recently renamed |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2274 ;; to font-lock-constant-face. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2275 (let (face) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2276 (catch 'exit |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2277 (while (setq face (pop faces)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2278 (if (featurep 'xemacs) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2279 (if (find-face face) (throw 'exit face)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2280 (if (facep face) (throw 'exit face))))))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2281 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2282 ;; Highlighting uses overlays. For XEmacs, we need the emulation. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2283 (if (featurep 'xemacs) (require 'overlay)) |
18050 | 2284 |
2285 ;; We keep a vector with several different overlays to do our highlighting. | |
20979
38e7bcbb3595
(reftex-toc-mode, reftex-select-label-mode):
Karl Heuer <kwzh@gnu.org>
parents:
20953
diff
changeset
|
2286 (defvar reftex-highlight-overlays [nil nil]) |
18050 | 2287 |
2288 ;; Initialize the overlays | |
2289 (aset reftex-highlight-overlays 0 (make-overlay 1 1)) | |
21114
3e8ab19bdccb
1998-03-08 Carsten Dominik <cd@gnu.org>
Carsten Dominik <dominik@science.uva.nl>
parents:
21075
diff
changeset
|
2290 (overlay-put (aref reftex-highlight-overlays 0) |
3e8ab19bdccb
1998-03-08 Carsten Dominik <cd@gnu.org>
Carsten Dominik <dominik@science.uva.nl>
parents:
21075
diff
changeset
|
2291 'face 'highlight) |
18050 | 2292 (aset reftex-highlight-overlays 1 (make-overlay 1 1)) |
21114
3e8ab19bdccb
1998-03-08 Carsten Dominik <cd@gnu.org>
Carsten Dominik <dominik@science.uva.nl>
parents:
21075
diff
changeset
|
2293 (overlay-put (aref reftex-highlight-overlays 1) |
3e8ab19bdccb
1998-03-08 Carsten Dominik <cd@gnu.org>
Carsten Dominik <dominik@science.uva.nl>
parents:
21075
diff
changeset
|
2294 'face reftex-cursor-selected-face) |
18050 | 2295 |
2296 ;; Two functions for activating and deactivation highlight overlays | |
2297 (defun reftex-highlight (index begin end &optional buffer) | |
2298 "Highlight a region with overlay INDEX." | |
2299 (move-overlay (aref reftex-highlight-overlays index) | |
2300 begin end (or buffer (current-buffer)))) | |
2301 (defun reftex-unhighlight (index) | |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2302 "Detach overlay INDEX." |
18050 | 2303 (delete-overlay (aref reftex-highlight-overlays index))) |
2304 | |
2305 (defun reftex-highlight-shall-die () | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
2306 ;; Function used in pre-command-hook to remove highlights. |
18050 | 2307 (remove-hook 'pre-command-hook 'reftex-highlight-shall-die) |
2308 (reftex-unhighlight 0)) | |
2309 | |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2310 ;;; ========================================================================= |
18050 | 2311 ;;; |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2312 ;;; Keybindings |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2313 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2314 ;; The default bindings in the mode map. |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2315 (loop for x in |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2316 '(("\C-c=" . reftex-toc) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2317 ("\C-c(" . reftex-label) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2318 ("\C-c)" . reftex-reference) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2319 ("\C-c[" . reftex-citation) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2320 ("\C-c<" . reftex-index) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2321 ("\C-c>" . reftex-display-index) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2322 ("\C-c/" . reftex-index-selection-or-word) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2323 ("\C-c\\" . reftex-index-phrase-selection-or-word) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2324 ("\C-c|" . reftex-index-visit-phrases-buffer) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2325 ("\C-c&" . reftex-view-crossref)) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2326 do (define-key reftex-mode-map (car x) (cdr x))) |
18050 | 2327 |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2328 ;; Bind `reftex-mouse-view-crossref' only when the key is still free |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2329 (if (featurep 'xemacs) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2330 (unless (key-binding [(shift button2)]) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2331 (define-key reftex-mode-map [(shift button2)] |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2332 'reftex-mouse-view-crossref)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2333 (unless (key-binding [(shift mouse-2)]) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2334 (define-key reftex-mode-map [(shift mouse-2)] |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2335 'reftex-mouse-view-crossref))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2336 |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2337 ;; Bind `reftex-view-crossref-from-bibtex' in BibTeX mode map |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2338 (eval-after-load |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2339 "bibtex" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2340 '(define-key bibtex-mode-map "\C-c&" 'reftex-view-crossref-from-bibtex)) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2341 |
18050 | 2342 ;; If the user requests so, she can have a few more bindings: |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2343 (when reftex-extra-bindings |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2344 (loop for x in |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2345 '(("\C-ct" . reftex-toc) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2346 ("\C-cl" . reftex-label) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2347 ("\C-cr" . reftex-reference) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2348 ("\C-cc" . reftex-citation) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2349 ("\C-cv" . reftex-view-crossref) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2350 ("\C-cg" . reftex-grep-document) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2351 ("\C-cs" . reftex-search-document)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2352 do (define-key reftex-mode-map (car x) (cdr x)))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2353 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2354 ;;; ========================================================================= |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2355 ;;; |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2356 ;;; Menu |
18050 | 2357 |
2358 ;; Define a menu for the menu bar if Emacs is running under X | |
2359 | |
2360 (require 'easymenu) | |
2361 | |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
2362 (easy-menu-define reftex-mode-menu reftex-mode-map |
18050 | 2363 "Menu used in RefTeX mode" |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2364 `("Ref" |
19660
fa3d4e7a76d9
(reftex-customize): Added call to customize browse.
Richard M. Stallman <rms@gnu.org>
parents:
18321
diff
changeset
|
2365 ["Table of Contents" reftex-toc t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2366 "--" |
19660
fa3d4e7a76d9
(reftex-customize): Added call to customize browse.
Richard M. Stallman <rms@gnu.org>
parents:
18321
diff
changeset
|
2367 ["\\label" reftex-label t] |
fa3d4e7a76d9
(reftex-customize): Added call to customize browse.
Richard M. Stallman <rms@gnu.org>
parents:
18321
diff
changeset
|
2368 ["\\ref" reftex-reference t] |
fa3d4e7a76d9
(reftex-customize): Added call to customize browse.
Richard M. Stallman <rms@gnu.org>
parents:
18321
diff
changeset
|
2369 ["\\cite" reftex-citation t] |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2370 ("\\index" |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2371 ["\\index" reftex-index t] |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2372 ["\\index{THIS}" reftex-index-selection-or-word t] |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2373 "--" |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2374 ["Add THIS to Index Phrases" reftex-index-phrase-selection-or-word t] |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2375 ["Visit Phrase Buffer" reftex-index-visit-phrases-buffer t] |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2376 ["Apply Phrases to Region" reftex-index-phrases-apply-to-region t] |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2377 "--" |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2378 ["Display the Index" reftex-display-index t]) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2379 "--" |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2380 ["View Crossref" reftex-view-crossref t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2381 "--" |
20177
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
2382 ("Parse Document" |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2383 ["One File" reftex-parse-one reftex-enable-partial-scans] |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2384 ["Entire Document" reftex-parse-all t] |
20177
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
2385 ["Save to File" (reftex-access-parse-file 'write) |
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
2386 (> (length (symbol-value reftex-docstruct-symbol)) 0)] |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2387 ["Restore from File" (reftex-access-parse-file 'restore) t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2388 "--" |
20177
6ebc3e300106
The menu now used toggle and radio for some items.
Karl Heuer <kwzh@gnu.org>
parents:
20102
diff
changeset
|
2389 ["Reset RefTeX Mode" reftex-reset-mode t]) |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2390 ("Global Actions" |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2391 ["Search Whole Document" reftex-search-document t] |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2392 ["Replace in Document" reftex-query-replace-document t] |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2393 ["Grep on Document" reftex-grep-document t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2394 "--" |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2395 ["Find Duplicate Labels" reftex-find-duplicate-labels t] |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2396 ["Change Label and Refs" reftex-change-label t] |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2397 ["Renumber Simple Labels" reftex-renumber-simple-labels t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2398 "--" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2399 ["Create TAGS File" reftex-create-tags-file t] |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2400 "--" |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
2401 ["Save Document" reftex-save-all-document-buffers t]) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2402 "--" |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2403 ("Options" |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2404 "PARSER" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2405 ["Partial Scans" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2406 (setq reftex-enable-partial-scans (not reftex-enable-partial-scans)) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2407 :style toggle :selected reftex-enable-partial-scans] |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2408 ["Auto-Save Parse Info" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2409 (setq reftex-save-parse-info (not reftex-save-parse-info)) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2410 :style toggle :selected reftex-save-parse-info] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2411 "--" |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2412 "CROSSREF INFO" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2413 ["Automatic Info" reftex-toggle-auto-view-crossref |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2414 :style toggle :selected reftex-auto-view-crossref-timer] |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2415 ["...in Echo Area" (setq reftex-auto-view-crossref t) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2416 :style radio :selected (eq reftex-auto-view-crossref t)] |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2417 ["...in Other Window" (setq reftex-auto-view-crossref 'window) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2418 :style radio :selected (eq reftex-auto-view-crossref 'window)] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2419 "--" |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2420 "MISC" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2421 ["AUC TeX Interface" reftex-toggle-plug-into-AUCTeX |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2422 :style toggle :selected reftex-plug-into-AUCTeX]) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2423 ("Reference Style" |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2424 ["Default" (setq reftex-vref-is-default nil |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2425 reftex-fref-is-default nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2426 :style radio :selected (not (or reftex-vref-is-default |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2427 reftex-fref-is-default))] |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2428 ["Varioref" (setq reftex-vref-is-default t |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2429 reftex-fref-is-default nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2430 :style radio :selected reftex-vref-is-default] |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2431 ["Fancyref" (setq reftex-fref-is-default t |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2432 reftex-vref-is-default nil) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2433 :style radio :selected reftex-fref-is-default]) |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2434 ("Citation Style" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2435 ,@(mapcar |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2436 (lambda (x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2437 (vector |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2438 (capitalize (symbol-name (car x))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2439 (list 'reftex-set-cite-format (list 'quote (car x))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2440 :style 'radio :selected |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2441 (list 'eq (list 'reftex-get-cite-format) (list 'quote (car x))))) |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2442 reftex-cite-format-builtin) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2443 "--" |
23995
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2444 "Sort Database Matches" |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2445 ["Not" (setq reftex-sort-bibtex-matches nil) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2446 :style radio :selected (eq reftex-sort-bibtex-matches nil)] |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2447 ["by Author" (setq reftex-sort-bibtex-matches 'author) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2448 :style radio :selected (eq reftex-sort-bibtex-matches 'author)] |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2449 ["by Year" (setq reftex-sort-bibtex-matches 'year) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2450 :style radio :selected (eq reftex-sort-bibtex-matches 'year)] |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2451 ["by Year, reversed" (setq reftex-sort-bibtex-matches 'reverse-year) |
a56b80c4166a
(reftex-section-levels): Allow negative levels.
Carsten Dominik <dominik@science.uva.nl>
parents:
23707
diff
changeset
|
2452 :style radio :selected (eq reftex-sort-bibtex-matches 'reverse-year)]) |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2453 ("Index Style" |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2454 ,@(mapcar |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2455 (lambda (x) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2456 (vector |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2457 (capitalize (symbol-name (car x))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2458 (list 'reftex-add-index-macros (list 'list (list 'quote (car x)))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2459 :style 'radio :selected |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2460 (list 'memq (list 'quote (car x)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2461 (list 'get 'reftex-docstruct-symbol |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2462 (list 'quote 'reftex-index-macros-style))))) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2463 reftex-index-macros-builtin)) |
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2464 "--" |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2465 ("Customize" |
23707
b0fe513da546
(reftex-finding-files): Group documentation fixed.
Carsten Dominik <dominik@science.uva.nl>
parents:
23344
diff
changeset
|
2466 ["Browse RefTeX Group" reftex-customize t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2467 "--" |
20829
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2468 ["Build Full Customize Menu" reftex-create-customize-menu |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2469 (fboundp 'customize-menu-create)]) |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2470 ("Documentation" |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2471 ["Info" reftex-info t] |
f9ac469887a8
(reftex-toc): Fixed bug with split-window. Using
Richard M. Stallman <rms@gnu.org>
parents:
20177
diff
changeset
|
2472 ["Commentary" reftex-show-commentary t]))) |
18050 | 2473 |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2474 (defun reftex-customize () |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2475 "Call the customize function with reftex as argument." |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2476 (interactive) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2477 (customize-browse 'reftex)) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2478 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2479 (defun reftex-create-customize-menu () |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2480 "Create a full customization menu for RefTeX, insert it into the menu." |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2481 (interactive) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2482 (if (fboundp 'customize-menu-create) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2483 (progn |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2484 (easy-menu-change |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2485 '("Ref") "Customize" |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2486 `(["Browse RefTeX group" reftex-customize t] |
25279
03cb8fb8ab28
(reftex-pop-to-bibtex-entry): Fixed
Carsten Dominik <dominik@science.uva.nl>
parents:
24898
diff
changeset
|
2487 "--" |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2488 ,(customize-menu-create 'reftex) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2489 ["Set" Custom-set t] |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2490 ["Save" Custom-save t] |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2491 ["Reset to Current" Custom-reset-current t] |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2492 ["Reset to Saved" Custom-reset-saved t] |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2493 ["Reset to Standard Settings" Custom-reset-standard t])) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2494 (message "\"Ref\"-menu now contains full customization menu")) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2495 (error "Cannot expand menu (outdated version of cus-edit.el)"))) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2496 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2497 (defun reftex-show-commentary () |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2498 "Use the finder to view the file documentation from `reftex.el'." |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2499 (interactive) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2500 (require 'finder) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2501 (finder-commentary "reftex.el")) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2502 |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2503 (defun reftex-info (&optional node) |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2504 "Read documentation for RefTeX in the info system. |
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2505 With optional NODE, go directly to that node." |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2506 (interactive) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2507 (require 'info) |
26910
489a5439b988
* reftex.el (reftex-compile-variables): respect new structure of
Carsten Dominik <dominik@science.uva.nl>
parents:
25806
diff
changeset
|
2508 (Info-goto-node (format "(reftex)%s" (or node "")))) |
22991
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2509 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2510 ;;; Install the kill-buffer and kill-emacs hooks ------------------------------ |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2511 |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2512 (add-hook 'kill-buffer-hook 'reftex-kill-buffer-hook) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2513 (add-hook 'kill-emacs-hook 'reftex-kill-emacs-hook) |
313091cd2751
(reftex-reparse-document): Renamed from `reftex-parse-document'.
Carsten Dominik <dominik@science.uva.nl>
parents:
22388
diff
changeset
|
2514 |
18050 | 2515 ;;; Run Hook ------------------------------------------------------------------ |
2516 | |
2517 (run-hooks 'reftex-load-hook) | |
2518 | |
2519 ;;; That's it! ---------------------------------------------------------------- | |
2520 | |
21114
3e8ab19bdccb
1998-03-08 Carsten Dominik <cd@gnu.org>
Carsten Dominik <dominik@science.uva.nl>
parents:
21075
diff
changeset
|
2521 (setq reftex-tables-dirty t) ; in case this file is evaluated by hand |
20102
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2522 (provide 'reftex) |
c00f010468c2
Using cl macros push, pop, when, unless throughout
Karl Heuer <kwzh@gnu.org>
parents:
19660
diff
changeset
|
2523 |
18050 | 2524 ;;;============================================================================ |
2525 | |
18321
0ed97be54a28
Changed all doc strings to comply with conventions.
Richard M. Stallman <rms@gnu.org>
parents:
18220
diff
changeset
|
2526 ;;; reftex.el ends here |