comparison lisp/textmodes/reftex-vars.el @ 65548:253cad16882d

Little fixes to remove compiler warnings reftex-index.el (reftex-query-index-phrase): More efficient use of markers.
author Carsten Dominik <dominik@science.uva.nl>
date Fri, 16 Sep 2005 10:01:33 +0000
parents 6fa71247b865
children e274642bf5d5 fa0da9b57058
comparison
equal deleted inserted replaced
65547:da6fcded2062 65548:253cad16882d
1 ;;; reftex-vars.el --- configuration variables for RefTeX 1 ;;; reftex-vars.el --- configuration variables for RefTeX
2 2 ;; Copyright (c) 1997, 1998, 1999, 2003, 2004, 2005
3 ;; Copyright (C) 1997, 1998, 1999, 2002, 2003, 2004, 3 ;; Free Software Foundation, Inc.
4 ;; 2005 Free Software Foundation, Inc.
5 4
6 ;; Author: Carsten Dominik <dominik@science.uva.nl> 5 ;; Author: Carsten Dominik <dominik@science.uva.nl>
7 ;; Version: 4.28 6 ;; Version: VERSIONTAG
8 7
9 ;; This file is part of GNU Emacs. 8 ;; This file is part of GNU Emacs.
10 9
11 ;; GNU Emacs is free software; you can redistribute it and/or modify 10 ;; GNU Emacs is free software; you can redistribute it and/or modify
12 ;; it under the terms of the GNU General Public License as published by 11 ;; it under the terms of the GNU General Public License as published by
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the 17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the
19 ;; GNU General Public License for more details. 18 ;; GNU General Public License for more details.
20 19
21 ;; You should have received a copy of the GNU General Public License 20 ;; You should have received a copy of the GNU General Public License
22 ;; along with GNU Emacs; see the file COPYING If not, write to the 21 ;; along with GNU Emacs; see the file COPYING If not, write to the
23 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
24 ;; Boston, MA 02110-1301, USA. 23 ;; Boston, MA 02111-1307, USA.
25 24
26 ;;; Commentary: 25 ;;; Commentary:
27 26
28 ;;; Code: 27 ;;; Code:
29 28 (eval-when-compile (defvar reftex-tables-dirty))
30 (eval-when-compile (require 'cl)) 29 (eval-when-compile (require 'cl))
31 (eval-and-compile 30 (eval-and-compile
32 (defvar reftex-tables-dirty)
33 (defun reftex-set-dirty (symbol value) 31 (defun reftex-set-dirty (symbol value)
34 (setq reftex-tables-dirty t) 32 (setq reftex-tables-dirty t)
35 (set symbol value))) 33 (set symbol value)))
36 34
37 ;; Define the two constants which are needed during compilation 35 ;; Define the two constants which are needed during compilation
100 "\\\\S" "\247" "Teile?" "Kapitel" "Kap\\." "Abschnitte?" 98 "\\\\S" "\247" "Teile?" "Kapitel" "Kap\\." "Abschnitte?"
101 "appendi\\(x\\|ces\\)" "App\\." "Anh\"?ange?" "Anh\\.")) 99 "appendi\\(x\\|ces\\)" "App\\." "Anh\"?ange?" "Anh\\."))
102 100
103 ("enumerate" ?i "item:" "~\\ref{%s}" item 101 ("enumerate" ?i "item:" "~\\ref{%s}" item
104 (regexp "items?" "Punkte?")) 102 (regexp "items?" "Punkte?"))
105 103
106 ("equation" ?e "eq:" "~(\\ref{%s})" t 104 ("equation" ?e "eq:" "~(\\ref{%s})" t
107 (regexp "equations?" "eqs?\\." "eqn\\." "Gleichung\\(en\\)?" "Gl\\.")) 105 (regexp "equations?" "eqs?\\." "eqn\\." "Gleichung\\(en\\)?" "Gl\\."))
108 ("eqnarray" ?e "eq:" nil eqnarray-like) 106 ("eqnarray" ?e "eq:" nil eqnarray-like)
109 107
110 ("figure" ?f "fig:" "~\\ref{%s}" caption 108 ("figure" ?f "fig:" "~\\ref{%s}" caption
111 (regexp "figure?[sn]?" "figs?\\." "Abbildung\\(en\\)?" "Abb\\.")) 109 (regexp "figure?[sn]?" "figs?\\." "Abbildung\\(en\\)?" "Abb\\."))
112 ("figure*" ?f nil nil caption) 110 ("figure*" ?f nil nil caption)
113 111
114 ("table" ?t "tab:" "~\\ref{%s}" caption 112 ("table" ?t "tab:" "~\\ref{%s}" caption
115 (regexp "tables?" "tab\\." "Tabellen?")) 113 (regexp "tables?" "tab\\." "Tabellen?"))
116 ("table*" ?t nil nil caption) 114 ("table*" ?t nil nil caption)
117 115
118 ("\\footnote[]{}" ?n "fn:" "~\\ref{%s}" 2 116 ("\\footnote[]{}" ?n "fn:" "~\\ref{%s}" 2
119 (regexp "footnotes?" "Fussnoten?")) 117 (regexp "footnotes?" "Fussnoten?"))
120 118
121 ("any" ?\ " " "~\\ref{%s}" nil) 119 ("any" ?\ " " "~\\ref{%s}" nil)
122 120
123 ;; The label macro is hard coded, but it *could* be defined like this: 121 ;; The label macro is hard coded, but it *could* be defined like this:
124 ;;("\\label{*}" nil nil nil nil) 122 ;;("\\label{*}" nil nil nil nil)
125 )) 123 ))
207 The following conventions are valid for all alist entries: 205 The following conventions are valid for all alist entries:
208 `?\C-m' should always point to a straight \\cite{%l} macro. 206 `?\C-m' should always point to a straight \\cite{%l} macro.
209 `?t' should point to a textual citation (citation as a noun). 207 `?t' should point to a textual citation (citation as a noun).
210 `?p' should point to a parenthetical citation.") 208 `?p' should point to a parenthetical citation.")
211 209
212 (defconst reftex-index-macros-builtin 210 (defconst reftex-index-macros-builtin
213 '((default "Default \\index and \\glossary macros" 211 '((default "Default \\index and \\glossary macros"
214 (("\\index{*}" "idx" ?i "" nil t) 212 (("\\index{*}" "idx" ?i "" nil t)
215 ("\\glossary{*}" "glo" ?g "" nil t))) 213 ("\\glossary{*}" "glo" ?g "" nil t)))
216 (multind "The multind.sty package" 214 (multind "The multind.sty package"
217 (("\\index{}{*}" 1 ?i "" nil t))) 215 (("\\index{}{*}" 1 ?i "" nil t)))
219 (("\\index[]{*}" 1 ?i "" nil t) 217 (("\\index[]{*}" 1 ?i "" nil t)
220 ("\\index*[]{*}" 1 ?I "" nil nil))) 218 ("\\index*[]{*}" 1 ?I "" nil nil)))
221 (Index-Shortcut "index.sty with \\shortindexingon" 219 (Index-Shortcut "index.sty with \\shortindexingon"
222 (("\\index[]{*}" 1 ?i "" nil t) 220 (("\\index[]{*}" 1 ?i "" nil t)
223 ("\\index*[]{*}" 1 ?I "" nil nil) 221 ("\\index*[]{*}" 1 ?I "" nil nil)
224 ("^[]{*}" 1 ?^ "" texmathp t) 222 ("^[]{*}" 1 ?^ "" texmathp t)
225 ("_[]{*}" 1 ?_ "" texmathp nil)))) 223 ("_[]{*}" 1 ?_ "" texmathp nil))))
226 "Builtin stuff for reftex-index-macros. 224 "Builtin stuff for reftex-index-macros.
227 Lower-case symbols correspond to a style file of the same name in the LaTeX 225 Lower-case symbols correspond to a style file of the same name in the LaTeX
228 distribution. Mixed-case symbols are convenience aliases.") 226 distribution. Mixed-case symbols are convenience aliases.")
229 ) 227 )
231 ;; Configuration Variables and User Options for RefTeX ------------------ 229 ;; Configuration Variables and User Options for RefTeX ------------------
232 230
233 (defgroup reftex nil 231 (defgroup reftex nil
234 "LaTeX label and citation support." 232 "LaTeX label and citation support."
235 :tag "RefTeX" 233 :tag "RefTeX"
236 :link '(url-link :tag "Home Page" 234 :link '(url-link :tag "Home Page"
237 "http://zon.astro.uva.nl/~dominik/Tools/") 235 "http://zon.astro.uva.nl/~dominik/Tools/")
238 :link '(emacs-commentary-link :tag "Commentary in reftex.el" "reftex.el") 236 :link '(emacs-commentary-link :tag "Commentary in reftex.el" "reftex.el")
239 :link '(custom-manual "(reftex)Top") 237 :link '(custom-manual "(reftex)Top")
240 :prefix "reftex-" 238 :prefix "reftex-"
241 :group 'tex) 239 :group 'tex)
326 dedicated TOC frame does exist, and do the recentering only in that frame. So 324 dedicated TOC frame does exist, and do the recentering only in that frame. So
327 when creating that frame (with \"d\" key in an ordinary TOC window), the 325 when creating that frame (with \"d\" key in an ordinary TOC window), the
328 automatic recentering is turned on. When the frame gets destroyed, automatic 326 automatic recentering is turned on. When the frame gets destroyed, automatic
329 recentering is turned off again. 327 recentering is turned off again.
330 328
331 This feature can be turned on and off from the menu 329 This feature can be turned on and off from the menu
332 \(Ref->Options)." 330 \(Ref->Options)."
333 :group 'reftex-table-of-contents-browser 331 :group 'reftex-table-of-contents-browser
334 :type '(choice 332 :type '(choice
335 (const :tag "never" nil) 333 (const :tag "never" nil)
336 (const :tag "always" t) 334 (const :tag "always" t)
337 (const :tag "in dedicated frame only" frame))) 335 (const :tag "in dedicated frame only" frame)))
338 336
339 (defcustom reftex-toc-split-windows-horizontally nil 337 (defcustom reftex-toc-split-windows-horizontally nil
340 "*Non-nil means, create TOC window by splitting window horizontally." 338 "*Non-nil means, create TOC window by splitting window horizontally."
341 :group 'reftex-table-of-contents-browser 339 :group 'reftex-table-of-contents-browser
342 :type 'boolean) 340 :type 'boolean)
343 341
425 423
426 (defcustom reftex-default-label-alist-entries 424 (defcustom reftex-default-label-alist-entries
427 '(amsmath endnotes fancybox floatfig longtable picinpar 425 '(amsmath endnotes fancybox floatfig longtable picinpar
428 rotating sidecap subfigure supertab wrapfig LaTeX) 426 rotating sidecap subfigure supertab wrapfig LaTeX)
429 "Default label alist specifications. LaTeX should always be the last entry. 427 "Default label alist specifications. LaTeX should always be the last entry.
430 The value of this variable is a list of symbols with associations in the 428 The value of this variable is a list of symbols with associations in the
431 constant `reftex-label-alist-builtin'. Check that constant for a full list 429 constant `reftex-label-alist-builtin'. Check that constant for a full list
432 of options." 430 of options."
433 :group 'reftex-defining-label-environments 431 :group 'reftex-defining-label-environments
434 :set 'reftex-set-dirty 432 :set 'reftex-set-dirty
435 :type `(set 433 :type `(set
624 reftex-label-alist-builtin))))) 622 reftex-label-alist-builtin)))))
625 623
626 (defcustom reftex-section-prefixes '((0 . "part:") (1 . "cha:") (t . "sec:")) 624 (defcustom reftex-section-prefixes '((0 . "part:") (1 . "cha:") (t . "sec:"))
627 "Prefixes for section labels. 625 "Prefixes for section labels.
628 When the label prefix given in an entry in `reftex-label-alist' contains `%S', 626 When the label prefix given in an entry in `reftex-label-alist' contains `%S',
629 this list is used to determine the correct prefix string depending on the 627 this list is used to determine the correct prefix string depending on the
630 current section level. 628 current section level.
631 The list is an alist, with each entry of the form (KEY . PREFIX) 629 The list is an alist, with each entry of the form (KEY . PREFIX)
632 Possible keys are sectioning macro names like `chapter', section levels 630 Possible keys are sectioning macro names like `chapter', section levels
633 \(as given in `reftex-section-levels'), and t for the default." 631 \(as given in `reftex-section-levels'), and t for the default."
634 :group 'reftex-defining-label-environments 632 :group 'reftex-defining-label-environments
686 (const :tag "Always" t) 684 (const :tag "Always" t)
687 (const :tag "Never" nil) 685 (const :tag "Never" nil)
688 (regexp) 686 (regexp)
689 (repeat :tag "List" 687 (repeat :tag "List"
690 (string :tag "prefix (with colon)")))) 688 (string :tag "prefix (with colon)"))))
691 689
692 (defcustom reftex-special-environment-functions nil 690 (defcustom reftex-special-environment-functions nil
693 "List of functions to be called when trying to figure out current environment. 691 "List of functions to be called when trying to figure out current environment.
694 These are special functions to detect \"environments\" which do not 692 These are special functions to detect \"environments\" which do not
695 start with \\begin and end with \\end. Some LaTeX packages seem to 693 start with \\begin and end with \\end. Some LaTeX packages seem to
696 use such non-standard ways to set up environment-like constructs. The 694 use such non-standard ways to set up environment-like constructs. The
732 730
733 (defun my-detect-linguex-list (bound) 731 (defun my-detect-linguex-list (bound)
734 (let ((pos (point)) p1) 732 (let ((pos (point)) p1)
735 (save-excursion 733 (save-excursion
736 ;; Search for any of the linguex item macros at the beginning of a line 734 ;; Search for any of the linguex item macros at the beginning of a line
737 (if (re-search-backward 735 (if (re-search-backward
738 \"^[ \\t]*\\\\(\\\\\\\\\\\\(ex\\\\|a\\\\|b\\\\|c\\\\|d\\\\|e\\\\|f\\\\)g?\\\\.\\\\)\" bound t) 736 \"^[ \\t]*\\\\(\\\\\\\\\\\\(ex\\\\|a\\\\|b\\\\|c\\\\|d\\\\|e\\\\|f\\\\)g?\\\\.\\\\)\" bound t)
739 (progn 737 (progn
740 (setq p1 (match-beginning 1)) 738 (setq p1 (match-beginning 1))
741 ;; Make sure no empty line or \\z. is between us and the item macro 739 ;; Make sure no empty line or \\z. is between us and the item macro
742 (if (re-search-forward \"\\n[ \\t]*\\n\\\\|\\\\\\\\z\\\\.\" pos t) 740 (if (re-search-forward \"\\n[ \\t]*\\n\\\\|\\\\\\\\z\\\\.\" pos t)
743 ;; Return nil because list was already closed 741 ;; Return nil because list was already closed
744 nil 742 nil
745 ;; OK, we got it 743 ;; OK, we got it
746 (cons \"linguex\" p1))) 744 (cons \"linguex\" p1)))
747 ;; Return nil for not found 745 ;; Return nil for not found
748 nil)))) 746 nil))))
749 747
750 3. Tell RefTeX to use this function 748 3. Tell RefTeX to use this function
751 749
752 (setq reftex-special-environment-functions '(my-detect-linguex-list)) 750 (setq reftex-special-environment-functions '(my-detect-linguex-list))
941 :group 'reftex-referencing-labels 939 :group 'reftex-referencing-labels
942 :type '(repeat (cons (character) (string)))) 940 :type '(repeat (cons (character) (string))))
943 941
944 (defcustom reftex-vref-is-default nil 942 (defcustom reftex-vref-is-default nil
945 "*Non-nil means, the varioref macro \\vref is used as default. 943 "*Non-nil means, the varioref macro \\vref is used as default.
946 In the selection buffer, the `v' key toggles the reference macro between 944 In the selection buffer, the `v' key toggles the reference macro between
947 `\\ref' and `\\vref'. The value of this variable determines the default 945 `\\ref' and `\\vref'. The value of this variable determines the default
948 which is active when entering the selection process. 946 which is active when entering the selection process.
949 Instead of nil or t, this may also be a string of type letters indicating 947 Instead of nil or t, this may also be a string of type letters indicating
950 the label types for which it should be true." 948 the label types for which it should be true."
951 :group 'reftex-referencing-labels 949 :group 'reftex-referencing-labels
952 :type `(choice :tag "\\vref is default macro" ,@reftex-tmp)) 950 :type `(choice :tag "\\vref is default macro" ,@reftex-tmp))
953 951
954 (defcustom reftex-fref-is-default nil 952 (defcustom reftex-fref-is-default nil
955 "*Non-nil means, the fancyref macro \\fref is used as default. 953 "*Non-nil means, the fancyref macro \\fref is used as default.
956 In the selection buffer, the `V' key toggles the reference macro between 954 In the selection buffer, the `V' key toggles the reference macro between
957 `\\ref', `\\fref' and `\\Fref'. The value of this variable determines 955 `\\ref', `\\fref' and `\\Fref'. The value of this variable determines
958 the default which is active when entering the selection process. 956 the default which is active when entering the selection process.
959 Instead of nil or t, this may also be a string of type letters indicating 957 Instead of nil or t, this may also be a string of type letters indicating
960 the label types for which it should be true." 958 the label types for which it should be true."
961 :group 'reftex-referencing-labels 959 :group 'reftex-referencing-labels
975 :group 'reftex-referencing-labels 973 :group 'reftex-referencing-labels
976 :type 'boolean) 974 :type 'boolean)
977 975
978 (defcustom reftex-format-ref-function nil 976 (defcustom reftex-format-ref-function nil
979 "Function which produces the string to insert as a reference. 977 "Function which produces the string to insert as a reference.
980 Normally should be nil, because the format to insert a reference can 978 Normally should be nil, because the format to insert a reference can
981 already be specified in `reftex-label-alist'. 979 already be specified in `reftex-label-alist'.
982 This hook also is used by the special commands to insert `\\vref' and `\\fref' 980 This hook also is used by the special commands to insert `\\vref' and `\\fref'
983 references, so even if you set this, your setting will be ignored by 981 references, so even if you set this, your setting will be ignored by
984 the special commands. 982 the special commands.
985 The function will be called with two arguments, the LABEL and the DEFAULT 983 The function will be called with two arguments, the LABEL and the DEFAULT
1056 It is also possible to access all other BibTeX database fields: 1054 It is also possible to access all other BibTeX database fields:
1057 %b booktitle %c chapter %d edition %h howpublished 1055 %b booktitle %c chapter %d edition %h howpublished
1058 %i institution %j journal %k key %m month 1056 %i institution %j journal %k key %m month
1059 %n number %o organization %p pages %P first page 1057 %n number %o organization %p pages %P first page
1060 %r address %s school %u publisher %t title 1058 %r address %s school %u publisher %t title
1061 %v volume %y year 1059 %v volume %y year
1062 %B booktitle, abbreviated %T title, abbreviated 1060 %B booktitle, abbreviated %T title, abbreviated
1063 1061
1064 Usually, only %l is needed. The other stuff is mainly for the echo area 1062 Usually, only %l is needed. The other stuff is mainly for the echo area
1065 display, and for (setq reftex-comment-citations t). 1063 display, and for (setq reftex-comment-citations t).
1066 1064
1067 %< as a special operator kills punctuation and space around it after the 1065 %< as a special operator kills punctuation and space around it after the
1068 string has been formatted. 1066 string has been formatted.
1069 1067
1070 A pair of square brackets indicates an optional argument, and RefTeX 1068 A pair of square brackets indicates an optional argument, and RefTeX
1071 will prompt for the values of these arguments. 1069 will prompt for the values of these arguments.
1072 1070
1077 If `reftex-cite-format' is an alist of characters and strings, the user 1075 If `reftex-cite-format' is an alist of characters and strings, the user
1078 will be prompted for a character to select one of the possible format 1076 will be prompted for a character to select one of the possible format
1079 strings. 1077 strings.
1080 In order to configure this variable, you can either set 1078 In order to configure this variable, you can either set
1081 `reftex-cite-format' directly yourself or set it to the SYMBOL of one of 1079 `reftex-cite-format' directly yourself or set it to the SYMBOL of one of
1082 the predefined styles. The predefined symbols are those which have an 1080 the predefined styles. The predefined symbols are those which have an
1083 association in the constant `reftex-cite-format-builtin'. 1081 association in the constant `reftex-cite-format-builtin'.
1084 E.g.: (setq reftex-cite-format 'natbib)" 1082 E.g.: (setq reftex-cite-format 'natbib)"
1085 :group 'reftex-citation-support 1083 :group 'reftex-citation-support
1086 :type 1084 :type
1087 `(choice 1085 `(choice
1171 (string :tag "Separator for last name in list") 1169 (string :tag "Separator for last name in list")
1172 (string :tag "string used as et al. "))) 1170 (string :tag "string used as et al. ")))
1173 1171
1174 (defcustom reftex-format-cite-function nil 1172 (defcustom reftex-format-cite-function nil
1175 "Function which produces the string to insert as a citation. 1173 "Function which produces the string to insert as a citation.
1176 Normally should be nil, because the format to insert a reference can 1174 Normally should be nil, because the format to insert a reference can
1177 already be specified in `reftex-cite-format'. 1175 already be specified in `reftex-cite-format'.
1178 The function will be called with two arguments, the CITATION KEY and the 1176 The function will be called with two arguments, the CITATION KEY and the
1179 DEFAULT FORMAT, which is taken from `reftex-cite-format'. The function 1177 DEFAULT FORMAT, which is taken from `reftex-cite-format'. The function
1180 should return the string to insert into the buffer." 1178 should return the string to insert into the buffer."
1181 :group 'reftex-citation-support 1179 :group 'reftex-citation-support
1254 with a sufficiently new version of AUCTeX, you should not set the 1252 with a sufficiently new version of AUCTeX, you should not set the
1255 package here." 1253 package here."
1256 :group 'reftex-index-support 1254 :group 'reftex-index-support
1257 :set 'reftex-set-dirty 1255 :set 'reftex-set-dirty
1258 :type `(list 1256 :type `(list
1259 (repeat 1257 (repeat
1260 :inline t 1258 :inline t
1261 (list :value ("" "idx" ?a "" nil) 1259 (list :value ("" "idx" ?a "" nil)
1262 (string :tag "Macro with args") 1260 (string :tag "Macro with args")
1263 (choice :tag "Index Tag " 1261 (choice :tag "Index Tag "
1264 (string) 1262 (string)
1281 (defcustom reftex-index-default-macro '(?i "idx") 1279 (defcustom reftex-index-default-macro '(?i "idx")
1282 "The default index macro for \\[reftex-index-selection-or-word]. 1280 "The default index macro for \\[reftex-index-selection-or-word].
1283 This is a list with (MACRO-KEY DEFAULT-TAG). 1281 This is a list with (MACRO-KEY DEFAULT-TAG).
1284 1282
1285 MACRO-KEY: Character identifying an index macro - see `reftex-index-macros'. 1283 MACRO-KEY: Character identifying an index macro - see `reftex-index-macros'.
1286 DEFAULT-TAG: This is the tag to be used if the macro requires a TAG argument. 1284 DEFAULT-TAG: This is the tag to be used if the macro requires a TAG argument.
1287 When this is nil and a TAG is needed, RefTeX will ask for it. 1285 When this is nil and a TAG is needed, RefTeX will ask for it.
1288 When this is the empty string and the TAG argument of the index 1286 When this is the empty string and the TAG argument of the index
1289 macro is optional, the TAG argument will be omitted." 1287 macro is optional, the TAG argument will be omitted."
1290 :group 'reftex-index-support 1288 :group 'reftex-index-support
1291 :type '(list 1289 :type '(list
1422 :group 'reftex-index-support 1420 :group 'reftex-index-support
1423 :type '(string :tag "Capital letters")) 1421 :type '(string :tag "Capital letters"))
1424 1422
1425 (defcustom reftex-index-include-context nil 1423 (defcustom reftex-index-include-context nil
1426 "*Non-nil means, display the index definition context in the index buffer. 1424 "*Non-nil means, display the index definition context in the index buffer.
1427 This flag may also be toggled from the index buffer with the `c' key." 1425 This flag may also be toggled from the index buffer with the `c' key."
1428 :group 'reftex-index-support 1426 :group 'reftex-index-support
1429 :type 'boolean) 1427 :type 'boolean)
1430 1428
1431 (defcustom reftex-index-follow-mode nil 1429 (defcustom reftex-index-follow-mode nil
1432 "*Non-nil means, point in *Index* buffer will cause other window to follow. 1430 "*Non-nil means, point in *Index* buffer will cause other window to follow.
1445 "Macros which can be used for the display of cross references. 1443 "Macros which can be used for the display of cross references.
1446 This is used when `reftex-view-crossref' is called with point in an 1444 This is used when `reftex-view-crossref' is called with point in an
1447 argument of a macro. Note that crossref viewing for citations, 1445 argument of a macro. Note that crossref viewing for citations,
1448 references (both ways) and index entries is hard-coded. This variable 1446 references (both ways) and index entries is hard-coded. This variable
1449 is only to configure additional structures for which crossreference 1447 is only to configure additional structures for which crossreference
1450 viewing can be useful. Each entry has the structure 1448 viewing can be useful. Each entry has the structure
1451 1449
1452 \(MACRO-RE SEARCH-RE HIGHLIGHT). 1450 \(MACRO-RE SEARCH-RE HIGHLIGHT).
1453 1451
1454 MACRO-RE is matched against the macro. SEARCH-RE is the regexp used 1452 MACRO-RE is matched against the macro. SEARCH-RE is the regexp used
1455 to search for cross references. `%s' in this regexp is replaced with 1453 to search for cross references. `%s' in this regexp is replaced with
1466 Whenever point is idle for more than `reftex-idle-time' seconds on the 1464 Whenever point is idle for more than `reftex-idle-time' seconds on the
1467 argument of a \\ref or \\cite macro, and no other message is being 1465 argument of a \\ref or \\cite macro, and no other message is being
1468 displayed, the echo area will display information about that cross 1466 displayed, the echo area will display information about that cross
1469 reference. You can also set the variable to the symbol `window'. In 1467 reference. You can also set the variable to the symbol `window'. In
1470 this case a small temporary window is used for the display. 1468 this case a small temporary window is used for the display.
1471 This feature can be turned on and off from the menu 1469 This feature can be turned on and off from the menu
1472 \(Ref->Options)." 1470 \(Ref->Options)."
1473 :group 'reftex-viewing-cross-references 1471 :group 'reftex-viewing-cross-references
1474 :type '(choice (const :tag "off" nil) 1472 :type '(choice (const :tag "off" nil)
1475 (const :tag "in Echo Area" t) 1473 (const :tag "in Echo Area" t)
1476 (const :tag "in Other Window" window))) 1474 (const :tag "in Other Window" window)))
1512 "*List of specifications how to retrieve the search path for TeX files. 1510 "*List of specifications how to retrieve the search path for TeX files.
1513 Several entries are possible. 1511 Several entries are possible.
1514 - If an element is the name of an environment variable, its content is used. 1512 - If an element is the name of an environment variable, its content is used.
1515 - If an element starts with an exclamation mark, it is used as a command 1513 - If an element starts with an exclamation mark, it is used as a command
1516 to retrieve the path. A typical command with the kpathsearch library would 1514 to retrieve the path. A typical command with the kpathsearch library would
1517 be `!kpsewhich -show-path=.tex'. 1515 be `!kpsewhich -show-path=.tex'.
1518 - Otherwise the element itself is interpreted as a path. 1516 - Otherwise the element itself is interpreted as a path.
1519 Multiple directories can be separated by the system dependent `path-separator'. 1517 Multiple directories can be separated by the system dependent `path-separator'.
1520 Directories ending in `//' or `!!' will be expanded recursively. 1518 Directories ending in `//' or `!!' will be expanded recursively.
1521 See also `reftex-use-external-file-finders'." 1519 See also `reftex-use-external-file-finders'."
1522 :group 'reftex-finding-files 1520 :group 'reftex-finding-files
1527 "*List of specifications how to retrieve search path for .bib database files. 1525 "*List of specifications how to retrieve search path for .bib database files.
1528 Several entries are possible. 1526 Several entries are possible.
1529 - If an element is the name of an environment variable, its content is used. 1527 - If an element is the name of an environment variable, its content is used.
1530 - If an element starts with an exclamation mark, it is used as a command 1528 - If an element starts with an exclamation mark, it is used as a command
1531 to retrieve the path. A typical command with the kpathsearch library would 1529 to retrieve the path. A typical command with the kpathsearch library would
1532 be `!kpsewhich -show-path=.bib'. 1530 be `!kpsewhich -show-path=.bib'.
1533 - Otherwise the element itself is interpreted as a path. 1531 - Otherwise the element itself is interpreted as a path.
1534 Multiple directories can be separated by the system dependent `path-separator'. 1532 Multiple directories can be separated by the system dependent `path-separator'.
1535 Directories ending in `//' or `!!' will be expanded recursively. 1533 Directories ending in `//' or `!!' will be expanded recursively.
1536 See also `reftex-use-external-file-finders'." 1534 See also `reftex-use-external-file-finders'."
1537 :group 'reftex-citation-support 1535 :group 'reftex-citation-support
1572 "*Non-nil means, use external programs to find files. 1570 "*Non-nil means, use external programs to find files.
1573 Normally, RefTeX searches the paths given in the environment variables 1571 Normally, RefTeX searches the paths given in the environment variables
1574 TEXINPUTS and BIBINPUTS to find TeX files and BibTeX database files. 1572 TEXINPUTS and BIBINPUTS to find TeX files and BibTeX database files.
1575 With this option turned on, it calls an external program specified in the 1573 With this option turned on, it calls an external program specified in the
1576 option `reftex-external-file-finders' instead. As a side effect, 1574 option `reftex-external-file-finders' instead. As a side effect,
1577 the variables `reftex-texpath-environment-variables' and 1575 the variables `reftex-texpath-environment-variables' and
1578 `reftex-bibpath-environment-variables' will be ignored." 1576 `reftex-bibpath-environment-variables' will be ignored."
1579 :group 'reftex-finding-files 1577 :group 'reftex-finding-files
1580 :type 'boolean) 1578 :type 'boolean)
1581 1579
1582 (defcustom reftex-external-file-finders '(("tex" . "kpsewhich -format=.tex %f") 1580 (defcustom reftex-external-file-finders '(("tex" . "kpsewhich -format=.tex %f")
1663 :type 'boolean) 1661 :type 'boolean)
1664 1662
1665 (defcustom reftex-save-parse-info nil 1663 (defcustom reftex-save-parse-info nil
1666 "*Non-nil means, save information gathered with parsing in a file. 1664 "*Non-nil means, save information gathered with parsing in a file.
1667 The file MASTER.rel in the same directory as MASTER.tex is used to save the 1665 The file MASTER.rel in the same directory as MASTER.tex is used to save the
1668 information. When this variable is t, 1666 information. When this variable is t,
1669 - accessing the parsing information for the first time in an editing session 1667 - accessing the parsing information for the first time in an editing session
1670 will read that file (if available) instead of parsing the document. 1668 will read that file (if available) instead of parsing the document.
1671 - exiting Emacs or killing a buffer in reftex-mode will cause a new version 1669 - exiting Emacs or killing a buffer in reftex-mode will cause a new version
1672 of the file to be written." 1670 of the file to be written."
1673 :group 'reftex-optimizations-for-large-documents 1671 :group 'reftex-optimizations-for-large-documents
1856 See the AUCTeX documentation for more information. 1854 See the AUCTeX documentation for more information.
1857 RefTeX uses `fset' to take over the function calls. Changing the variable 1855 RefTeX uses `fset' to take over the function calls. Changing the variable
1858 may require a restart of Emacs in order to become effective." 1856 may require a restart of Emacs in order to become effective."
1859 :group 'reftex-miscellaneous-configurations 1857 :group 'reftex-miscellaneous-configurations
1860 :group 'LaTeX 1858 :group 'LaTeX
1861 :type '(choice 1859 :type '(choice
1862 (const :tag "No plug-ins" nil) 1860 (const :tag "No plug-ins" nil)
1863 (const :tag "All possible plug-ins" t) 1861 (const :tag "All possible plug-ins" t)
1864 (list 1862 (list
1865 :tag "Individual choice" 1863 :tag "Individual choice"
1866 :value (t t t t t) 1864 :value (t t t t t)