Mercurial > emacs
comparison man/reftex.texi @ 90072:cb67264d6096
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-2
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-83
- miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-84
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-3
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-4
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-5
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-6
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-11
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-12
Remove "-face" suffix from lazy-highlight face name
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-13
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-16
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-17
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-18
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-21
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-22
<no summary provided>
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-23
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-39
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-40
Fix regressions from latest reftex update
* miles@gnu.org--gnu-2005/gnus--rel--5.10--base-0
tag of miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-82
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-1
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-2
Merge from miles@gnu.org--gnu-2004
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-3
Merge from emacs--cvs-trunk--0
author | Miles Bader <miles@gnu.org> |
---|---|
date | Sun, 16 Jan 2005 03:40:12 +0000 |
parents | fb79180b618d a588c86a429c |
children | f8a7a9ba3d08 |
comparison
equal
deleted
inserted
replaced
90071:f6b4d0ebf147 | 90072:cb67264d6096 |
---|---|
3 @setfilename ../info/reftex | 3 @setfilename ../info/reftex |
4 @settitle RefTeX User Manual | 4 @settitle RefTeX User Manual |
5 @synindex ky cp | 5 @synindex ky cp |
6 @syncodeindex vr cp | 6 @syncodeindex vr cp |
7 @syncodeindex fn cp | 7 @syncodeindex fn cp |
8 @set VERSION 4.19 | 8 |
9 @set EDITION 4.19 | 9 @c Version and Contact Info |
10 @set DATE August 2002 | 10 @set VERSION 4.24 |
11 @set EDITION 4.24 | |
12 @set DATE August 2004 | |
13 @set AUCTEXSITE @uref{http://www.nongnu.org/auctex/,AUCTeX distribution site} | |
14 @set MAINTAINERSITE @uref{http://www.astro.uva.nl/~dominik/Tools/,maintainers webpage} | |
15 @set MAINTAINER Carsten Dominik | |
16 @set MAINTAINEREMAIL @email{dominik@@science.uva.nl} | |
17 @set MAINTAINERCONTACT @uref{mailto:dominik@@science.uva.nl,contact the maintainer} | |
18 @set XEMACSFTP @uref{ftp://ftp.xemacs.org/pub/xemacs/packages/,XEmacs ftp site}. | |
11 @c %**end of header | 19 @c %**end of header |
12 | 20 |
13 @copying | 21 @copying |
14 This file documents @b{Ref@TeX{}}, a package to do labels, references, | 22 This file documents @b{Ref@TeX{}}, a package to do labels, references, |
15 citations and indices for LaTeX documents with Emacs. | 23 citations and indices for LaTeX documents with Emacs. |
16 | 24 |
17 This is edition @value{EDITION} of the @b{Ref@TeX{}} User Manual for | 25 This is edition @value{EDITION} of the @b{Ref@TeX{}} User Manual for |
18 @b{Ref@TeX{}} @value{VERSION}. | 26 @b{Ref@TeX{}} @value{VERSION} |
19 | 27 |
20 Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. | 28 Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. |
21 | 29 |
22 @quotation | 30 @quotation |
23 Permission is granted to copy, distribute and/or modify this document | 31 Permission is granted to copy, distribute and/or modify this document |
71 | 79 |
72 @ifnottex | 80 @ifnottex |
73 @node Top,,,(dir) | 81 @node Top,,,(dir) |
74 | 82 |
75 @b{Ref@TeX{}} is a package for managing Labels, References, | 83 @b{Ref@TeX{}} is a package for managing Labels, References, |
76 Citations and index entries with GNU Emacs.@refill | 84 Citations and index entries with GNU Emacs. |
77 | 85 |
78 Don't be discouraged by the size of this manual, which covers | 86 Don't be discouraged by the size of this manual, which covers |
79 @b{Ref@TeX{}} in great depth. All you need to know to use | 87 @b{Ref@TeX{}} in great depth. All you need to know to use |
80 @b{Ref@TeX{}} can be summarized on two pages (@pxref{RefTeX in a | 88 @b{Ref@TeX{}} can be summarized on two pages (@pxref{RefTeX in a |
81 Nutshell}). You can go back later to other parts of this document when | 89 Nutshell}). You can go back later to other parts of this document when |
82 needed.@refill | 90 needed. |
83 | 91 |
84 @menu | 92 @menu |
85 * Introduction:: Quick-Start information. | 93 * Introduction:: Quick-Start information. |
86 | 94 |
87 * Table of Contents:: A Tool to move around quickly. | 95 * Table of Contents:: A Tool to move around quickly. |
143 * Creating Citations:: How to create them. | 151 * Creating Citations:: How to create them. |
144 * Citation Styles:: Natbib, Harvard, Chicago and Co. | 152 * Citation Styles:: Natbib, Harvard, Chicago and Co. |
145 * Citation Info:: View the corresponding database entry. | 153 * Citation Info:: View the corresponding database entry. |
146 * Chapterbib and Bibunits:: Multiple bibliographies in a Document. | 154 * Chapterbib and Bibunits:: Multiple bibliographies in a Document. |
147 * Citations Outside LaTeX:: How to make citations in Emails etc. | 155 * Citations Outside LaTeX:: How to make citations in Emails etc. |
156 * BibTeX Database Subsets:: Extract parts of a big database. | |
148 | 157 |
149 Index Support | 158 Index Support |
150 | 159 |
151 * Creating Index Entries:: Macros and completion of entries. | 160 * Creating Index Entries:: Macros and completion of entries. |
152 * The Index Phrases File:: A special file for global indexing. | 161 * The Index Phrases File:: A special file for global indexing. |
194 itself round 4 LaTeX macros: @code{\label}, @code{\ref}, @code{\cite}, | 203 itself round 4 LaTeX macros: @code{\label}, @code{\ref}, @code{\cite}, |
195 and @code{\index}. Using these macros usually requires looking up | 204 and @code{\index}. Using these macros usually requires looking up |
196 different parts of the document and searching through BibTeX database | 205 different parts of the document and searching through BibTeX database |
197 files. @b{Ref@TeX{}} automates these time--consuming tasks almost | 206 files. @b{Ref@TeX{}} automates these time--consuming tasks almost |
198 entirely. It also provides functions to display the structure of a | 207 entirely. It also provides functions to display the structure of a |
199 document and to move around in this structure quickly.@refill | 208 document and to move around in this structure quickly. |
200 | 209 |
201 @iftex | 210 @iftex |
202 Don't be discouraged by the size of this manual, which covers @b{Ref@TeX{}} | 211 Don't be discouraged by the size of this manual, which covers @b{Ref@TeX{}} |
203 in great depth. All you need to know to use @b{Ref@TeX{}} can be | 212 in great depth. All you need to know to use @b{Ref@TeX{}} can be |
204 summarized on two pages (@pxref{RefTeX in a Nutshell}). You can go | 213 summarized on two pages (@pxref{RefTeX in a Nutshell}). You can go |
215 | 224 |
216 @node Installation, RefTeX in a Nutshell, , Introduction | 225 @node Installation, RefTeX in a Nutshell, , Introduction |
217 @section Installation | 226 @section Installation |
218 @cindex Installation | 227 @cindex Installation |
219 | 228 |
220 @b{Ref@TeX{}} is bundled and pre--installed with Emacs since version 20.2. | 229 @b{Ref@TeX{}} is bundled and pre--installed with Emacs since version |
221 It was also bundled and pre--installed with XEmacs 19.16--20.x. XEmacs | 230 20.2. It was also bundled and pre--installed with XEmacs 19.16--20.x. |
222 21.x users want to install the corresponding plug-in package which is | 231 XEmacs 21.x users want to install the corresponding plug-in package |
223 available from the | 232 which is available from the @value{XEMACSFTP}. See the XEmacs 21.x |
224 @uref{ftp://ftp.xemacs.org/pub/xemacs/packages/,XEmacs ftp site}. See | 233 documentation on package installation for details. |
225 the XEmacs 21.x documentation on package installation for | |
226 details.@refill | |
227 | 234 |
228 Users of earlier Emacs distributions (including Emacs 19) can get a copy | 235 Users of earlier Emacs distributions (including Emacs 19) can get a copy |
229 of the @b{Ref@TeX{}} distribution from the maintainers web-page. | 236 of the @b{Ref@TeX{}} distribution from the maintainers web-page. |
230 @xref{Imprint}, for more information.@refill | 237 @xref{Imprint}, for more information. |
231 | 238 |
232 @section Environment | 239 @section Environment |
233 @cindex Finding files | 240 @cindex Finding files |
234 @cindex BibTeX database files, not found | 241 @cindex BibTeX database files, not found |
235 @cindex TeX files, not found | 242 @cindex TeX files, not found |
252 @findex reftex-mode | 259 @findex reftex-mode |
253 @vindex LaTeX-mode-hook | 260 @vindex LaTeX-mode-hook |
254 @vindex latex-mode-hook | 261 @vindex latex-mode-hook |
255 To turn @b{Ref@TeX{}} Mode on and off in a particular buffer, use | 262 To turn @b{Ref@TeX{}} Mode on and off in a particular buffer, use |
256 @kbd{M-x reftex-mode}. To turn on @b{Ref@TeX{}} Mode for all LaTeX | 263 @kbd{M-x reftex-mode}. To turn on @b{Ref@TeX{}} Mode for all LaTeX |
257 files, add the following lines to your @file{.emacs} file:@refill | 264 files, add the following lines to your @file{.emacs} file: |
258 | 265 |
259 @example | 266 @example |
260 (add-hook 'LaTeX-mode-hook 'turn-on-reftex) ; with AUCTeX LaTeX mode | 267 (add-hook 'LaTeX-mode-hook 'turn-on-reftex) ; with AUCTeX LaTeX mode |
261 (add-hook 'latex-mode-hook 'turn-on-reftex) ; with Emacs latex mode | 268 (add-hook 'latex-mode-hook 'turn-on-reftex) ; with Emacs latex mode |
262 @end example | 269 @end example |
273 @item | 280 @item |
274 @b{Table of Contents}@* Typing @kbd{C-c =} (@code{reftex-toc}) will show | 281 @b{Table of Contents}@* Typing @kbd{C-c =} (@code{reftex-toc}) will show |
275 a table of contents of the document. This buffer can display sections, | 282 a table of contents of the document. This buffer can display sections, |
276 labels and index entries defined in the document. From the buffer, you | 283 labels and index entries defined in the document. From the buffer, you |
277 can jump quickly to every part of your document. Press @kbd{?} to get | 284 can jump quickly to every part of your document. Press @kbd{?} to get |
278 help.@refill | 285 help. |
279 | 286 |
280 @item | 287 @item |
281 @b{Labels and References}@* @b{Ref@TeX{}} helps to create unique labels | 288 @b{Labels and References}@* @b{Ref@TeX{}} helps to create unique labels |
282 and to find the correct key for references quickly. It distinguishes | 289 and to find the correct key for references quickly. It distinguishes |
283 labels for different environments, knows about all standard | 290 labels for different environments, knows about all standard |
284 environments (and many others), and can be configured to recognize any | 291 environments (and many others), and can be configured to recognize any |
285 additional labeled environments you have defined yourself (variable | 292 additional labeled environments you have defined yourself (variable |
286 @code{reftex-label-alist}).@refill | 293 @code{reftex-label-alist}). |
287 | 294 |
288 @itemize @bullet | 295 @itemize @bullet |
289 @item | 296 @item |
290 @b{Creating Labels}@* | 297 @b{Creating Labels}@* |
291 Type @kbd{C-c (} (@code{reftex-label}) to insert a label at point. | 298 Type @kbd{C-c (} (@code{reftex-label}) to insert a label at point. |
295 derive a label from context (default for section labels) | 302 derive a label from context (default for section labels) |
296 @item | 303 @item |
297 prompt for a label string (default for figures and tables) or | 304 prompt for a label string (default for figures and tables) or |
298 @item | 305 @item |
299 insert a simple label made of a prefix and a number (all other | 306 insert a simple label made of a prefix and a number (all other |
300 environments)@refill | 307 environments) |
301 @end itemize | 308 @end itemize |
302 @noindent | 309 @noindent |
303 Which labels are created how is configurable with the variable | 310 Which labels are created how is configurable with the variable |
304 @code{reftex-insert-label-flags}.@refill | 311 @code{reftex-insert-label-flags}. |
305 | 312 |
306 @item | 313 @item |
307 @b{Referencing Labels}@* To make a reference, type @kbd{C-c )} | 314 @b{Referencing Labels}@* To make a reference, type @kbd{C-c )} |
308 (@code{reftex-reference}). This shows an outline of the document with | 315 (@code{reftex-reference}). This shows an outline of the document with |
309 all labels of a certain type (figure, equation,...) and some label | 316 all labels of a certain type (figure, equation,...) and some label |
310 context. Selecting a label inserts a @code{\ref@{@var{label}@}} macro | 317 context. Selecting a label inserts a @code{\ref@{@var{label}@}} macro |
311 into the original buffer.@refill | 318 into the original buffer. |
312 @end itemize | 319 @end itemize |
313 | 320 |
314 @item | 321 @item |
315 @b{Citations}@* | 322 @b{Citations}@* |
316 Typing @kbd{C-c [} (@code{reftex-citation}) will let you specify a | 323 Typing @kbd{C-c [} (@code{reftex-citation}) will let you specify a |
317 regular expression to search in current BibTeX database files (as | 324 regular expression to search in current BibTeX database files (as |
318 specified in the @code{\bibliography} command) and pull out a list of | 325 specified in the @code{\bibliography} command) and pull out a list of |
319 matches for you to choose from. The list is @emph{formatted} and | 326 matches for you to choose from. The list is @emph{formatted} and |
320 sorted. The selected article is referenced as @samp{\cite@{@var{key}@}} | 327 sorted. The selected article is referenced as @samp{\cite@{@var{key}@}} |
321 (see the variable @code{reftex-cite-format} if you want to insert | 328 (see the variable @code{reftex-cite-format} if you want to insert |
322 different macros).@refill | 329 different macros). |
323 | 330 |
324 @item | 331 @item |
325 @b{Index Support}@* | 332 @b{Index Support}@* |
326 @b{Ref@TeX{}} helps to enter index entries. It also compiles all | 333 @b{Ref@TeX{}} helps to enter index entries. It also compiles all |
327 entries into an alphabetically sorted @file{*Index*} buffer which you | 334 entries into an alphabetically sorted @file{*Index*} buffer which you |
328 can use to check and edit the entries. @b{Ref@TeX{}} knows about the | 335 can use to check and edit the entries. @b{Ref@TeX{}} knows about the |
329 standard index macros and can be configured to recognize any additional | 336 standard index macros and can be configured to recognize any additional |
330 macros you have defined (@code{reftex-index-macros}). Multiple indices | 337 macros you have defined (@code{reftex-index-macros}). Multiple indices |
331 are supported.@refill | 338 are supported. |
332 | 339 |
333 @itemize @bullet | 340 @itemize @bullet |
334 @item | 341 @item |
335 @b{Creating Index Entries}@* | 342 @b{Creating Index Entries}@* |
336 To index the current selection or the word at point, type @kbd{C-c /} | 343 To index the current selection or the word at point, type @kbd{C-c /} |
337 (@code{reftex-index-selection-or-word}). The default macro | 344 (@code{reftex-index-selection-or-word}). The default macro |
338 @code{reftex-index-default-macro} will be used. For a more complex entry | 345 @code{reftex-index-default-macro} will be used. For a more complex entry |
339 type @kbd{C-c <} (@code{reftex-index}), select any of the index macros | 346 type @kbd{C-c <} (@code{reftex-index}), select any of the index macros |
340 and enter the arguments with completion.@refill | 347 and enter the arguments with completion. |
341 | 348 |
342 @item | 349 @item |
343 @b{The Index Phrases File (Delayed Indexing)}@* | 350 @b{The Index Phrases File (Delayed Indexing)}@* |
344 Type @kbd{C-c \} (@code{reftex-index-phrase-selection-or-word}) to add | 351 Type @kbd{C-c \} (@code{reftex-index-phrase-selection-or-word}) to add |
345 the current word or selection to a special @emph{index phrase file}. | 352 the current word or selection to a special @emph{index phrase file}. |
346 @b{Ref@TeX{}} can later search the document for occurrences of these | 353 @b{Ref@TeX{}} can later search the document for occurrences of these |
347 phrases and let you interactively index the matches.@refill | 354 phrases and let you interactively index the matches. |
348 | 355 |
349 @item | 356 @item |
350 @b{Displaying and Editing the Index}@* | 357 @b{Displaying and Editing the Index}@* |
351 To display the compiled index in a special buffer, type @kbd{C-c >} | 358 To display the compiled index in a special buffer, type @kbd{C-c >} |
352 (@code{reftex-display-index}). From that buffer you can check and edit | 359 (@code{reftex-display-index}). From that buffer you can check and edit |
353 all entries.@refill | 360 all entries. |
354 @end itemize | 361 @end itemize |
355 | 362 |
356 @page | 363 @page |
357 @item @b{Viewing Cross-References}@* | 364 @item @b{Viewing Cross-References}@* |
358 When point is on the @var{key} argument of a cross--referencing macro | 365 When point is on the @var{key} argument of a cross--referencing macro |
359 (@code{\label}, @code{\ref}, @code{\cite}, @code{\bibitem}, | 366 (@code{\label}, @code{\ref}, @code{\cite}, @code{\bibitem}, |
360 @code{\index}, and variations) or inside a BibTeX database entry, you | 367 @code{\index}, and variations) or inside a BibTeX database entry, you |
361 can press @kbd{C-c &} (@code{reftex-view-crossref}) to display | 368 can press @kbd{C-c &} (@code{reftex-view-crossref}) to display |
362 corresponding locations in the document and associated BibTeX database | 369 corresponding locations in the document and associated BibTeX database |
363 files.@refill @* | 370 files. @* |
364 When the enclosing macro is @code{\cite} or @code{\ref} and no other | 371 When the enclosing macro is @code{\cite} or @code{\ref} and no other |
365 message occupies the echo area, information about the citation or label | 372 message occupies the echo area, information about the citation or label |
366 will automatically be displayed in the echo area.@refill | 373 will automatically be displayed in the echo area. |
367 | 374 |
368 @item | 375 @item |
369 @b{Multifile Documents}@* | 376 @b{Multifile Documents}@* |
370 Multifile Documents are fully supported. The included files must have a | 377 Multifile Documents are fully supported. The included files must have a |
371 file variable @code{TeX-master} or @code{tex-main-file} pointing to the | 378 file variable @code{TeX-master} or @code{tex-main-file} pointing to the |
372 master file. @b{Ref@TeX{}} provides cross-referencing information from | 379 master file. @b{Ref@TeX{}} provides cross-referencing information from |
373 all parts of the document, and across document borders | 380 all parts of the document, and across document borders |
374 (@file{xr.sty}).@refill | 381 (@file{xr.sty}). |
375 | 382 |
376 @item | 383 @item |
377 @b{Document Parsing}@* @b{Ref@TeX{}} needs to parse the document in | 384 @b{Document Parsing}@* @b{Ref@TeX{}} needs to parse the document in |
378 order to find labels and other information. It does it automatically | 385 order to find labels and other information. It does it automatically |
379 once and updates its list internally when @code{reftex-label} and | 386 once and updates its list internally when @code{reftex-label} and |
380 @code{reftex-index} are used. To enforce reparsing, call any of the | 387 @code{reftex-index} are used. To enforce reparsing, call any of the |
381 commands described above with a raw @kbd{C-u} prefix, or press the | 388 commands described above with a raw @kbd{C-u} prefix, or press the |
382 @kbd{r} key in the label selection buffer, the table of contents | 389 @kbd{r} key in the label selection buffer, the table of contents |
383 buffer, or the index buffer.@refill | 390 buffer, or the index buffer. |
384 | 391 |
385 @item | 392 @item |
386 @b{AUCTeX} @* If your major LaTeX mode is AUCTeX, @b{Ref@TeX{}} can | 393 @b{AUCTeX} @* If your major LaTeX mode is AUCTeX, @b{Ref@TeX{}} can |
387 cooperate with it (see variable @code{reftex-plug-into-AUCTeX}). AUCTeX | 394 cooperate with it (see variable @code{reftex-plug-into-AUCTeX}). AUCTeX |
388 contains style files which trigger appropriate settings in | 395 contains style files which trigger appropriate settings in |
389 @b{Ref@TeX{}}, so that for many of the popular LaTeX packages no | 396 @b{Ref@TeX{}}, so that for many of the popular LaTeX packages no |
390 additional customizations will be necessary.@refill | 397 additional customizations will be necessary. |
391 | 398 |
392 @item | 399 @item |
393 @b{Useful Settings}@* | 400 @b{Useful Settings}@* |
394 To integrate RefTeX with AUCTeX, use | 401 To integrate RefTeX with AUCTeX, use |
395 @lisp | 402 @lisp |
396 (setq reftex-plug-into-AUCTeX t) | 403 (setq reftex-plug-into-AUCTeX t) |
397 @end lisp | 404 @end lisp |
398 | 405 |
399 To make your own LaTeX macro definitions known to @b{Ref@TeX{}}, | 406 To make your own LaTeX macro definitions known to @b{Ref@TeX{}}, |
400 customize the variables@refill | 407 customize the variables |
401 @example | 408 @example |
402 @code{reftex-label-alist} @r{(for label macros/environments)} | 409 @code{reftex-label-alist} @r{(for label macros/environments)} |
403 @code{reftex-section-levels} @r{(for sectioning commands)} | 410 @code{reftex-section-levels} @r{(for sectioning commands)} |
404 @code{reftex-cite-format} @r{(for @code{\cite}-like macros)} | 411 @code{reftex-cite-format} @r{(for @code{\cite}-like macros)} |
405 @code{reftex-index-macros} @r{(for @code{\index}-like macros)} | 412 @code{reftex-index-macros} @r{(for @code{\index}-like macros)} |
406 @code{reftex-index-default-macro} @r{(to set the default macro)} | 413 @code{reftex-index-default-macro} @r{(to set the default macro)} |
407 @end example | 414 @end example |
408 If you have a large number of macros defined, you may want to write | 415 If you have a large number of macros defined, you may want to write |
409 an AUCTeX style file to support them with both AUCTeX and | 416 an AUCTeX style file to support them with both AUCTeX and |
410 @b{Ref@TeX{}}.@refill | 417 @b{Ref@TeX{}}. |
411 | 418 |
412 @item @b{Where Next?}@* Go ahead and use @b{Ref@TeX{}}. Use its menus | 419 @item @b{Where Next?}@* Go ahead and use @b{Ref@TeX{}}. Use its menus |
413 until you have picked up the key bindings. For an overview of what you | 420 until you have picked up the key bindings. For an overview of what you |
414 can do in each of the different special buffers, press @kbd{?}. Read | 421 can do in each of the different special buffers, press @kbd{?}. Read |
415 the manual if you get stuck, of if you are curious what else might be | 422 the manual if you get stuck, of if you are curious what else might be |
416 available. The first part of the manual explains in | 423 available. The first part of the manual explains in |
417 a tutorial way how to use and customize @b{Ref@TeX{}}. The second | 424 a tutorial way how to use and customize @b{Ref@TeX{}}. The second |
418 part is a command and variable reference.@refill | 425 part is a command and variable reference. |
419 @end enumerate | 426 @end enumerate |
420 | 427 |
421 @node Table of Contents, Labels and References, Introduction, Top | 428 @node Table of Contents, Labels and References, Introduction, Top |
422 @chapter Table of Contents | 429 @chapter Table of Contents |
423 @cindex @file{*toc*} buffer | 430 @cindex @file{*toc*} buffer |
431 @cindex Structure editing | |
424 @cindex Table of contents buffer | 432 @cindex Table of contents buffer |
425 @findex reftex-toc | 433 @findex reftex-toc |
426 @kindex C-c = | 434 @kindex C-c = |
427 | 435 |
428 Pressing the keys @kbd{C-c =} pops up a buffer showing the table of | 436 Pressing the keys @kbd{C-c =} pops up a buffer showing the table of |
429 contents of the document. By default, this @file{*toc*} buffer shows | 437 contents of the document. By default, this @file{*toc*} buffer shows |
430 only the sections of a document. Using the @kbd{l} and @kbd{i} keys you | 438 only the sections of a document. Using the @kbd{l} and @kbd{i} keys you |
431 can display all labels and index entries defined in the document as | 439 can display all labels and index entries defined in the document as |
432 well.@refill | 440 well. |
433 | 441 |
434 With the cursor in any of the lines denoting a location in the | 442 With the cursor in any of the lines denoting a location in the |
435 document, simple key strokes will display the corresponding part in | 443 document, simple key strokes will display the corresponding part in |
436 another window, jump to that location, or perform other actions.@refill | 444 another window, jump to that location, or perform other actions. |
437 | 445 |
438 @kindex ? | 446 @kindex ? |
439 Here is a list of special commands in the @file{*toc*} buffer. A | 447 Here is a list of special commands in the @file{*toc*} buffer. A |
440 summary of this information is always available by pressing | 448 summary of this information is always available by pressing |
441 @kbd{?}.@refill | 449 @kbd{?}. |
442 | 450 |
443 @table @kbd | 451 @table @kbd |
444 | 452 |
445 @tablesubheading{General} | 453 @tablesubheading{General} |
446 @item ? | 454 @item ? |
456 @item p | 464 @item p |
457 Goto previous entry in the table of context. | 465 Goto previous entry in the table of context. |
458 | 466 |
459 @item C-c C-n | 467 @item C-c C-n |
460 Goto next section heading. Useful when many labels and index entries | 468 Goto next section heading. Useful when many labels and index entries |
461 separate section headings.@refill | 469 separate section headings. |
462 | 470 |
463 @item C-c C-p | 471 @item C-c C-p |
464 Goto previous section heading. | 472 Goto previous section heading. |
465 | 473 |
466 @item N z | 474 @item N z |
467 Jump to section N, using the prefix arg. For example, @kbd{3 z} jumps | 475 Jump to section N, using the prefix arg. For example, @kbd{3 z} jumps |
468 to section 3.@refill | 476 to section 3. |
469 | 477 |
470 @tablesubheading{Access to document locations} | 478 @tablesubheading{Access to document locations} |
471 @item @key{SPC} | 479 @item @key{SPC} |
472 Show the corresponding location in another window. This command does | 480 Show the corresponding location in another window. This command does |
473 @emph{not} select that other window.@refill | 481 @emph{not} select that other window. |
474 | 482 |
475 @item @key{TAB} | 483 @item @key{TAB} |
476 Goto the location in another window. | 484 Goto the location in another window. |
477 | 485 |
478 @item @key{RET} | 486 @item @key{RET} |
479 Go to the location and hide the @file{*toc*} buffer. This will restore | 487 Go to the location and hide the @file{*toc*} buffer. This will restore |
480 the window configuration before @code{reftex-toc} (@kbd{C-c =}) was | 488 the window configuration before @code{reftex-toc} (@kbd{C-c =}) was |
481 called.@refill | 489 called. |
482 | 490 |
483 @item mouse-2 | 491 @item mouse-2 |
484 @vindex reftex-highlight-selection | 492 @vindex reftex-highlight-selection |
485 Clicking with mouse button 2 on a line has the same effect as @key{RET}. | 493 Clicking with mouse button 2 on a line has the same effect as @key{RET}. |
486 See also variable @code{reftex-highlight-selection}, @ref{Options | 494 See also variable @code{reftex-highlight-selection}, @ref{Options |
487 (Fontification)}.@refill | 495 (Fontification)}. |
488 | 496 |
489 @item f | 497 @item f |
490 @vindex reftex-toc-follow-mode | 498 @vindex reftex-toc-follow-mode |
491 @vindex reftex-revisit-to-follow | 499 @vindex reftex-revisit-to-follow |
492 Toggle follow mode. When follow mode is active, the other window will | 500 Toggle follow mode. When follow mode is active, the other window will |
494 @file{*toc*} buffer. This is similar to pressing @key{SPC} after each | 502 @file{*toc*} buffer. This is similar to pressing @key{SPC} after each |
495 cursor motion. The default for this flag can be set with the variable | 503 cursor motion. The default for this flag can be set with the variable |
496 @code{reftex-toc-follow-mode}. Note that only context in files already | 504 @code{reftex-toc-follow-mode}. Note that only context in files already |
497 visited is shown. @b{Ref@TeX{}} will not visit a file just for follow | 505 visited is shown. @b{Ref@TeX{}} will not visit a file just for follow |
498 mode. See, however, the variable | 506 mode. See, however, the variable |
499 @code{reftex-revisit-to-follow}.@refill | 507 @code{reftex-revisit-to-follow}. |
500 | 508 |
501 @item . | 509 @item . |
502 Show calling point in another window. This is the point from where | 510 Show calling point in another window. This is the point from where |
503 @code{reftex-toc} was last called. | 511 @code{reftex-toc} was last called. |
504 | 512 |
505 @page | 513 @page |
514 @tablesubheading{Promotion and Demotion} | |
515 | |
516 @item < | |
517 Promote the current section. This will convert @code{\section} to | |
518 @code{\chapter}, @code{\subsection} to @code{\section} etc. If there is | |
519 an active region, all sections in the region will be promoted, including | |
520 the one at point. To avoid mistakes, @b{Ref@TeX{}} requires a fresh | |
521 document scan before executing this command - if necessary, it will | |
522 automatically do this scan and ask the user to repeat the promotion | |
523 command. | |
524 | |
525 @item > | |
526 Demote the current section. This is the opposite of promotion. It will | |
527 convert @code{\chapter} to @code{\section} etc. If there is an active | |
528 region, all sections in the region will be demoted, including the one at | |
529 point. | |
530 | |
531 @item M-% | |
532 Rename the label at point. While generally not recommended, this can be | |
533 useful when a package like @file{fancyref} is used where the label | |
534 prefix determines the wording of a reference. After a | |
535 promotion/demotion it may be necessary to change a few labels from | |
536 @samp{sec:xyz} to @samp{cha:xyz} or vice versa. This command can be | |
537 used to do this - it launches a query replace to rename the definition | |
538 and all references of a label. | |
539 | |
506 @tablesubheading{Exiting} | 540 @tablesubheading{Exiting} |
507 @item q | 541 @item q |
508 Hide the @file{*toc*} buffer, return to the position where | 542 Hide the @file{*toc*} buffer, return to the position where |
509 @code{reftex-toc} was last called.@refill | 543 @code{reftex-toc} was last called. |
510 | 544 |
511 @item k | 545 @item k |
512 Kill the @file{*toc*} buffer, return to the position where | 546 Kill the @file{*toc*} buffer, return to the position where |
513 @code{reftex-toc} was last called.@refill | 547 @code{reftex-toc} was last called. |
514 | 548 |
515 @item C-c > | 549 @item C-c > |
516 Switch to the @file{*Index*} buffer of this document. With prefix | 550 Switch to the @file{*Index*} buffer of this document. With prefix |
517 @samp{2}, restrict the index to the section at point in the @file{*toc*} | 551 @samp{2}, restrict the index to the section at point in the @file{*toc*} |
518 buffer. | 552 buffer. |
525 buffer. Without prefix arg, all levels will be included. With prefix | 559 buffer. Without prefix arg, all levels will be included. With prefix |
526 arg (e.g @kbd{3 t}), ignore all toc entries with level greater than | 560 arg (e.g @kbd{3 t}), ignore all toc entries with level greater than |
527 @var{arg} (3 in this case). Chapters are level 1, sections are level 2. | 561 @var{arg} (3 in this case). Chapters are level 1, sections are level 2. |
528 The mode line @samp{T<>} indicator shows the current value. The default | 562 The mode line @samp{T<>} indicator shows the current value. The default |
529 depth can be configured with the variable | 563 depth can be configured with the variable |
530 @code{reftex-toc-max-level}.@refill | 564 @code{reftex-toc-max-level}. |
531 | 565 |
532 @item F | 566 @item F |
533 @vindex reftex-toc-include-file-boundaries | 567 @vindex reftex-toc-include-file-boundaries |
534 Toggle the display of the file borders of a multifile document in the | 568 Toggle the display of the file borders of a multifile document in the |
535 @file{*toc*} buffer. The default for this flag can be set with the | 569 @file{*toc*} buffer. The default for this flag can be set with the |
536 variable @code{reftex-toc-include-file-boundaries}.@refill | 570 variable @code{reftex-toc-include-file-boundaries}. |
537 | 571 |
538 @item l | 572 @item l |
539 @vindex reftex-toc-include-labels | 573 @vindex reftex-toc-include-labels |
540 Toggle the display of labels in the @file{*toc*} buffer. The default | 574 Toggle the display of labels in the @file{*toc*} buffer. The default |
541 for this flag can be set with the variable | 575 for this flag can be set with the variable |
542 @code{reftex-toc-include-labels}. When called with a prefix argument, | 576 @code{reftex-toc-include-labels}. When called with a prefix argument, |
543 @b{Ref@TeX{}} will prompt for a label type and include only labels of | 577 @b{Ref@TeX{}} will prompt for a label type and include only labels of |
544 the selected type in the @file{*toc*} buffer. The mode line @samp{L<>} | 578 the selected type in the @file{*toc*} buffer. The mode line @samp{L<>} |
545 indicator shows which labels are included.@refill | 579 indicator shows which labels are included. |
546 | 580 |
547 @item i | 581 @item i |
548 @vindex reftex-toc-include-index-entries | 582 @vindex reftex-toc-include-index-entries |
549 Toggle the display of index entries in the @file{*toc*} buffer. The | 583 Toggle the display of index entries in the @file{*toc*} buffer. The |
550 default for this flag can be set with the variable | 584 default for this flag can be set with the variable |
551 @code{reftex-toc-include-index-entries}. When called with a prefix | 585 @code{reftex-toc-include-index-entries}. When called with a prefix |
552 argument, @b{Ref@TeX{}} will prompt for a specific index and include | 586 argument, @b{Ref@TeX{}} will prompt for a specific index and include |
553 only entries in the selected index in the @file{*toc*} buffer. The mode | 587 only entries in the selected index in the @file{*toc*} buffer. The mode |
554 line @samp{I<>} indicator shows which index is used.@refill | 588 line @samp{I<>} indicator shows which index is used. |
555 | 589 |
556 @item c | 590 @item c |
557 @vindex reftex-toc-include-context | 591 @vindex reftex-toc-include-context |
558 Toggle the display of label and index context in the @file{*toc*} | 592 Toggle the display of label and index context in the @file{*toc*} |
559 buffer. The default for this flag can be set with the variable | 593 buffer. The default for this flag can be set with the variable |
560 @code{reftex-toc-include-context}.@refill | 594 @code{reftex-toc-include-context}. |
561 | 595 |
562 @tablesubheading{Updating the buffer} | 596 @tablesubheading{Updating the buffer} |
563 | 597 |
564 @item g | 598 @item g |
565 Rebuild the @file{*toc*} buffer. This does @emph{not} rescan the | 599 Rebuild the @file{*toc*} buffer. This does @emph{not} rescan the |
566 document.@refill | 600 document. |
567 | 601 |
568 @item r | 602 @item r |
569 @vindex reftex-enable-partial-scans | 603 @vindex reftex-enable-partial-scans |
570 Reparse the LaTeX document and rebuild the @file{*toc*} buffer. When | 604 Reparse the LaTeX document and rebuild the @file{*toc*} buffer. When |
571 @code{reftex-enable-partial-scans} is non-@code{nil}, rescan only the file this | 605 @code{reftex-enable-partial-scans} is non-@code{nil}, rescan only the file this |
572 location is defined in, not the entire document.@refill | 606 location is defined in, not the entire document. |
573 | 607 |
574 @item C-u r | 608 @item C-u r |
575 Reparse the @emph{entire} LaTeX document and rebuild the @file{*toc*} | 609 Reparse the @emph{entire} LaTeX document and rebuild the @file{*toc*} |
576 buffer.@refill | 610 buffer. |
577 | 611 |
578 @item x | 612 @item x |
579 Switch to the @file{*toc*} buffer of an external document. When the | 613 Switch to the @file{*toc*} buffer of an external document. When the |
580 current document is using the @code{xr} package (@pxref{xr (LaTeX | 614 current document is using the @code{xr} package (@pxref{xr (LaTeX |
581 package)}), @b{Ref@TeX{}} will switch to one of the external | 615 package)}), @b{Ref@TeX{}} will switch to one of the external |
582 documents.@refill | 616 documents. |
617 | |
618 | |
619 @tablesubheading{Automatic recentering} | |
620 | |
621 @item d | |
622 Toggle the display of a dedicated frame displaying just the @file{*toc*} | |
623 buffer. Follow mode and visiting locations will not work that frame, | |
624 but automatic recentering will make this frame always show your current | |
625 editing location in the document (see below). | |
583 | 626 |
584 @item a | 627 @item a |
585 Toggle the automatic recentering of the @file{*toc*} buffer. When this | 628 Toggle the automatic recentering of the @file{*toc*} buffer. When this |
586 option is on, moving around in the document will cause the @file{*toc*} | 629 option is on, moving around in the document will cause the @file{*toc*} |
587 to always highlight the current section. This can be enabled by default | 630 to always highlight the current section. By default, this option is |
588 with the variable @code{reftex-auto-recenter-toc}. | 631 active while the dedicated @file{*TOC*} frame exists. See also the |
632 variable @code{reftex-auto-recenter-toc}. | |
589 | 633 |
590 @end table | 634 @end table |
591 | 635 |
592 @vindex reftex-toc-map | 636 @vindex reftex-toc-map |
593 In order to define additional commands for the @file{*toc*} buffer, the | 637 In order to define additional commands for the @file{*toc*} buffer, the |
594 keymap @code{reftex-toc-map} may be used.@refill | 638 keymap @code{reftex-toc-map} may be used. |
595 | 639 |
596 @findex reftex-toc-recenter | 640 @findex reftex-toc-recenter |
597 @vindex reftex-auto-recenter-toc | 641 @vindex reftex-auto-recenter-toc |
598 @vindex reftex-idle-time | 642 @vindex reftex-idle-time |
599 @cindex @file{*toc*} buffer, recentering | 643 @cindex @file{*toc*} buffer, recentering |
603 exists, the cursor will immediately jump to the right place, i.e. the | 647 exists, the cursor will immediately jump to the right place, i.e. the |
604 section from which @code{reftex-toc} was called will be highlighted. | 648 section from which @code{reftex-toc} was called will be highlighted. |
605 The command @kbd{C-c -} (@code{reftex-toc-recenter}) will only redisplay | 649 The command @kbd{C-c -} (@code{reftex-toc-recenter}) will only redisplay |
606 the @file{*toc*} buffer and highlight the correct line without actually | 650 the @file{*toc*} buffer and highlight the correct line without actually |
607 selecting the @file{*toc*} window. This can be useful to quickly find | 651 selecting the @file{*toc*} window. This can be useful to quickly find |
608 out where in the document you currently are. If you want the TOC buffer | 652 out where in the document you currently are. You can also automate this |
609 to show the current section automatically whenever you stop typing, try | 653 by asking RefTeX to keep track of your current editing position in the |
654 TOC. The TOC window will then be updated whenever you stop typing for | |
655 more than @code{reftex-idle-time} seconds. By default this works only | |
656 with the dedicated @file{*TOC*} frame. But you can also force automatic | |
657 recentering of the TOC window on the current frame with | |
610 @lisp | 658 @lisp |
611 (setq reftex-auto-recenter-toc t) | 659 (setq reftex-auto-recenter-toc t) |
612 @end lisp | 660 @end lisp |
613 When this is turned on, the toc buffer will be recentered whenever Emacs | |
614 is idle for more than @code{reftex-idle-time} seconds. | |
615 | 661 |
616 | 662 |
617 @cindex Sectioning commands | 663 @cindex Sectioning commands |
618 @cindex KOMA-Script, LaTeX classes | 664 @cindex KOMA-Script, LaTeX classes |
619 @cindex LaTeX classes, KOMA-Script | 665 @cindex LaTeX classes, KOMA-Script |
639 LaTeX provides a powerful mechanism to deal with cross--references in a | 685 LaTeX provides a powerful mechanism to deal with cross--references in a |
640 document. When writing a document, any part of it can be marked with a | 686 document. When writing a document, any part of it can be marked with a |
641 label, like @samp{\label@{mark@}}. LaTeX records the current value of a | 687 label, like @samp{\label@{mark@}}. LaTeX records the current value of a |
642 certain counter when a label is defined. Later references to this label | 688 certain counter when a label is defined. Later references to this label |
643 (like @samp{\ref@{mark@}}) will produce the recorded value of the | 689 (like @samp{\ref@{mark@}}) will produce the recorded value of the |
644 counter.@refill | 690 counter. |
645 | 691 |
646 Labels can be used to mark sections, figures, tables, equations, | 692 Labels can be used to mark sections, figures, tables, equations, |
647 footnotes, items in enumerate lists etc. LaTeX is context sensitive in | 693 footnotes, items in enumerate lists etc. LaTeX is context sensitive in |
648 doing this: A label defined in a figure environment automatically | 694 doing this: A label defined in a figure environment automatically |
649 records the figure counter, not the section counter.@refill | 695 records the figure counter, not the section counter. |
650 | 696 |
651 Several different environments can share a common counter and therefore | 697 Several different environments can share a common counter and therefore |
652 a common label category. E.g. labels in both @code{equation} and | 698 a common label category. E.g. labels in both @code{equation} and |
653 @code{eqnarray} environments record the value of the same counter - the | 699 @code{eqnarray} environments record the value of the same counter - the |
654 equation counter.@refill | 700 equation counter. |
655 | 701 |
656 @menu | 702 @menu |
657 * Creating Labels:: | 703 * Creating Labels:: |
658 * Referencing Labels:: | 704 * Referencing Labels:: |
659 * Builtin Label Environments:: The environments RefTeX knows about. | 705 * Builtin Label Environments:: The environments RefTeX knows about. |
675 In order to create a label in a LaTeX document, press @kbd{C-c (} | 721 In order to create a label in a LaTeX document, press @kbd{C-c (} |
676 (@code{reftex-label}). Just like LaTeX, @b{Ref@TeX{}} is context sensitive | 722 (@code{reftex-label}). Just like LaTeX, @b{Ref@TeX{}} is context sensitive |
677 and will figure out the environment it currently is in and adapt the | 723 and will figure out the environment it currently is in and adapt the |
678 label to that environment. A label usually consists of a short prefix | 724 label to that environment. A label usually consists of a short prefix |
679 indicating the type of the label and a unique mark. @b{Ref@TeX{}} has | 725 indicating the type of the label and a unique mark. @b{Ref@TeX{}} has |
680 3 different modes to create this mark.@refill | 726 3 different modes to create this mark. |
681 | 727 |
682 @enumerate | 728 @enumerate |
683 @item | 729 @item |
684 @vindex reftex-translate-to-ascii-function | 730 @vindex reftex-translate-to-ascii-function |
685 @vindex reftex-derive-label-parameters | 731 @vindex reftex-derive-label-parameters |
696 @code{reftex-derive-label-parameters}, @code{reftex-label-illegal-re}, | 742 @code{reftex-derive-label-parameters}, @code{reftex-label-illegal-re}, |
697 @code{reftex-abbrev-parameters}.}. This works best for section labels, | 743 @code{reftex-abbrev-parameters}.}. This works best for section labels, |
698 where the section heading is used to construct a label. In fact, | 744 where the section heading is used to construct a label. In fact, |
699 @b{Ref@TeX{}}'s default settings use this method only for section | 745 @b{Ref@TeX{}}'s default settings use this method only for section |
700 labels. You will be asked to confirm the derived label, or edit | 746 labels. You will be asked to confirm the derived label, or edit |
701 it.@refill | 747 it. |
702 | 748 |
703 @item | 749 @item |
704 We may also use a simple unique number to identify a label. This is | 750 We may also use a simple unique number to identify a label. This is |
705 mostly useful for labels where it is difficult to come up with a very | 751 mostly useful for labels where it is difficult to come up with a very |
706 good descriptive name. @b{Ref@TeX{}}'s default settings use this method | 752 good descriptive name. @b{Ref@TeX{}}'s default settings use this method |
707 for equations, enumerate items and footnotes. The author of @b{Ref@TeX{}} | 753 for equations, enumerate items and footnotes. The author of @b{Ref@TeX{}} |
708 tends to write documents with many equations and finds it impossible | 754 tends to write documents with many equations and finds it impossible |
709 to come up with good names for each of them. These simple labels are | 755 to come up with good names for each of them. These simple labels are |
710 inserted without query, and are therefore very fast. Good descriptive | 756 inserted without query, and are therefore very fast. Good descriptive |
711 names are not really necessary as @b{Ref@TeX{}} will provide context to | 757 names are not really necessary as @b{Ref@TeX{}} will provide context to |
712 reference a label (@pxref{Referencing Labels}).@refill | 758 reference a label (@pxref{Referencing Labels}). |
713 | 759 |
714 @item | 760 @item |
715 The third method is to ask the user for a label. This is most | 761 The third method is to ask the user for a label. This is most |
716 useful for things which are easy to describe briefly and do not turn up | 762 useful for things which are easy to describe briefly and do not turn up |
717 too frequently in a document. @b{Ref@TeX{}} uses this for figures and | 763 too frequently in a document. @b{Ref@TeX{}} uses this for figures and |
718 tables. Of course, one can enter the label directly by typing the full | 764 tables. Of course, one can enter the label directly by typing the full |
719 @samp{\label@{mark@}}. The advantage of using @code{reftex-label} | 765 @samp{\label@{mark@}}. The advantage of using @code{reftex-label} |
720 anyway is that @b{Ref@TeX{}} will know that a new label has been defined. | 766 anyway is that @b{Ref@TeX{}} will know that a new label has been defined. |
721 It will then not be necessary to rescan the document in order to access | 767 It will then not be necessary to rescan the document in order to access |
722 this label later.@refill | 768 this label later. |
723 @end enumerate | 769 @end enumerate |
724 | 770 |
725 @vindex reftex-insert-label-flags | 771 @vindex reftex-insert-label-flags |
726 If you want to change the way certain labels are created, check out the | 772 If you want to change the way certain labels are created, check out the |
727 variable @code{reftex-insert-label-flags} (@pxref{Options (Creating | 773 variable @code{reftex-insert-label-flags} (@pxref{Options (Creating |
728 Labels)}).@refill | 774 Labels)}). |
729 | 775 |
730 If you are using AUCTeX to write your LaTeX documents, you can | 776 If you are using AUCTeX to write your LaTeX documents, you can |
731 set it up to delegate the creation of labels to | 777 set it up to delegate the creation of labels to |
732 @b{Ref@TeX{}}. @xref{AUCTeX}, for more information. | 778 @b{Ref@TeX{}}. @xref{AUCTeX}, for more information. |
733 | 779 |
739 @cindex Selection process | 785 @cindex Selection process |
740 @cindex @code{\ref} | 786 @cindex @code{\ref} |
741 @kindex C-c ) | 787 @kindex C-c ) |
742 @findex reftex-reference | 788 @findex reftex-reference |
743 | 789 |
790 @vindex reftex-trust-label-prefix | |
791 @b{Ref@TeX{}} scans the document in order to find all labels. To make | |
792 referencing labels easier, it assigns to each label a category, the | |
793 @emph{label type} (for example section, table, figure, equation, etc.). | |
794 In order to determine the label type, RefTeX parses around each label | |
795 to see in what kind of environments it is located. You can speed up | |
796 the parsing by using type-specific prefixes for labels and configuring | |
797 the variable @code{reftex-trust-label-prefix}. | |
798 | |
744 Referencing Labels is really at the heart of @b{Ref@TeX{}}. Press @kbd{C-c | 799 Referencing Labels is really at the heart of @b{Ref@TeX{}}. Press @kbd{C-c |
745 )} in order to reference a label (reftex-reference). This will start a | 800 )} in order to reference a label (reftex-reference). This will start a |
746 selection process and finally insert the complete @samp{\ref@{label@}} | 801 selection process and finally insert the complete @samp{\ref@{label@}} |
747 into the buffer.@refill | 802 into the buffer. |
748 | 803 |
749 First, @b{Ref@TeX{}} will determine the label category which is required. | 804 First, @b{Ref@TeX{}} will determine the label category which is required. |
750 Often that can be figured out from context. For example, if you | 805 Often that can be figured out from context. For example, if you |
751 write @samp{As shown in eq.} and the press @kbd{C-c )}, @b{Ref@TeX{}} knows | 806 write @samp{As shown in eq.} and the press @kbd{C-c )}, @b{Ref@TeX{}} knows |
752 that an equation label is going to be referenced. If it cannot figure | 807 that an equation label is going to be referenced. If it cannot figure |
753 out what label category is needed, it will query for one.@refill | 808 out what label category is needed, it will query for one. |
754 | 809 |
755 You will then be presented with a label selection menu. This is a | 810 You will then be presented with a label selection menu. This is a |
756 special buffer which contains an outline of the document along with all | 811 special buffer which contains an outline of the document along with all |
757 labels of the given label category. In addition, next to the label | 812 labels of the given label category. In addition, next to the label |
758 there will be one line of context of the label definition, which is some | 813 there will be one line of context of the label definition, which is some |
759 text in the buffer near the label definition. Usually this is | 814 text in the buffer near the label definition. Usually this is |
760 sufficient to identify the label. If you are unsure about a certain | 815 sufficient to identify the label. If you are unsure about a certain |
761 label, pressing @key{SPC} will show the label definition point in | 816 label, pressing @key{SPC} will show the label definition point in |
762 another window.@refill | 817 another window. |
763 | 818 |
764 In order to reference a label, move to cursor to the correct label and | 819 In order to reference a label, move to cursor to the correct label and |
765 press @key{RET}. You can also reference several labels with a single | 820 press @key{RET}. You can also reference several labels with a single |
766 call to @code{reftex-reference} by marking entries with the @kbd{m} | 821 call to @code{reftex-reference} by marking entries with the @kbd{m} |
767 key (see below). | 822 key (see below). |
768 | 823 |
769 @kindex ? | 824 @kindex ? |
770 Here is a list of special commands in the selection buffer. A summary | 825 Here is a list of special commands in the selection buffer. A summary |
771 of this information is always available from the selection process by | 826 of this information is always available from the selection process by |
772 pressing @kbd{?}.@refill | 827 pressing @kbd{?}. |
773 | 828 |
774 | 829 |
775 | 830 |
776 @table @kbd | 831 @table @kbd |
777 @tablesubheading{General} | 832 @tablesubheading{General} |
788 @item p | 843 @item p |
789 Go to previous label. | 844 Go to previous label. |
790 | 845 |
791 @item b | 846 @item b |
792 Jump back to the position where you last left the selection buffer. | 847 Jump back to the position where you last left the selection buffer. |
793 Normally this should get you back to the last referenced label.@refill | 848 Normally this should get you back to the last referenced label. |
794 | 849 |
795 @item C-c C-n | 850 @item C-c C-n |
796 Goto next section heading. | 851 Goto next section heading. |
797 | 852 |
798 @item C-c C-p | 853 @item C-c C-p |
799 Goto previous section heading. | 854 Goto previous section heading. |
800 | 855 |
801 @item N z | 856 @item N z |
802 Jump to section N, using the prefix arg. For example @kbd{3 z} jumps to | 857 Jump to section N, using the prefix arg. For example @kbd{3 z} jumps to |
803 section 3.@refill | 858 section 3. |
804 | 859 |
805 @tablesubheading{Displaying Context} | 860 @tablesubheading{Displaying Context} |
806 @item @key{SPC} | 861 @item @key{SPC} |
807 Show the surroundings of the definition of the current label in another | 862 Show the surroundings of the definition of the current label in another |
808 window. See also the @kbd{f} key.@refill | 863 window. See also the @kbd{f} key. |
809 | 864 |
810 @item f | 865 @item f |
811 @vindex reftex-revisit-to-follow | 866 @vindex reftex-revisit-to-follow |
812 Toggle follow mode. When follow mode is active, the other window will | 867 Toggle follow mode. When follow mode is active, the other window will |
813 always display the full context of the current label. This is similar | 868 always display the full context of the current label. This is similar |
814 to pressing @key{SPC} after each cursor motion. Note that only context | 869 to pressing @key{SPC} after each cursor motion. Note that only context |
815 in files already visited is shown. @b{RefTeX} will not visit a file | 870 in files already visited is shown. @b{RefTeX} will not visit a file |
816 just for follow mode. See, however, the variable | 871 just for follow mode. See, however, the variable |
817 @code{reftex-revisit-to-follow}.@refill | 872 @code{reftex-revisit-to-follow}. |
818 | 873 |
819 @item . | 874 @item . |
820 Show insertion point in another window. This is the point from where you | 875 Show insertion point in another window. This is the point from where you |
821 called @code{reftex-reference}.@refill | 876 called @code{reftex-reference}. |
822 | 877 |
823 @tablesubheading{Selecting a label and creating the reference} | 878 @tablesubheading{Selecting a label and creating the reference} |
824 @item @key{RET} | 879 @item @key{RET} |
825 Insert a reference to the label at point into the buffer from which the | 880 Insert a reference to the label at point into the buffer from which the |
826 selection process was started. When entries have been marked, @key{RET} | 881 selection process was started. When entries have been marked, @key{RET} |
827 references all marked labels.@refill | 882 references all marked labels. |
828 | 883 |
829 @item mouse-2 | 884 @item mouse-2 |
830 @vindex reftex-highlight-selection | 885 @vindex reftex-highlight-selection |
831 Clicking with mouse button 2 on a label will accept it like @key{RET} | 886 Clicking with mouse button 2 on a label will accept it like @key{RET} |
832 would. See also variable @code{reftex-highlight-selection}, @ref{Options | 887 would. See also variable @code{reftex-highlight-selection}, @ref{Options |
833 (Misc)}.@refill | 888 (Misc)}. |
834 | 889 |
835 @vindex reftex-multiref-punctuation | 890 @vindex reftex-multiref-punctuation |
836 @item m - + , | 891 @item m - + , |
837 Mark the current entry. When several entries have been marked, pressing | 892 Mark the current entry. When several entries have been marked, pressing |
838 @kbd{RET} will accept all of them and place them into several | 893 @kbd{RET} will accept all of them and place them into several |
851 @cindex LaTeX packages, @code{saferef} | 906 @cindex LaTeX packages, @code{saferef} |
852 @cindex @code{saferef}, LaTeX package | 907 @cindex @code{saferef}, LaTeX package |
853 @item a | 908 @item a |
854 Accept the marked entries and put all labels as a comma-separated list | 909 Accept the marked entries and put all labels as a comma-separated list |
855 into one @emph{single} @code{\ref} macro. Some packages like | 910 into one @emph{single} @code{\ref} macro. Some packages like |
856 @file{saferef.sty} support multiple references in this way.@refill | 911 @file{saferef.sty} support multiple references in this way. |
857 | 912 |
858 @item l | 913 @item l |
859 Use the last referenced label(s) again. This is equivalent to moving to | 914 Use the last referenced label(s) again. This is equivalent to moving to |
860 that label and pressing @key{RET}.@refill | 915 that label and pressing @key{RET}. |
861 | 916 |
862 @item @key{TAB} | 917 @item @key{TAB} |
863 Enter a label with completion. This may also be a label which does not | 918 Enter a label with completion. This may also be a label which does not |
864 yet exist in the document. | 919 yet exist in the document. |
865 | 920 |
869 @cindex LaTeX packages, @code{varioref} | 924 @cindex LaTeX packages, @code{varioref} |
870 Toggle between @code{\ref} and @code{\vref} macro for references. The | 925 Toggle between @code{\ref} and @code{\vref} macro for references. The |
871 @code{\vref} macro is defined in the @code{varioref} LaTeX package. | 926 @code{\vref} macro is defined in the @code{varioref} LaTeX package. |
872 With this key you can force @b{Ref@TeX{}} to insert a @code{\vref} | 927 With this key you can force @b{Ref@TeX{}} to insert a @code{\vref} |
873 macro. The current state of this flag is displayed by the @samp{S<>} | 928 macro. The current state of this flag is displayed by the @samp{S<>} |
874 indicator in the mode line of the selection buffer.@refill | 929 indicator in the mode line of the selection buffer. |
875 | 930 |
876 @item V | 931 @item V |
877 @cindex @code{fancyref}, LaTeX package | 932 @cindex @code{fancyref}, LaTeX package |
878 @cindex @code{\fref} | 933 @cindex @code{\fref} |
879 @cindex @code{\Fref} | 934 @cindex @code{\Fref} |
887 | 942 |
888 @tablesubheading{Exiting} | 943 @tablesubheading{Exiting} |
889 | 944 |
890 @item q | 945 @item q |
891 Exit the selection process without inserting any reference into the | 946 Exit the selection process without inserting any reference into the |
892 buffer.@refill | 947 buffer. |
893 | 948 |
894 @tablesubheading{Controlling what gets displayed} | 949 @tablesubheading{Controlling what gets displayed} |
895 @vindex reftex-label-menu-flags | 950 @vindex reftex-label-menu-flags |
896 The defaults for the following flags can be configured with the variable | 951 The defaults for the following flags can be configured with the variable |
897 @code{reftex-label-menu-flags} (@pxref{Options (Referencing Labels)}). | 952 @code{reftex-label-menu-flags} (@pxref{Options (Referencing Labels)}). |
898 | 953 |
899 @item c | 954 @item c |
900 Toggle the display of the one-line label definition context in the | 955 Toggle the display of the one-line label definition context in the |
901 selection buffer.@refill | 956 selection buffer. |
902 | 957 |
903 @item F | 958 @item F |
904 Toggle the display of the file borders of a multifile document in the | 959 Toggle the display of the file borders of a multifile document in the |
905 selection buffer.@refill | 960 selection buffer. |
906 | 961 |
907 @item t | 962 @item t |
908 Toggle the display of the table of contents in the selection buffer. | 963 Toggle the display of the table of contents in the selection buffer. |
909 With prefix @var{arg}, change the maximum level of toc entries displayed | 964 With prefix @var{arg}, change the maximum level of toc entries displayed |
910 to @var{arg}. Chapters are level 1, section are level 2.@refill | 965 to @var{arg}. Chapters are level 1, section are level 2. |
911 | 966 |
912 @item # | 967 @item # |
913 Toggle the display of a label counter in the selection buffer.@refill | 968 Toggle the display of a label counter in the selection buffer. |
914 | 969 |
915 @item % | 970 @item % |
916 Toggle the display of labels hidden in comments in the selection | 971 Toggle the display of labels hidden in comments in the selection |
917 buffers. Sometimes, you may have commented out parts of your document. | 972 buffers. Sometimes, you may have commented out parts of your document. |
918 If these parts contain label definitions, @b{Ref@TeX{}} can still display | 973 If these parts contain label definitions, @b{Ref@TeX{}} can still display |
919 and reference these labels.@refill | 974 and reference these labels. |
920 | 975 |
921 @tablesubheading{Updating the buffer} | 976 @tablesubheading{Updating the buffer} |
922 @item g | 977 @item g |
923 Update the menu. This will rebuilt the menu from the internal label | 978 Update the menu. This will rebuilt the menu from the internal label |
924 list, but not reparse the document (see @kbd{r}).@refill | 979 list, but not reparse the document (see @kbd{r}). |
925 | 980 |
926 @item r | 981 @item r |
927 @vindex reftex-enable-partial-scans | 982 @vindex reftex-enable-partial-scans |
928 Reparse the document to update the information on all labels and rebuild | 983 Reparse the document to update the information on all labels and rebuild |
929 the menu. If the variable @code{reftex-enable-partial-scans} is | 984 the menu. If the variable @code{reftex-enable-partial-scans} is |
930 non-@code{nil} and your document is a multifile document, this will | 985 non-@code{nil} and your document is a multifile document, this will |
931 reparse only a part of the document (the file in which the label at | 986 reparse only a part of the document (the file in which the label at |
932 point was defined).@refill | 987 point was defined). |
933 | 988 |
934 @item C-u r | 989 @item C-u r |
935 Reparse the @emph{entire} document. | 990 Reparse the @emph{entire} document. |
936 | 991 |
937 @item s | 992 @item s |
938 Switch the label category. After prompting for another label category, | 993 Switch the label category. After prompting for another label category, |
939 a menu for that category will be shown.@refill | 994 a menu for that category will be shown. |
940 | 995 |
941 @item x | 996 @item x |
942 Reference a label from an external document. With the LaTeX package | 997 Reference a label from an external document. With the LaTeX package |
943 @code{xr} it is possible to reference labels defined in another | 998 @code{xr} it is possible to reference labels defined in another |
944 document. This key will switch to the label menu of an external | 999 document. This key will switch to the label menu of an external |
945 document and let you select a label from there (@pxref{xr (LaTeX | 1000 document and let you select a label from there (@pxref{xr (LaTeX |
946 package),,xr}).@refill | 1001 package),,xr}). |
947 | 1002 |
948 @end table | 1003 @end table |
949 | 1004 |
950 @vindex reftex-select-label-map | 1005 @vindex reftex-select-label-map |
951 In order to define additional commands for the selection process, the | 1006 In order to define additional commands for the selection process, the |
952 keymap @code{reftex-select-label-map} may be used.@refill | 1007 keymap @code{reftex-select-label-map} may be used. |
953 | 1008 |
954 @node Builtin Label Environments, Defining Label Environments, Referencing Labels, Labels and References | 1009 @node Builtin Label Environments, Defining Label Environments, Referencing Labels, Labels and References |
955 @section Builtin Label Environments | 1010 @section Builtin Label Environments |
956 @cindex Builtin label environments | 1011 @cindex Builtin label environments |
957 @cindex Label environments, builtin | 1012 @cindex Label environments, builtin |
961 | 1016 |
962 @b{Ref@TeX{}} needs to be aware of the environments which can be referenced | 1017 @b{Ref@TeX{}} needs to be aware of the environments which can be referenced |
963 with a label (i.e. which carry their own counters). By default, @b{Ref@TeX{}} | 1018 with a label (i.e. which carry their own counters). By default, @b{Ref@TeX{}} |
964 recognizes all labeled environments and macros discussed in @cite{The | 1019 recognizes all labeled environments and macros discussed in @cite{The |
965 LaTeX Companion by Goossens, Mittelbach & Samarin, Addison-Wesley | 1020 LaTeX Companion by Goossens, Mittelbach & Samarin, Addison-Wesley |
966 1994.}. These are:@refill | 1021 1994.}. These are: |
967 | 1022 |
968 @itemize @minus | 1023 @itemize @minus |
969 @item | 1024 @item |
970 @cindex @code{figure}, LaTeX environment | 1025 @cindex @code{figure}, LaTeX environment |
971 @cindex @code{figure*}, LaTeX environment | 1026 @cindex @code{figure*}, LaTeX environment |
977 @cindex @code{\footnote}, LaTeX macro | 1032 @cindex @code{\footnote}, LaTeX macro |
978 @cindex LaTeX macro @code{footnote} | 1033 @cindex LaTeX macro @code{footnote} |
979 @cindex LaTeX core | 1034 @cindex LaTeX core |
980 @code{figure}, @code{figure*}, @code{table}, @code{table*}, @code{equation}, | 1035 @code{figure}, @code{figure*}, @code{table}, @code{table*}, @code{equation}, |
981 @code{eqnarray}, @code{enumerate}, the @code{\footnote} macro (this is | 1036 @code{eqnarray}, @code{enumerate}, the @code{\footnote} macro (this is |
982 the LaTeX core stuff)@refill | 1037 the LaTeX core stuff) |
983 @item | 1038 @item |
984 @cindex AMS-LaTeX | 1039 @cindex AMS-LaTeX |
985 @cindex @code{amsmath}, LaTeX package | 1040 @cindex @code{amsmath}, LaTeX package |
986 @cindex LaTeX packages, @code{amsmath} | 1041 @cindex LaTeX packages, @code{amsmath} |
987 @cindex @code{align}, AMS-LaTeX environment | 1042 @cindex @code{align}, AMS-LaTeX environment |
992 @cindex @code{xalignat}, AMS-LaTeX environment | 1047 @cindex @code{xalignat}, AMS-LaTeX environment |
993 @cindex @code{xxalignat}, AMS-LaTeX environment | 1048 @cindex @code{xxalignat}, AMS-LaTeX environment |
994 @cindex @code{subequations}, AMS-LaTeX environment | 1049 @cindex @code{subequations}, AMS-LaTeX environment |
995 @code{align}, @code{gather}, @code{multline}, @code{flalign}, | 1050 @code{align}, @code{gather}, @code{multline}, @code{flalign}, |
996 @code{alignat}, @code{xalignat}, @code{xxalignat}, @code{subequations} | 1051 @code{alignat}, @code{xalignat}, @code{xxalignat}, @code{subequations} |
997 (from AMS-LaTeX's @file{amsmath.sty} package)@refill | 1052 (from AMS-LaTeX's @file{amsmath.sty} package) |
998 @item | 1053 @item |
999 @cindex @code{endnote}, LaTeX package | 1054 @cindex @code{endnote}, LaTeX package |
1000 @cindex LaTeX packages, @code{endnote} | 1055 @cindex LaTeX packages, @code{endnote} |
1001 @cindex @code{\endnote}, LaTeX macro | 1056 @cindex @code{\endnote}, LaTeX macro |
1002 the @code{\endnote} macro (from @file{endnotes.sty}) | 1057 the @code{\endnote} macro (from @file{endnotes.sty}) |
1037 @cindex @code{subfig}, LaTeX package | 1092 @cindex @code{subfig}, LaTeX package |
1038 @cindex LaTeX packages, @code{subfigure} | 1093 @cindex LaTeX packages, @code{subfigure} |
1039 @cindex @code{subfigure}, LaTeX environment | 1094 @cindex @code{subfigure}, LaTeX environment |
1040 @cindex @code{subfigure*}, LaTeX environment | 1095 @cindex @code{subfigure*}, LaTeX environment |
1041 @code{subfigure}, @code{subfigure*}, the @code{\subfigure} macro | 1096 @code{subfigure}, @code{subfigure*}, the @code{\subfigure} macro |
1042 (@file{subfigure.sty})@refill | 1097 (@file{subfigure.sty}) |
1043 @item | 1098 @item |
1044 @cindex @code{supertab}, LaTeX package | 1099 @cindex @code{supertab}, LaTeX package |
1045 @cindex LaTeX packages, @code{supertab} | 1100 @cindex LaTeX packages, @code{supertab} |
1046 @cindex @code{supertabular}, LaTeX environment | 1101 @cindex @code{supertabular}, LaTeX environment |
1047 @code{supertabular} (@file{supertab.sty}) | 1102 @code{supertabular} (@file{supertab.sty}) |
1052 @code{wrapfigure} (@file{wrapfig.sty}) | 1107 @code{wrapfigure} (@file{wrapfig.sty}) |
1053 @end itemize | 1108 @end itemize |
1054 | 1109 |
1055 If you want to use other labeled environments, defined with | 1110 If you want to use other labeled environments, defined with |
1056 @code{\newtheorem}, @b{Ref@TeX{}} needs to be configured to recognize | 1111 @code{\newtheorem}, @b{Ref@TeX{}} needs to be configured to recognize |
1057 them (@pxref{Defining Label Environments}).@refill | 1112 them (@pxref{Defining Label Environments}). |
1058 | 1113 |
1059 @node Defining Label Environments, Reference Info, Builtin Label Environments, Labels and References | 1114 @node Defining Label Environments, Reference Info, Builtin Label Environments, Labels and References |
1060 @section Defining Label Environments | 1115 @section Defining Label Environments |
1061 @cindex Label environments, defining | 1116 @cindex Label environments, defining |
1062 | 1117 |
1075 @vindex reftex-label-alist-builtin | 1130 @vindex reftex-label-alist-builtin |
1076 Here we will discuss a few examples, in order to make things clearer. | 1131 Here we will discuss a few examples, in order to make things clearer. |
1077 It can also be instructive to look at the constant | 1132 It can also be instructive to look at the constant |
1078 @code{reftex-label-alist-builtin} which contains the entries for | 1133 @code{reftex-label-alist-builtin} which contains the entries for |
1079 all the builtin environments and macros (@pxref{Builtin Label | 1134 all the builtin environments and macros (@pxref{Builtin Label |
1080 Environments}).@refill | 1135 Environments}). |
1081 | 1136 |
1082 @menu | 1137 @menu |
1083 * Theorem and Axiom:: Defined with @code{\newenvironment}. | 1138 * Theorem and Axiom:: Defined with @code{\newenvironment}. |
1084 * Quick Equation:: When a macro sets the label type. | 1139 * Quick Equation:: When a macro sets the label type. |
1085 * Figure Wrapper:: When a macro argument is a label. | 1140 * Figure Wrapper:: When a macro argument is a label. |
1094 @cindex @code{theorem}, newtheorem | 1149 @cindex @code{theorem}, newtheorem |
1095 @cindex @code{axiom}, newtheorem | 1150 @cindex @code{axiom}, newtheorem |
1096 @cindex @code{\newtheorem} | 1151 @cindex @code{\newtheorem} |
1097 | 1152 |
1098 Suppose you are using @code{\newtheorem} in LaTeX in order to define two | 1153 Suppose you are using @code{\newtheorem} in LaTeX in order to define two |
1099 new environments, @code{theorem} and @code{axiom}@refill | 1154 new environments, @code{theorem} and @code{axiom} |
1100 | 1155 |
1101 @example | 1156 @example |
1102 \newtheorem@{axiom@}@{Axiom@} | 1157 \newtheorem@{axiom@}@{Axiom@} |
1103 \newtheorem@{theorem@}@{Theorem@} | 1158 \newtheorem@{theorem@}@{Theorem@} |
1104 @end example | 1159 @end example |
1126 | 1181 |
1127 The type indicator characters @code{?a} and @code{?h} are used for | 1182 The type indicator characters @code{?a} and @code{?h} are used for |
1128 prompts when @b{Ref@TeX{}} queries for a label type. @code{?h} | 1183 prompts when @b{Ref@TeX{}} queries for a label type. @code{?h} |
1129 was chosen for @code{theorem} since @code{?t} is already taken by | 1184 was chosen for @code{theorem} since @code{?t} is already taken by |
1130 @code{table}. Note that also @code{?s}, @code{?f}, @code{?e}, | 1185 @code{table}. Note that also @code{?s}, @code{?f}, @code{?e}, |
1131 @code{?i}, @code{?n} are already used for standard environments.@refill | 1186 @code{?i}, @code{?n} are already used for standard environments. |
1132 | 1187 |
1133 @noindent | 1188 @noindent |
1134 The labels for Axioms and Theorems will have the prefixes @samp{ax:} and | 1189 The labels for Axioms and Theorems will have the prefixes @samp{ax:} and |
1135 @samp{thr:}, respectively. @xref{AUCTeX}, for information on how | 1190 @samp{thr:}, respectively. @xref{AUCTeX}, for information on how |
1136 AUCTeX can use RefTeX to automatically create labels when a new environment | 1191 AUCTeX can use RefTeX to automatically create labels when a new environment |
1147 @end lisp | 1202 @end lisp |
1148 | 1203 |
1149 | 1204 |
1150 @noindent | 1205 @noindent |
1151 The @samp{~\ref@{%s@}} is a format string indicating how to insert | 1206 The @samp{~\ref@{%s@}} is a format string indicating how to insert |
1152 references to these labels.@refill | 1207 references to these labels. |
1153 | 1208 |
1154 @noindent | 1209 @noindent |
1155 The next item indicates how to grab context of the label definition.@refill | 1210 The next item indicates how to grab context of the label definition. |
1156 @itemize @minus | 1211 @itemize @minus |
1157 @item | 1212 @item |
1158 @code{t} means to get it from a default location (from the beginning of | 1213 @code{t} means to get it from a default location (from the beginning of |
1159 a @code{\macro} or after the @code{\begin} statement). @code{t} is | 1214 a @code{\macro} or after the @code{\begin} statement). @code{t} is |
1160 @emph{not} a good choice for eqnarray and similar environments.@refill | 1215 @emph{not} a good choice for eqnarray and similar environments. |
1161 @item | 1216 @item |
1162 @code{nil} means to use the text right after the label definition.@refill | 1217 @code{nil} means to use the text right after the label definition. |
1163 @item | 1218 @item |
1164 For more complex ways of getting context, see the variable | 1219 For more complex ways of getting context, see the variable |
1165 @code{reftex-label-alist} (@ref{Options (Defining Label | 1220 @code{reftex-label-alist} (@ref{Options (Defining Label |
1166 Environments)}).@refill | 1221 Environments)}). |
1167 @end itemize | 1222 @end itemize |
1168 | 1223 |
1169 The following list of strings is used to guess the correct label type | 1224 The following list of strings is used to guess the correct label type |
1170 from the word before point when creating a reference. E.g. if you | 1225 from the word before point when creating a reference. E.g. if you |
1171 write: @samp{As we have shown in Theorem} and then press @kbd{C-c )}, | 1226 write: @samp{As we have shown in Theorem} and then press @kbd{C-c )}, |
1172 @b{Ref@TeX{}} will know that you are looking for a theorem label and | 1227 @b{Ref@TeX{}} will know that you are looking for a theorem label and |
1173 restrict the menu to only these labels without even asking.@refill | 1228 restrict the menu to only these labels without even asking. |
1174 | 1229 |
1175 The final item in each entry is the level at which the environment | 1230 The final item in each entry is the level at which the environment |
1176 should produce entries in the table of context buffer. If the number is | 1231 should produce entries in the table of context buffer. If the number is |
1177 positive, the environment will produce numbered entries (like | 1232 positive, the environment will produce numbered entries (like |
1178 @code{\section}), if it is negative the entries will be unnumbered (like | 1233 @code{\section}), if it is negative the entries will be unnumbered (like |
1179 @code{\section*}). Use this only for environments which structure the | 1234 @code{\section*}). Use this only for environments which structure the |
1180 document similar to sectioning commands. For everything else, omit the | 1235 document similar to sectioning commands. For everything else, omit the |
1181 item.@refill | 1236 item. |
1182 | 1237 |
1183 To do the same configuration with @code{customize}, you need to click on | 1238 To do the same configuration with @code{customize}, you need to click on |
1184 the @code{[INS]} button twice to create two templates and fill them in | 1239 the @code{[INS]} button twice to create two templates and fill them in |
1185 like this:@refill | 1240 like this: |
1186 | 1241 |
1187 @example | 1242 @example |
1188 Reftex Label Alist: [Hide] | 1243 Reftex Label Alist: [Hide] |
1189 [INS] [DEL] Package or Detailed : [Value Menu] Detailed: | 1244 [INS] [DEL] Package or Detailed : [Value Menu] Detailed: |
1190 Environment or \macro : [Value Menu] String: axiom | 1245 Environment or \macro : [Value Menu] String: axiom |
1216 Depending on how you would like the label insertion and selection for | 1271 Depending on how you would like the label insertion and selection for |
1217 the new environments to work, you might want to add the letters @samp{a} | 1272 the new environments to work, you might want to add the letters @samp{a} |
1218 and @samp{h} to some of the flags in the variables | 1273 and @samp{h} to some of the flags in the variables |
1219 @code{reftex-insert-label-flags} (@pxref{Options (Creating Labels)}) | 1274 @code{reftex-insert-label-flags} (@pxref{Options (Creating Labels)}) |
1220 and @code{reftex-label-menu-flags} (@pxref{Options (Referencing | 1275 and @code{reftex-label-menu-flags} (@pxref{Options (Referencing |
1221 Labels)}).@refill | 1276 Labels)}). |
1222 | 1277 |
1223 | 1278 |
1224 @node Quick Equation, Figure Wrapper, Theorem and Axiom , Defining Label Environments | 1279 @node Quick Equation, Figure Wrapper, Theorem and Axiom , Defining Label Environments |
1225 @subsection Quick Equation Macro | 1280 @subsection Quick Equation Macro |
1226 @cindex Quick equation macro | 1281 @cindex Quick equation macro |
1250 The first element in this list is now the macro with empty braces as an | 1305 The first element in this list is now the macro with empty braces as an |
1251 @emph{image} of the macro arguments. @code{?e} indicates that this is | 1306 @emph{image} of the macro arguments. @code{?e} indicates that this is |
1252 an equation label, the different @code{nil} elements indicate to use the | 1307 an equation label, the different @code{nil} elements indicate to use the |
1253 default values for equations. The @samp{1} as the fifth element | 1308 default values for equations. The @samp{1} as the fifth element |
1254 indicates that the context of the label definition should be the 1st | 1309 indicates that the context of the label definition should be the 1st |
1255 argument of the macro.@refill | 1310 argument of the macro. |
1256 | 1311 |
1257 Here is again how this would look in the customization buffer: | 1312 Here is again how this would look in the customization buffer: |
1258 | 1313 |
1259 @example | 1314 @example |
1260 Reftex Label Alist: [Hide] | 1315 Reftex Label Alist: [Hide] |
1293 \myfig[htp]@{filename@}@{caption text@}@{label@}@{1@} | 1348 \myfig[htp]@{filename@}@{caption text@}@{label@}@{1@} |
1294 @end example | 1349 @end example |
1295 | 1350 |
1296 Now we need to tell @b{Ref@TeX{}} that the 4th argument of the | 1351 Now we need to tell @b{Ref@TeX{}} that the 4th argument of the |
1297 @code{\myfig} macro @emph{is itself} a figure label, and where to find | 1352 @code{\myfig} macro @emph{is itself} a figure label, and where to find |
1298 the context.@refill | 1353 the context. |
1299 | 1354 |
1300 @lisp | 1355 @lisp |
1301 (setq reftex-label-alist | 1356 (setq reftex-label-alist |
1302 '(("\\myfig[]@{@}@{@}@{*@}@{@}" ?f nil nil 3))) | 1357 '(("\\myfig[]@{@}@{@}@{*@}@{@}" ?f nil nil 3))) |
1303 @end lisp | 1358 @end lisp |
1306 @code{\myfig} macro. The @samp{*} marks the label argument. @code{?f} | 1361 @code{\myfig} macro. The @samp{*} marks the label argument. @code{?f} |
1307 indicates that this is a figure label which will be listed together with | 1362 indicates that this is a figure label which will be listed together with |
1308 labels from normal figure environments. The @code{nil} entries for | 1363 labels from normal figure environments. The @code{nil} entries for |
1309 prefix and reference format mean to use the defaults for figure labels. | 1364 prefix and reference format mean to use the defaults for figure labels. |
1310 The @samp{3} for the context method means to grab the 3rd macro argument | 1365 The @samp{3} for the context method means to grab the 3rd macro argument |
1311 - the caption.@refill | 1366 - the caption. |
1312 | 1367 |
1313 As a side effect of this configuration, @code{reftex-label} will now | 1368 As a side effect of this configuration, @code{reftex-label} will now |
1314 insert the required naked label (without the @code{\label} macro) when | 1369 insert the required naked label (without the @code{\label} macro) when |
1315 point is directly after the opening parenthesis of a @code{\myfig} macro | 1370 point is directly after the opening parenthesis of a @code{\myfig} macro |
1316 argument.@refill | 1371 argument. |
1317 | 1372 |
1318 Again, here the configuration in the customization buffer: | 1373 Again, here the configuration in the customization buffer: |
1319 | 1374 |
1320 @example | 1375 @example |
1321 [INS] [DEL] Package or Detailed : [Value Menu] Detailed: | 1376 [INS] [DEL] Package or Detailed : [Value Menu] Detailed: |
1339 just change the information associated with a label category. Maybe you | 1394 just change the information associated with a label category. Maybe you |
1340 want to add some magic words, for another language. Changing only the | 1395 want to add some magic words, for another language. Changing only the |
1341 information associated with a label category is done by giving | 1396 information associated with a label category is done by giving |
1342 @code{nil} for the environment name and then specify the items you want | 1397 @code{nil} for the environment name and then specify the items you want |
1343 to define. Here is an example which adds German magic words to all | 1398 to define. Here is an example which adds German magic words to all |
1344 predefined label categories.@refill | 1399 predefined label categories. |
1345 | 1400 |
1346 @lisp | 1401 @lisp |
1347 (setq reftex-label-alist | 1402 (setq reftex-label-alist |
1348 '((nil ?s nil nil nil ("Kapitel" "Kap." "Abschnitt" "Teil")) | 1403 '((nil ?s nil nil nil ("Kapitel" "Kap." "Abschnitt" "Teil")) |
1349 (nil ?e nil nil nil ("Gleichung" "Gl.")) | 1404 (nil ?e nil nil nil ("Gleichung" "Gl.")) |
1368 @lisp | 1423 @lisp |
1369 (setq reftex-label-alist '((nil ?e nil "~\\eqref@{%s@}" nil nil))) | 1424 (setq reftex-label-alist '((nil ?e nil "~\\eqref@{%s@}" nil nil))) |
1370 @end lisp | 1425 @end lisp |
1371 | 1426 |
1372 @b{Ref@TeX{}} has also a predefined symbol for this special purpose. The | 1427 @b{Ref@TeX{}} has also a predefined symbol for this special purpose. The |
1373 following is equivalent to the line above.@refill | 1428 following is equivalent to the line above. |
1374 | 1429 |
1375 @lisp | 1430 @lisp |
1376 (setq reftex-label-alist '(AMSTeX)) | 1431 (setq reftex-label-alist '(AMSTeX)) |
1377 @end lisp | 1432 @end lisp |
1378 | 1433 |
1379 Note that this is automatically done by the @file{amsmath.el} style file | 1434 Note that this is automatically done by the @file{amsmath.el} style file |
1380 of AUCTeX (@pxref{Style Files}) - so if you use AUCTeX, | 1435 of AUCTeX (@pxref{Style Files}) - so if you use AUCTeX, |
1381 this configuration will not be necessary.@refill | 1436 this configuration will not be necessary. |
1382 | 1437 |
1383 @node Non-Standard Environments, Putting it Together, Using \eqref, Defining Label Environments | 1438 @node Non-Standard Environments, Putting it Together, Using \eqref, Defining Label Environments |
1384 @subsection Non-standard Environments | 1439 @subsection Non-standard Environments |
1385 @cindex Non-standard environments | 1440 @cindex Non-standard environments |
1386 @cindex Environments without @code{\begin} | 1441 @cindex Environments without @code{\begin} |
1395 currently in the special environment it was written to detect. If so, | 1450 currently in the special environment it was written to detect. If so, |
1396 it must return a buffer position indicating the start of this | 1451 it must return a buffer position indicating the start of this |
1397 environment. The return value must be @code{nil} on failure to detect | 1452 environment. The return value must be @code{nil} on failure to detect |
1398 the environment. The function is called with one argument @var{bound}. | 1453 the environment. The function is called with one argument @var{bound}. |
1399 If non-@code{nil}, @var{bound} is a boundary for backwards searches | 1454 If non-@code{nil}, @var{bound} is a boundary for backwards searches |
1400 which should be observed. We will discuss two examples.@refill | 1455 which should be observed. We will discuss two examples. |
1401 | 1456 |
1402 @cindex LaTeX commands, abbreviated | 1457 @cindex LaTeX commands, abbreviated |
1403 | 1458 |
1404 Some people define abbreviations for | 1459 Some people define abbreviations for |
1405 environments, like @code{\be} for @code{\begin@{equation@}}, and | 1460 environments, like @code{\be} for @code{\begin@{equation@}}, and |
1407 to search backward for these macros. When the first match is | 1462 to search backward for these macros. When the first match is |
1408 @code{\ee}, point is not in this environment. When the first match is | 1463 @code{\ee}, point is not in this environment. When the first match is |
1409 @code{\be}, point is in this environment and the function must return | 1464 @code{\be}, point is in this environment and the function must return |
1410 the beginning of the match. To avoid scanning too far, we can also look | 1465 the beginning of the match. To avoid scanning too far, we can also look |
1411 for empty lines which cannot occur inside an equation environment. | 1466 for empty lines which cannot occur inside an equation environment. |
1412 Here is the setup:@refill | 1467 Here is the setup: |
1413 | 1468 |
1414 @lisp | 1469 @lisp |
1415 ;; Setup entry in reftex-label-alist, using all defaults for equations | 1470 ;; Setup entry in reftex-label-alist, using all defaults for equations |
1416 (setq reftex-label-alist '((detect-be-ee ?e nil nil nil nil))) | 1471 (setq reftex-label-alist '((detect-be-ee ?e nil nil nil nil))) |
1417 | 1472 |
1427 | 1482 |
1428 @cindex @code{linguex}, LaTeX package | 1483 @cindex @code{linguex}, LaTeX package |
1429 @cindex LaTeX packages, @code{linguex} | 1484 @cindex LaTeX packages, @code{linguex} |
1430 A more complex example is the @file{linguex.sty} package which defines | 1485 A more complex example is the @file{linguex.sty} package which defines |
1431 list macros @samp{\ex.}, @samp{\a.}, @samp{\b.} etc. for lists which are | 1486 list macros @samp{\ex.}, @samp{\a.}, @samp{\b.} etc. for lists which are |
1432 terminated by @samp{\z.} or by an empty line.@refill | 1487 terminated by @samp{\z.} or by an empty line. |
1433 | 1488 |
1434 @example | 1489 @example |
1435 \ex. \label@{ex:12@} Some text in an exotic language ... | 1490 \ex. \label@{ex:12@} Some text in an exotic language ... |
1436 \a. \label@{ex:13@} more stuff | 1491 \a. \label@{ex:13@} more stuff |
1437 \b. \label@{ex:14@} still more stuff | 1492 \b. \label@{ex:14@} still more stuff |
1517 message. | 1572 message. |
1518 | 1573 |
1519 @b{Ref@TeX{}} can also display the label definition corresponding to a | 1574 @b{Ref@TeX{}} can also display the label definition corresponding to a |
1520 @code{\ref} macro, or all reference locations corresponding to a | 1575 @code{\ref} macro, or all reference locations corresponding to a |
1521 @code{\label} macro. @xref{Viewing Cross-References}, for more | 1576 @code{\label} macro. @xref{Viewing Cross-References}, for more |
1522 information.@refill | 1577 information. |
1523 | 1578 |
1524 @node xr (LaTeX package), varioref (LaTeX package), Reference Info, Labels and References | 1579 @node xr (LaTeX package), varioref (LaTeX package), Reference Info, Labels and References |
1525 @section @code{xr}: Cross-Document References | 1580 @section @code{xr}: Cross-Document References |
1526 @cindex @code{xr}, LaTeX package | 1581 @cindex @code{xr}, LaTeX package |
1527 @cindex LaTeX packages, @code{xr} | 1582 @cindex LaTeX packages, @code{xr} |
1530 @cindex References to external documents | 1585 @cindex References to external documents |
1531 @cindex Cross-document references | 1586 @cindex Cross-document references |
1532 | 1587 |
1533 The LaTeX package @code{xr} makes it possible to create references to | 1588 The LaTeX package @code{xr} makes it possible to create references to |
1534 labels defined in external documents. The preamble of a document using | 1589 labels defined in external documents. The preamble of a document using |
1535 @code{xr} will contain something like this:@refill | 1590 @code{xr} will contain something like this: |
1536 | 1591 |
1537 @example | 1592 @example |
1538 \usepackage@{xr@} | 1593 \usepackage@{xr@} |
1539 \externaldocument[V1-]@{volume1@} | 1594 \externaldocument[V1-]@{volume1@} |
1540 \externaldocument[V3-]@{volume3@} | 1595 \externaldocument[V3-]@{volume3@} |
1541 @end example | 1596 @end example |
1542 | 1597 |
1543 @noindent | 1598 @noindent |
1544 and we can make references to any labels defined in these | 1599 and we can make references to any labels defined in these |
1545 external documents by using the prefixes @samp{V1-} and @samp{V3-}, | 1600 external documents by using the prefixes @samp{V1-} and @samp{V3-}, |
1546 respectively.@refill | 1601 respectively. |
1547 | 1602 |
1548 @b{Ref@TeX{}} can be used to create such references as well. Start the | 1603 @b{Ref@TeX{}} can be used to create such references as well. Start the |
1549 referencing process normally, by pressing @kbd{C-c )}. Select a label | 1604 referencing process normally, by pressing @kbd{C-c )}. Select a label |
1550 type if necessary. When you see the label selection buffer, pressing | 1605 type if necessary. When you see the label selection buffer, pressing |
1551 @kbd{x} will switch to the label selection buffer of one of the external | 1606 @kbd{x} will switch to the label selection buffer of one of the external |
1552 documents. You may then select a label as before and @b{Ref@TeX{}} will | 1607 documents. You may then select a label as before and @b{Ref@TeX{}} will |
1553 insert it along with the required prefix.@refill | 1608 insert it along with the required prefix. |
1554 | 1609 |
1555 For this kind of inter-document cross-references, saving of parsing | 1610 For this kind of inter-document cross-references, saving of parsing |
1556 information and the use of multiple selection buffers can mean a large | 1611 information and the use of multiple selection buffers can mean a large |
1557 speed-up (@pxref{Optimizations}).@refill | 1612 speed-up (@pxref{Optimizations}). |
1558 | 1613 |
1559 @node varioref (LaTeX package), fancyref (LaTeX package), xr (LaTeX package), Labels and References | 1614 @node varioref (LaTeX package), fancyref (LaTeX package), xr (LaTeX package), Labels and References |
1560 @section @code{varioref}: Variable Page References | 1615 @section @code{varioref}: Variable Page References |
1561 @cindex @code{varioref}, LaTeX package | 1616 @cindex @code{varioref}, LaTeX package |
1562 @cindex @code{\vref} | 1617 @cindex @code{\vref} |
1570 shows the current status of this switch. If you find that you almost | 1625 shows the current status of this switch. If you find that you almost |
1571 always use @code{\vref}, you may want to make it the default by | 1626 always use @code{\vref}, you may want to make it the default by |
1572 customizing the variable @code{reftex-vref-is-default}. If this | 1627 customizing the variable @code{reftex-vref-is-default}. If this |
1573 toggling seems too inconvenient, you can also use the command | 1628 toggling seems too inconvenient, you can also use the command |
1574 @code{reftex-varioref-vref}@footnote{bind it to @kbd{C-c v}.}. | 1629 @code{reftex-varioref-vref}@footnote{bind it to @kbd{C-c v}.}. |
1575 Or use AUCTeX to create your macros (@pxref{AUCTeX}).@refill | 1630 Or use AUCTeX to create your macros (@pxref{AUCTeX}). |
1576 | 1631 |
1577 @node fancyref (LaTeX package), , varioref (LaTeX package), Labels and References | 1632 @node fancyref (LaTeX package), , varioref (LaTeX package), Labels and References |
1578 @section @code{fancyref}: Fancy Cross References | 1633 @section @code{fancyref}: Fancy Cross References |
1579 @cindex @code{fancyref}, LaTeX package | 1634 @cindex @code{fancyref}, LaTeX package |
1580 @cindex @code{\fref} | 1635 @cindex @code{\fref} |
1592 (@pxref{Referencing Labels}). The mode line of the selection buffer | 1647 (@pxref{Referencing Labels}). The mode line of the selection buffer |
1593 shows the current status of this switch. If this cycling seems | 1648 shows the current status of this switch. If this cycling seems |
1594 inconvenient, you can also use the commands @code{reftex-fancyref-fref} | 1649 inconvenient, you can also use the commands @code{reftex-fancyref-fref} |
1595 and @code{reftex-fancyref-Fref}@footnote{bind them to @kbd{C-c | 1650 and @code{reftex-fancyref-Fref}@footnote{bind them to @kbd{C-c |
1596 f} and @kbd{C-c F}.}. Or use AUCTeX to create your macros | 1651 f} and @kbd{C-c F}.}. Or use AUCTeX to create your macros |
1597 (@pxref{AUCTeX}).@refill | 1652 (@pxref{AUCTeX}). |
1598 | 1653 |
1599 @node Citations, Index Support, Labels and References, Top | 1654 @node Citations, Index Support, Labels and References, Top |
1600 @chapter Citations | 1655 @chapter Citations |
1601 @cindex Citations | 1656 @cindex Citations |
1602 @cindex @code{\cite} | 1657 @cindex @code{\cite} |
1603 | 1658 |
1604 Citations in LaTeX are done with the @code{\cite} macro or variations of | 1659 Citations in LaTeX are done with the @code{\cite} macro or variations of |
1605 it. The argument of the macro is a citation key which identifies an | 1660 it. The argument of the macro is a citation key which identifies an |
1606 article or book in either a BibTeX database file or in an explicit | 1661 article or book in either a BibTeX database file or in an explicit |
1607 @code{thebibliography} environment in the document. @b{Ref@TeX{}}'s | 1662 @code{thebibliography} environment in the document. @b{Ref@TeX{}}'s |
1608 support for citations helps to select the correct key quickly.@refill | 1663 support for citations helps to select the correct key quickly. |
1609 | 1664 |
1610 @menu | 1665 @menu |
1611 * Creating Citations:: How to create them. | 1666 * Creating Citations:: How to create them. |
1612 * Citation Styles:: Natbib, Harvard, Chicago and Co. | 1667 * Citation Styles:: Natbib, Harvard, Chicago and Co. |
1613 * Citation Info:: View the corresponding database entry. | 1668 * Citation Info:: View the corresponding database entry. |
1614 * Chapterbib and Bibunits:: Multiple bibliographies in a Document. | 1669 * Chapterbib and Bibunits:: Multiple bibliographies in a Document. |
1615 * Citations Outside LaTeX:: How to make citations in Emails etc. | 1670 * Citations Outside LaTeX:: How to make citations in Emails etc. |
1671 * BibTeX Database Subsets:: Extract parts of a big database. | |
1616 @end menu | 1672 @end menu |
1617 | 1673 |
1618 @node Creating Citations, Citation Styles, , Citations | 1674 @node Creating Citations, Citation Styles, , Citations |
1619 @section Creating Citations | 1675 @section Creating Citations |
1620 @cindex Creating citations | 1676 @cindex Creating citations |
1626 | 1682 |
1627 In order to create a citation, press @kbd{C-c [}. @b{Ref@TeX{}} then | 1683 In order to create a citation, press @kbd{C-c [}. @b{Ref@TeX{}} then |
1628 prompts for a regular expression which will be used to search through | 1684 prompts for a regular expression which will be used to search through |
1629 the database and present the list of matches to choose from in a | 1685 the database and present the list of matches to choose from in a |
1630 selection process similar to that for selecting labels | 1686 selection process similar to that for selecting labels |
1631 (@pxref{Referencing Labels}).@refill | 1687 (@pxref{Referencing Labels}). |
1632 | 1688 |
1633 The regular expression uses an extended syntax: @samp{&&} defines a | 1689 The regular expression uses an extended syntax: @samp{&&} defines a |
1634 logic @code{and} for regular expressions. For example | 1690 logic @code{and} for regular expressions. For example |
1635 @samp{Einstein&&Bose} will match all articles which mention | 1691 @samp{Einstein&&Bose} will match all articles which mention |
1636 Bose-Einstein condensation, or which are co-authored by Bose and | 1692 Bose-Einstein condensation, or which are co-authored by Bose and |
1637 Einstein. When entering the regular expression, you can complete on | 1693 Einstein. When entering the regular expression, you can complete on |
1638 known citation keys. RefTeX also offers a default when prompting for a | 1694 known citation keys. RefTeX also offers a default when prompting for a |
1639 regular expression. This default is the word before the cursor or the | 1695 regular expression. This default is the word before the cursor or the |
1640 word before the current @samp{\cite} command. Sometimes this may be a | 1696 word before the current @samp{\cite} command. Sometimes this may be a |
1641 good search key.@refill | 1697 good search key. |
1642 | 1698 |
1643 @cindex @code{\bibliography} | 1699 @cindex @code{\bibliography} |
1644 @cindex @code{thebibliography}, LaTeX environment | 1700 @cindex @code{thebibliography}, LaTeX environment |
1645 @cindex @code{BIBINPUTS}, environment variable | 1701 @cindex @code{BIBINPUTS}, environment variable |
1646 @cindex @code{TEXBIB}, environment variable | 1702 @cindex @code{TEXBIB}, environment variable |
1651 If you do not use BibTeX, but the document contains an explicit | 1707 If you do not use BibTeX, but the document contains an explicit |
1652 @code{thebibliography} environment, @b{Ref@TeX{}} will collect its | 1708 @code{thebibliography} environment, @b{Ref@TeX{}} will collect its |
1653 information from there. Note that in this case the information | 1709 information from there. Note that in this case the information |
1654 presented in the selection buffer will just be a copy of relevant | 1710 presented in the selection buffer will just be a copy of relevant |
1655 @code{\bibitem} entries, not the structured listing available with | 1711 @code{\bibitem} entries, not the structured listing available with |
1656 BibTeX database files.@refill | 1712 BibTeX database files. |
1657 | 1713 |
1658 @kindex ? | 1714 @kindex ? |
1659 In the selection buffer, the following keys provide special commands. A | 1715 In the selection buffer, the following keys provide special commands. A |
1660 summary of this information is always available from the selection | 1716 summary of this information is always available from the selection |
1661 process by pressing @kbd{?}.@refill | 1717 process by pressing @kbd{?}. |
1662 | 1718 |
1663 @table @kbd | 1719 @table @kbd |
1664 @tablesubheading{General} | 1720 @tablesubheading{General} |
1665 @item ? | 1721 @item ? |
1666 Show a summary of available commands. | 1722 Show a summary of available commands. |
1676 Go to previous article. | 1732 Go to previous article. |
1677 | 1733 |
1678 @tablesubheading{Access to full database entries} | 1734 @tablesubheading{Access to full database entries} |
1679 @item @key{SPC} | 1735 @item @key{SPC} |
1680 Show the database entry corresponding to the article at point, in | 1736 Show the database entry corresponding to the article at point, in |
1681 another window. See also the @kbd{f} key.@refill | 1737 another window. See also the @kbd{f} key. |
1682 | 1738 |
1683 @item f | 1739 @item f |
1684 Toggle follow mode. When follow mode is active, the other window will | 1740 Toggle follow mode. When follow mode is active, the other window will |
1685 always display the full database entry of the current article. This is | 1741 always display the full database entry of the current article. This is |
1686 equivalent to pressing @key{SPC} after each cursor motion. With BibTeX | 1742 equivalent to pressing @key{SPC} after each cursor motion. With BibTeX |
1687 entries, follow mode can be rather slow.@refill | 1743 entries, follow mode can be rather slow. |
1688 | 1744 |
1689 @tablesubheading{Selecting entries and creating the citation} | 1745 @tablesubheading{Selecting entries and creating the citation} |
1690 @item @key{RET} | 1746 @item @key{RET} |
1691 Insert a citation referencing the article at point into the buffer from | 1747 Insert a citation referencing the article at point into the buffer from |
1692 which the selection process was started.@refill | 1748 which the selection process was started. |
1693 | 1749 |
1694 @item mouse-2 | 1750 @item mouse-2 |
1695 @vindex reftex-highlight-selection | 1751 @vindex reftex-highlight-selection |
1696 Clicking with mouse button 2 on a citation will accept it like @key{RET} | 1752 Clicking with mouse button 2 on a citation will accept it like @key{RET} |
1697 would. See also variable @code{reftex-highlight-selection}, @ref{Options | 1753 would. See also variable @code{reftex-highlight-selection}, @ref{Options |
1698 (Misc)}.@refill | 1754 (Misc)}. |
1699 | 1755 |
1700 @item m | 1756 @item m |
1701 Mark the current entry. When one or several entries are marked, | 1757 Mark the current entry. When one or several entries are marked, |
1702 pressing @kbd{a} or @kbd{A} accepts all marked entries. Also, | 1758 pressing @kbd{a} or @kbd{A} accepts all marked entries. Also, |
1703 @key{RET} behaves like the @kbd{a} key. | 1759 @key{RET} behaves like the @kbd{a} key. |
1705 @item u | 1761 @item u |
1706 Unmark a marked entry. | 1762 Unmark a marked entry. |
1707 | 1763 |
1708 @item a | 1764 @item a |
1709 Accept all (marked) entries in the selection buffer and create a single | 1765 Accept all (marked) entries in the selection buffer and create a single |
1710 @code{\cite} macro referring to them.@refill | 1766 @code{\cite} macro referring to them. |
1711 | 1767 |
1712 @item A | 1768 @item A |
1713 Accept all (marked) entries in the selection buffer and create a | 1769 Accept all (marked) entries in the selection buffer and create a |
1714 separate @code{\cite} macro for each of it.@refill | 1770 separate @code{\cite} macro for each of it. |
1771 | |
1772 @item e | |
1773 Create a new BibTeX database file which contains all @i{marked} entries | |
1774 in the selection buffer. If no entries are marked, all entries are | |
1775 selected. | |
1776 | |
1777 @item E | |
1778 Create a new BibTeX database file which contains all @i{unmarked} | |
1779 entries in the selection buffer. If no entries are marked, all entries | |
1780 are selected. | |
1715 | 1781 |
1716 @item @key{TAB} | 1782 @item @key{TAB} |
1717 Enter a citation key with completion. This may also be a key which does | 1783 Enter a citation key with completion. This may also be a key which does |
1718 not yet exist. | 1784 not yet exist. |
1719 | 1785 |
1720 @item . | 1786 @item . |
1721 Show insertion point in another window. This is the point from where you | 1787 Show insertion point in another window. This is the point from where you |
1722 called @code{reftex-citation}.@refill | 1788 called @code{reftex-citation}. |
1723 | 1789 |
1724 @tablesubheading{Exiting} | 1790 @tablesubheading{Exiting} |
1725 @item q | 1791 @item q |
1726 Exit the selection process without inserting a citation into the | 1792 Exit the selection process without inserting a citation into the |
1727 buffer.@refill | 1793 buffer. |
1728 | 1794 |
1729 @tablesubheading{Updating the buffer} | 1795 @tablesubheading{Updating the buffer} |
1730 | 1796 |
1731 @item g | 1797 @item g |
1732 Start over with a new regular expression. The full database will be | 1798 Start over with a new regular expression. The full database will be |
1733 rescanned with the new expression (see also @kbd{r}).@refill | 1799 rescanned with the new expression (see also @kbd{r}). |
1734 | 1800 |
1735 @c FIXME: Should we use something else here? r is usually rescan! | 1801 @c FIXME: Should we use something else here? r is usually rescan! |
1736 @item r | 1802 @item r |
1737 Refine the current selection with another regular expression. This will | 1803 Refine the current selection with another regular expression. This will |
1738 @emph{not} rescan the entire database, but just the already selected | 1804 @emph{not} rescan the entire database, but just the already selected |
1739 entries.@refill | 1805 entries. |
1740 | 1806 |
1741 @end table | 1807 @end table |
1742 | 1808 |
1743 @vindex reftex-select-bib-map | 1809 @vindex reftex-select-bib-map |
1744 In order to define additional commands for this selection process, the | 1810 In order to define additional commands for this selection process, the |
1745 keymap @code{reftex-select-bib-map} may be used.@refill | 1811 keymap @code{reftex-select-bib-map} may be used. |
1746 | 1812 |
1747 @node Citation Styles, Citation Info, Creating Citations, Citations | 1813 @node Citation Styles, Citation Info, Creating Citations, Citations |
1748 @section Citation Styles | 1814 @section Citation Styles |
1749 @cindex Citation styles | 1815 @cindex Citation styles |
1750 @cindex Citation styles, @code{natbib} | 1816 @cindex Citation styles, @code{natbib} |
1780 [a] \citeauthor@{%l@} | 1846 [a] \citeauthor@{%l@} |
1781 [A] \citeauthor*@{%l@} | 1847 [A] \citeauthor*@{%l@} |
1782 [y] \citeyear@{%l@} | 1848 [y] \citeyear@{%l@} |
1783 @end example | 1849 @end example |
1784 | 1850 |
1851 @vindex reftex-cite-prompt-optional-args | |
1852 If cite formats contain empty paris of square brackets, RefTeX can | |
1853 will prompt for values of these optional arguments if you call the | |
1854 @code{reftex-citation} command with a @kbd{C-u} prefix. | |
1785 Following the most generic of these packages, @code{natbib}, the builtin | 1855 Following the most generic of these packages, @code{natbib}, the builtin |
1786 citation packages always accept the @kbd{t} key for a @emph{textual} | 1856 citation packages always accept the @kbd{t} key for a @emph{textual} |
1787 citation (like: @code{Jones et al. (1997) have shown...}) as well as | 1857 citation (like: @code{Jones et al. (1997) have shown...}) as well as |
1788 the @kbd{p} key for a parenthetical citation (like: @code{As shown | 1858 the @kbd{p} key for a parenthetical citation (like: @code{As shown |
1789 earlier (Jones et al, 1997)}).@refill | 1859 earlier (Jones et al, 1997)}). |
1790 | 1860 |
1791 To make one of these styles the default, customize the variable | 1861 To make one of these styles the default, customize the variable |
1792 @code{reftex-cite-format} or put into @file{.emacs}: | 1862 @code{reftex-cite-format} or put into @file{.emacs}: |
1793 | 1863 |
1794 @lisp | 1864 @lisp |
1796 @end lisp | 1866 @end lisp |
1797 | 1867 |
1798 You can also use AUCTeX style files to automatically set the | 1868 You can also use AUCTeX style files to automatically set the |
1799 citation style based on the @code{usepackage} commands in a given | 1869 citation style based on the @code{usepackage} commands in a given |
1800 document. @xref{Style Files}, for information on how to set up the style | 1870 document. @xref{Style Files}, for information on how to set up the style |
1801 files correctly.@refill | 1871 files correctly. |
1802 | 1872 |
1803 @node Citation Info, Chapterbib and Bibunits, Citation Styles, Citations, Top | 1873 @node Citation Info, Chapterbib and Bibunits, Citation Styles, Citations, Top |
1804 @section Citation Info | 1874 @section Citation Info |
1805 @cindex Displaying citations | 1875 @cindex Displaying citations |
1806 @cindex Citations, displaying | 1876 @cindex Citations, displaying |
1817 only displayed if the echo area is not occupied by a different message. | 1887 only displayed if the echo area is not occupied by a different message. |
1818 | 1888 |
1819 @b{Ref@TeX{}} can also display the @code{\bibitem} or BibTeX database | 1889 @b{Ref@TeX{}} can also display the @code{\bibitem} or BibTeX database |
1820 entry corresponding to a @code{\cite} macro, or all citation locations | 1890 entry corresponding to a @code{\cite} macro, or all citation locations |
1821 corresponding to a @code{\bibitem} or BibTeX database entry. | 1891 corresponding to a @code{\bibitem} or BibTeX database entry. |
1822 @xref{Viewing Cross-References}.@refill | 1892 @xref{Viewing Cross-References}. |
1823 | 1893 |
1824 @node Chapterbib and Bibunits, Citations Outside LaTeX, Citation Info, Citations | 1894 @node Chapterbib and Bibunits, Citations Outside LaTeX, Citation Info, Citations |
1825 @section Chapterbib and Bibunits | 1895 @section Chapterbib and Bibunits |
1826 @cindex @code{chapterbib}, LaTeX package | 1896 @cindex @code{chapterbib}, LaTeX package |
1827 @cindex @code{bibunits}, LaTeX package | 1897 @cindex @code{bibunits}, LaTeX package |
1834 separate file (as it is required for @code{chapterbib} anyway). Then | 1904 separate file (as it is required for @code{chapterbib} anyway). Then |
1835 @b{Ref@TeX{}} will still scan the locally relevant databases correctly. If | 1905 @b{Ref@TeX{}} will still scan the locally relevant databases correctly. If |
1836 you have multiple bibliographies within a @emph{single file}, this may | 1906 you have multiple bibliographies within a @emph{single file}, this may |
1837 or may not be the case. | 1907 or may not be the case. |
1838 | 1908 |
1839 @node Citations Outside LaTeX, , Chapterbib and Bibunits, Citations | 1909 @node Citations Outside LaTeX, BibTeX Database Subsets, Chapterbib and Bibunits, Citations |
1840 @section Citations outside LaTeX | 1910 @section Citations outside LaTeX |
1841 @cindex Citations outside LaTeX | 1911 @cindex Citations outside LaTeX |
1842 @vindex reftex-default-bibliography | 1912 @vindex reftex-default-bibliography |
1843 | 1913 |
1844 The command @code{reftex-citation} can also be executed outside a LaTeX | 1914 The command @code{reftex-citation} can also be executed outside a LaTeX |
1848 case be taken from the variable @code{reftex-default-bibliography}. | 1918 case be taken from the variable @code{reftex-default-bibliography}. |
1849 Setting the variable @code{reftex-cite-format} to the symbol | 1919 Setting the variable @code{reftex-cite-format} to the symbol |
1850 @code{locally} does a decent job of putting all relevant information | 1920 @code{locally} does a decent job of putting all relevant information |
1851 about a citation directly into the buffer. Here is the lisp code to add | 1921 about a citation directly into the buffer. Here is the lisp code to add |
1852 the @kbd{C-c [} binding to the mail buffer. It also provides a local | 1922 the @kbd{C-c [} binding to the mail buffer. It also provides a local |
1853 binding for @code{reftex-cite-format}.@refill | 1923 binding for @code{reftex-cite-format}. |
1854 | 1924 |
1855 @lisp | 1925 @lisp |
1856 (add-hook 'mail-setup-hook | 1926 (add-hook 'mail-setup-hook |
1857 (lambda () (define-key mail-mode-map "\C-c[" | 1927 (lambda () (define-key mail-mode-map "\C-c[" |
1858 (lambda () (interactive) | 1928 (lambda () (interactive) |
1859 (require 'reftex) | 1929 (require 'reftex) |
1860 (let ((reftex-cite-format 'locally)) | 1930 (let ((reftex-cite-format 'locally)) |
1861 (reftex-citation)))))) | 1931 (reftex-citation)))))) |
1862 @end lisp | 1932 @end lisp |
1863 | 1933 |
1934 @node BibTeX Database Subsets, , Citations Outside LaTeX, Citations | |
1935 @section Database Subsets | |
1936 @cindex BibTeX database subsets | |
1937 @findex reftex-create-bibtex-file | |
1938 | |
1939 @b{Ref@TeX{}} offers two ways to create a new BibTeX database file. | |
1940 | |
1941 The first option produces a file which contains only the entries | |
1942 actually referenced in the current document. This can be useful if | |
1943 the database in only meant for a single document and you want to clean | |
1944 it of old and unused ballast. It can also be useful while writing a | |
1945 document together with collaborators, in order to avoid sending around | |
1946 the entire (possibly very large) database. To create the file, use | |
1947 @kbd{M-x reftex-create-bibtex-file}, also available from the menu | |
1948 under @code{Ref->Global Actions->Create Bibtex File}. The command will | |
1949 prompt for a BibTeX file name and write the extracted entries to that | |
1950 file. | |
1951 | |
1952 The second option makes use of the selection process started by the | |
1953 command @kbd{C-c [} (@pxref{Creating Citations}). This command uses a | |
1954 regular expression to select entries, and lists them in a formatted | |
1955 selection buffer. After pressing the @kbd{e} key (mnemonics: Export), | |
1956 the command will prompt for the name of a new BibTeX file and write | |
1957 the selected entries to that file. You can also first mark some | |
1958 entries in the selection buffer with the @kbd{m} key and then export | |
1959 either the @i{marked} entries (with the @kbd{e} key) or the | |
1960 @i{unmarked} entries (with the @kbd{E} key). | |
1961 | |
1864 @node Index Support, Viewing Cross-References, Citations, Top | 1962 @node Index Support, Viewing Cross-References, Citations, Top |
1865 @chapter Index Support | 1963 @chapter Index Support |
1866 @cindex Index Support | 1964 @cindex Index Support |
1867 @cindex @code{\index} | 1965 @cindex @code{\index} |
1868 | 1966 |
1873 | 1971 |
1874 Index entries are created with the @code{\index@{@var{entry}@}} macro. | 1972 Index entries are created with the @code{\index@{@var{entry}@}} macro. |
1875 All entries defined in a document are written out to the @file{.aux} | 1973 All entries defined in a document are written out to the @file{.aux} |
1876 file. A separate tool must be used to convert this information into a | 1974 file. A separate tool must be used to convert this information into a |
1877 nicely formatted index. Tools used with LaTeX include @code{MakeIndex} | 1975 nicely formatted index. Tools used with LaTeX include @code{MakeIndex} |
1878 and @code{xindy}.@refill | 1976 and @code{xindy}. |
1879 | 1977 |
1880 Indexing is a very difficult task. It must follow strict conventions to | 1978 Indexing is a very difficult task. It must follow strict conventions to |
1881 make the index consistent and complete. There are basically two | 1979 make the index consistent and complete. There are basically two |
1882 approaches one can follow, and both have their merits. | 1980 approaches one can follow, and both have their merits. |
1883 | 1981 |
1891 very well be developed along with the document. Often it is worthwhile | 1989 very well be developed along with the document. Often it is worthwhile |
1892 to define special purpose macros which define an item and at the same | 1990 to define special purpose macros which define an item and at the same |
1893 time make an index entry, possibly with special formatting to make the | 1991 time make an index entry, possibly with special formatting to make the |
1894 reference page in the index bold or underlined. To make @b{Ref@TeX{}} | 1992 reference page in the index bold or underlined. To make @b{Ref@TeX{}} |
1895 support for indexing possible, these special macros must be added to | 1993 support for indexing possible, these special macros must be added to |
1896 @b{Ref@TeX{}}'s configuration (@pxref{Defining Index Macros}).@refill | 1994 @b{Ref@TeX{}}'s configuration (@pxref{Defining Index Macros}). |
1897 | 1995 |
1898 @item | 1996 @item |
1899 The rest of the index is often just a collection of where in the | 1997 The rest of the index is often just a collection of where in the |
1900 document certain words or phrases are being used. This part is | 1998 document certain words or phrases are being used. This part is |
1901 difficult to develop along with the document, because consistent entries | 1999 difficult to develop along with the document, because consistent entries |
1902 for each occurrence are needed and are best selected when the document | 2000 for each occurrence are needed and are best selected when the document |
1903 is ready. @b{Ref@TeX{}} supports this with an @emph{index phrases file} | 2001 is ready. @b{Ref@TeX{}} supports this with an @emph{index phrases file} |
1904 which collects phrases and helps indexing the phrases globally.@refill | 2002 which collects phrases and helps indexing the phrases globally. |
1905 @end enumerate | 2003 @end enumerate |
1906 | 2004 |
1907 Before you start, you need to make sure that @b{Ref@TeX{}} knows about | 2005 Before you start, you need to make sure that @b{Ref@TeX{}} knows about |
1908 the index style being used in the current document. @b{Ref@TeX{}} has | 2006 the index style being used in the current document. @b{Ref@TeX{}} has |
1909 builtin support for the default @code{\index} and @code{\glossary} | 2007 builtin support for the default @code{\index} and @code{\glossary} |
1911 package, redefine the @code{\index} macro to have an additional | 2009 package, redefine the @code{\index} macro to have an additional |
1912 argument, and @b{Ref@TeX{}} needs to be configured for those. A | 2010 argument, and @b{Ref@TeX{}} needs to be configured for those. A |
1913 sufficiently new version of AUCTeX (9.10c or later) will do this | 2011 sufficiently new version of AUCTeX (9.10c or later) will do this |
1914 automatically. If you really don't use AUCTeX (you should!), this | 2012 automatically. If you really don't use AUCTeX (you should!), this |
1915 configuration needs to be done by hand with the menu (@code{Ref->Index | 2013 configuration needs to be done by hand with the menu (@code{Ref->Index |
1916 Style}), or globally for all your documents with@refill | 2014 Style}), or globally for all your documents with |
1917 | 2015 |
1918 @lisp | 2016 @lisp |
1919 (setq reftex-index-macros '(multind)) @r{or} | 2017 (setq reftex-index-macros '(multind)) @r{or} |
1920 (setq reftex-index-macros '(index)) | 2018 (setq reftex-index-macros '(index)) |
1921 @end lisp | 2019 @end lisp |
1955 (@code{reftex-index}). @b{Ref@TeX{}} will prompt for one of the | 2053 (@code{reftex-index}). @b{Ref@TeX{}} will prompt for one of the |
1956 available index macros and for its arguments. Completion will be | 2054 available index macros and for its arguments. Completion will be |
1957 available for the index entry and, if applicable, the index tag. The | 2055 available for the index entry and, if applicable, the index tag. The |
1958 index tag is a string identifying one of multiple indices. With the | 2056 index tag is a string identifying one of multiple indices. With the |
1959 @file{multind} and @file{index} packages, this tag is the first argument | 2057 @file{multind} and @file{index} packages, this tag is the first argument |
1960 to the redefined @code{\index} macro.@refill | 2058 to the redefined @code{\index} macro. |
1961 | 2059 |
1962 @node The Index Phrases File, Displaying and Editing the Index, Creating Index Entries, Index Support | 2060 @node The Index Phrases File, Displaying and Editing the Index, Creating Index Entries, Index Support |
1963 @section The Index Phrases File | 2061 @section The Index Phrases File |
1964 @cindex Index phrase file | 2062 @cindex Index phrase file |
1965 @cindex Phrase file | 2063 @cindex Phrase file |
1975 is initialized by inserting a file header which contains the definition | 2073 is initialized by inserting a file header which contains the definition |
1976 of the available index macros. This list is initialized from | 2074 of the available index macros. This list is initialized from |
1977 @code{reftex-index-macros} (@pxref{Defining Index Macros}). You can | 2075 @code{reftex-index-macros} (@pxref{Defining Index Macros}). You can |
1978 edit the header as needed, but if you define new LaTeX indexing macros, | 2076 edit the header as needed, but if you define new LaTeX indexing macros, |
1979 don't forget to add them to @code{reftex-index-macros} as well. Here is | 2077 don't forget to add them to @code{reftex-index-macros} as well. Here is |
1980 a phrase file header example:@refill | 2078 a phrase file header example: |
1981 | 2079 |
1982 @example | 2080 @example |
1983 % -*- mode: reftex-index-phrases -*- | 2081 % -*- mode: reftex-index-phrases -*- |
1984 % Key Macro Format Repeat | 2082 % Key Macro Format Repeat |
1985 %---------------------------------------------------------- | 2083 %---------------------------------------------------------- |
1997 indicates if @var{word} is indexed by the macro as | 2095 indicates if @var{word} is indexed by the macro as |
1998 @samp{\index@{@var{word}@}} (@var{repeat} = @code{nil}) or as | 2096 @samp{\index@{@var{word}@}} (@var{repeat} = @code{nil}) or as |
1999 @samp{\index@{@var{word}@}@var{word}} (@var{repeat} = @code{t}). In the | 2097 @samp{\index@{@var{word}@}@var{word}} (@var{repeat} = @code{t}). In the |
2000 above example it is assumed that the macro @code{\index*@{@var{word}@}} | 2098 above example it is assumed that the macro @code{\index*@{@var{word}@}} |
2001 already typesets its argument in the text, so that it is unnecessary to | 2099 already typesets its argument in the text, so that it is unnecessary to |
2002 repeat @var{word} outside the macro.@refill | 2100 repeat @var{word} outside the macro. |
2003 | 2101 |
2004 @menu | 2102 @menu |
2005 * Collecting Phrases:: Collecting from document or external. | 2103 * Collecting Phrases:: Collecting from document or external. |
2006 * Consistency Checks:: Check for duplicates etc. | 2104 * Consistency Checks:: Check for duplicates etc. |
2007 * Global Indexing:: The interactive indexing process. | 2105 * Global Indexing:: The interactive indexing process. |
2047 }@footnote{@samp{&&} with optional spaces, see | 2145 }@footnote{@samp{&&} with optional spaces, see |
2048 @code{reftex-index-phrases-logical-and-regexp}.}. If you want to be | 2146 @code{reftex-index-phrases-logical-and-regexp}.}. If you want to be |
2049 able to choose at each match between several different index arguments, | 2147 able to choose at each match between several different index arguments, |
2050 separate them with @samp{ || }@footnote{@samp{||} with optional spaces, | 2148 separate them with @samp{ || }@footnote{@samp{||} with optional spaces, |
2051 see @code{reftex-index-phrases-logical-or-regexp}.}. Here is an | 2149 see @code{reftex-index-phrases-logical-or-regexp}.}. Here is an |
2052 example:@refill | 2150 example: |
2053 | 2151 |
2054 @example | 2152 @example |
2055 %-------------------------------------------------------------------- | 2153 %-------------------------------------------------------------------- |
2056 I Sun | 2154 I Sun |
2057 i Planet Planets | 2155 i Planet Planets |
2069 macro definition in the file header (see above example). At each | 2167 macro definition in the file header (see above example). At each |
2070 occurrence of @samp{Mars} you will be able choose between indexing it as | 2168 occurrence of @samp{Mars} you will be able choose between indexing it as |
2071 a subitem of @samp{Planets}, @samp{Gods} or @samp{Chocolate Bars}. | 2169 a subitem of @samp{Planets}, @samp{Gods} or @samp{Chocolate Bars}. |
2072 Finally, every occurrence of @samp{Pluto} will be indexed as | 2170 Finally, every occurrence of @samp{Pluto} will be indexed as |
2073 @samp{\index@{Planets!Pluto@}\index@{Kuiper Belt Objects!Pluto@}Pluto} | 2171 @samp{\index@{Planets!Pluto@}\index@{Kuiper Belt Objects!Pluto@}Pluto} |
2074 and will therefore create two different index entries.@refill | 2172 and will therefore create two different index entries. |
2075 | 2173 |
2076 @node Consistency Checks, Global Indexing, Collecting Phrases, The Index Phrases File | 2174 @node Consistency Checks, Global Indexing, Collecting Phrases, The Index Phrases File |
2077 @subsection Consistency Checks | 2175 @subsection Consistency Checks |
2078 @cindex Index phrases, consistency checks | 2176 @cindex Index phrases, consistency checks |
2079 @cindex Phrases, consistency checks | 2177 @cindex Phrases, consistency checks |
2085 alphabetically - this is done with the command @kbd{C-c C-s} | 2183 alphabetically - this is done with the command @kbd{C-c C-s} |
2086 (@code{reftex-index-sort-phrases}). It will sort all phrases in the | 2184 (@code{reftex-index-sort-phrases}). It will sort all phrases in the |
2087 buffer alphabetically by search phrase. If you want to group certain | 2185 buffer alphabetically by search phrase. If you want to group certain |
2088 phrases and only sort within the groups, insert empty lines between the | 2186 phrases and only sort within the groups, insert empty lines between the |
2089 groups. Sorting will only change the sequence of phrases within each | 2187 groups. Sorting will only change the sequence of phrases within each |
2090 group (see the variable @code{reftex-index-phrases-sort-in-blocks}).@refill | 2188 group (see the variable @code{reftex-index-phrases-sort-in-blocks}). |
2091 | 2189 |
2092 @kindex C-c C-i | 2190 @kindex C-c C-i |
2093 A useful command is @kbd{C-c C-i} (@code{reftex-index-phrases-info}) | 2191 A useful command is @kbd{C-c C-i} (@code{reftex-index-phrases-info}) |
2094 which lists information about the phrase at point, including an example | 2192 which lists information about the phrase at point, including an example |
2095 of how the index entry will look like and the number of expected matches | 2193 of how the index entry will look like and the number of expected matches |
2096 in the document.@refill | 2194 in the document. |
2097 | 2195 |
2098 @kindex C-c C-t | 2196 @kindex C-c C-t |
2099 Another important check is to find out if there are double or | 2197 Another important check is to find out if there are double or |
2100 overlapping entries in the buffer. For example if you are first | 2198 overlapping entries in the buffer. For example if you are first |
2101 searching and indexing @samp{Mars} and then @samp{Planet Mars}, the | 2199 searching and indexing @samp{Mars} and then @samp{Planet Mars}, the |
2102 second phrase will not match because of the index macro inserted before | 2200 second phrase will not match because of the index macro inserted before |
2103 @samp{Mars} earlier. The command @kbd{C-c C-t} | 2201 @samp{Mars} earlier. The command @kbd{C-c C-t} |
2104 (@code{reftex-index-find-next-conflict-phrase}) finds the next phrase in | 2202 (@code{reftex-index-find-next-conflict-phrase}) finds the next phrase in |
2105 the buffer which is either duplicate or a subphrase of another phrase. | 2203 the buffer which is either duplicate or a subphrase of another phrase. |
2106 In order to check the whole buffer like this, start at the beginning and | 2204 In order to check the whole buffer like this, start at the beginning and |
2107 execute this command repeatedly.@refill | 2205 execute this command repeatedly. |
2108 | 2206 |
2109 @node Global Indexing, , Consistency Checks, The Index Phrases File | 2207 @node Global Indexing, , Consistency Checks, The Index Phrases File |
2110 @subsection Global Indexing | 2208 @subsection Global Indexing |
2111 @cindex Global indexing | 2209 @cindex Global indexing |
2112 @cindex Indexing, global | 2210 @cindex Indexing, global |
2117 finished document. Global indexing starts from the phrases buffer. | 2215 finished document. Global indexing starts from the phrases buffer. |
2118 There are several commands which start indexing: @kbd{C-c C-x} acts on | 2216 There are several commands which start indexing: @kbd{C-c C-x} acts on |
2119 the current phrase line, @kbd{C-c C-r} on all lines in the current | 2217 the current phrase line, @kbd{C-c C-r} on all lines in the current |
2120 region and @kbd{C-c C-a} on all phrase lines in the buffer. It is | 2218 region and @kbd{C-c C-a} on all phrase lines in the buffer. It is |
2121 probably good to do indexing in small chunks since your concentration | 2219 probably good to do indexing in small chunks since your concentration |
2122 may not last long enough to do everything in one go.@refill | 2220 may not last long enough to do everything in one go. |
2123 | 2221 |
2124 @b{Ref@TeX{}} will start at the first phrase line and search the phrase | 2222 @b{Ref@TeX{}} will start at the first phrase line and search the phrase |
2125 globally in the whole document. At each match it will stop, compute the | 2223 globally in the whole document. At each match it will stop, compute the |
2126 replacement string and offer you the following choices@footnote{Windows | 2224 replacement string and offer you the following choices@footnote{Windows |
2127 users: Restrict yourself to the described keys during indexing. Pressing | 2225 users: Restrict yourself to the described keys during indexing. Pressing |
2128 @key{Help} at the indexing prompt can apparently hang Emacs.}:@refill | 2226 @key{Help} at the indexing prompt can apparently hang Emacs.}: |
2129 | 2227 |
2130 @table @kbd | 2228 @table @kbd |
2131 @item y | 2229 @item y |
2132 Replace this match with the proposed string. | 2230 Replace this match with the proposed string. |
2133 @item n | 2231 @item n |
2175 When this is on, @b{Ref@TeX{}} will at each match try to figure out if | 2273 When this is on, @b{Ref@TeX{}} will at each match try to figure out if |
2176 this match is already indexed. A match is considered indexed if it is | 2274 this match is already indexed. A match is considered indexed if it is |
2177 either the argument of an index macro, or if an index macro is directly | 2275 either the argument of an index macro, or if an index macro is directly |
2178 (without whitespace separation) before or after the match. Index macros | 2276 (without whitespace separation) before or after the match. Index macros |
2179 are those configured in @code{reftex-index-macros}. Intended for | 2277 are those configured in @code{reftex-index-macros}. Intended for |
2180 re-indexing a documents after changes have been made.@refill | 2278 re-indexing a documents after changes have been made. |
2181 @end table | 2279 @end table |
2182 | 2280 |
2183 Even though indexing should be the last thing you do to a document, you | 2281 Even though indexing should be the last thing you do to a document, you |
2184 are bound to make changes afterwards. Indexing then has to be applied | 2282 are bound to make changes afterwards. Indexing then has to be applied |
2185 to the changed regions. The command | 2283 to the changed regions. The command |
2186 @code{reftex-index-phrases-apply-to-region} is designed for this | 2284 @code{reftex-index-phrases-apply-to-region} is designed for this |
2187 purpose. When called from a LaTeX document with active region, it will | 2285 purpose. When called from a LaTeX document with active region, it will |
2188 apply @code{reftex-index-all-phrases} to the current region.@refill | 2286 apply @code{reftex-index-all-phrases} to the current region. |
2189 | 2287 |
2190 @node Displaying and Editing the Index, Builtin Index Macros, The Index Phrases File, Index Support | 2288 @node Displaying and Editing the Index, Builtin Index Macros, The Index Phrases File, Index Support |
2191 @section Displaying and Editing the Index | 2289 @section Displaying and Editing the Index |
2192 @cindex Displaying the Index | 2290 @cindex Displaying the Index |
2193 @cindex Editing the Index | 2291 @cindex Editing the Index |
2199 | 2297 |
2200 In order to compile and display the index, press @kbd{C-c >}. If the | 2298 In order to compile and display the index, press @kbd{C-c >}. If the |
2201 document uses multiple indices, @b{Ref@TeX{}} will ask you to select | 2299 document uses multiple indices, @b{Ref@TeX{}} will ask you to select |
2202 one. Then, all index entries will be sorted alphabetically and | 2300 one. Then, all index entries will be sorted alphabetically and |
2203 displayed in a special buffer, the @file{*Index*} buffer. From that | 2301 displayed in a special buffer, the @file{*Index*} buffer. From that |
2204 buffer you can check and edit each entry.@refill | 2302 buffer you can check and edit each entry. |
2205 | 2303 |
2206 The index can be restricted to the current section or the region. Then | 2304 The index can be restricted to the current section or the region. Then |
2207 only entries in that part of the document will go into the compiled | 2305 only entries in that part of the document will go into the compiled |
2208 index. To restrict to the current section, use a numeric prefix | 2306 index. To restrict to the current section, use a numeric prefix |
2209 @samp{2}, thus press @kbd{C-u 2 C-c >}. To restrict to the current | 2307 @samp{2}, thus press @kbd{C-u 2 C-c >}. To restrict to the current |
2210 region, make the region active and use a numeric prefix @samp{3} (press | 2308 region, make the region active and use a numeric prefix @samp{3} (press |
2211 @kbd{C-u 3 C-c >}). From within the @file{*Index*} buffer the | 2309 @kbd{C-u 3 C-c >}). From within the @file{*Index*} buffer the |
2212 restriction can be moved from one section to the next by pressing the | 2310 restriction can be moved from one section to the next by pressing the |
2213 @kbd{<} and @kbd{>} keys.@refill | 2311 @kbd{<} and @kbd{>} keys. |
2214 | 2312 |
2215 One caveat: @b{Ref@TeX{}} finds the definition point of an index entry | 2313 One caveat: @b{Ref@TeX{}} finds the definition point of an index entry |
2216 by searching near the buffer position where it had found to macro during | 2314 by searching near the buffer position where it had found to macro during |
2217 scanning. If you have several identical index entries in the same | 2315 scanning. If you have several identical index entries in the same |
2218 buffer and significant changes have shifted the entries around, you must | 2316 buffer and significant changes have shifted the entries around, you must |
2219 rescan the buffer to ensure the correspondence between the | 2317 rescan the buffer to ensure the correspondence between the |
2220 @file{*Index*} buffer and the definition locations. It is therefore | 2318 @file{*Index*} buffer and the definition locations. It is therefore |
2221 advisable to rescan the document (with @kbd{r} or @kbd{C-u r}) | 2319 advisable to rescan the document (with @kbd{r} or @kbd{C-u r}) |
2222 frequently while editing the index from the @file{*Index*} | 2320 frequently while editing the index from the @file{*Index*} |
2223 buffer.@refill | 2321 buffer. |
2224 | 2322 |
2225 @kindex ? | 2323 @kindex ? |
2226 Here is a list of special commands available in the @file{*Index*} buffer. A | 2324 Here is a list of special commands available in the @file{*Index*} buffer. A |
2227 summary of this information is always available by pressing | 2325 summary of this information is always available by pressing |
2228 @kbd{?}.@refill | 2326 @kbd{?}. |
2229 | 2327 |
2230 @table @kbd | 2328 @table @kbd |
2231 @tablesubheading{General} | 2329 @tablesubheading{General} |
2232 @item ? | 2330 @item ? |
2233 Display a summary of commands. | 2331 Display a summary of commands. |
2238 @tablesubheading{Moving around} | 2336 @tablesubheading{Moving around} |
2239 @item ! A..Z | 2337 @item ! A..Z |
2240 Pressing any capital letter will jump to the corresponding section in | 2338 Pressing any capital letter will jump to the corresponding section in |
2241 the @file{*Index*} buffer. The exclamation mark is special and jumps to | 2339 the @file{*Index*} buffer. The exclamation mark is special and jumps to |
2242 the first entries alphabetically sorted below @samp{A}. These are | 2340 the first entries alphabetically sorted below @samp{A}. These are |
2243 usually non-alphanumeric characters.@refill | 2341 usually non-alphanumeric characters. |
2244 @item n | 2342 @item n |
2245 Go to next entry.@refill | 2343 Go to next entry. |
2246 @item p | 2344 @item p |
2247 Go to previous entry.@refill | 2345 Go to previous entry. |
2248 | 2346 |
2249 @tablesubheading{Access to document locations} | 2347 @tablesubheading{Access to document locations} |
2250 @item @key{SPC} | 2348 @item @key{SPC} |
2251 Show the place in the document where this index entry is defined.@refill | 2349 Show the place in the document where this index entry is defined. |
2252 | 2350 |
2253 @item @key{TAB} | 2351 @item @key{TAB} |
2254 Go to the definition of the current index entry in another | 2352 Go to the definition of the current index entry in another |
2255 window.@refill | 2353 window. |
2256 | 2354 |
2257 @item @key{RET} | 2355 @item @key{RET} |
2258 Go to the definition of the current index entry and hide the | 2356 Go to the definition of the current index entry and hide the |
2259 @file{*Index*} buffer window.@refill | 2357 @file{*Index*} buffer window. |
2260 | 2358 |
2261 @item f | 2359 @item f |
2262 @vindex reftex-index-follow-mode | 2360 @vindex reftex-index-follow-mode |
2263 @vindex reftex-revisit-to-follow | 2361 @vindex reftex-revisit-to-follow |
2264 Toggle follow mode. When follow mode is active, the other window will | 2362 Toggle follow mode. When follow mode is active, the other window will |
2266 buffer at point. This is similar to pressing @key{SPC} after each | 2364 buffer at point. This is similar to pressing @key{SPC} after each |
2267 cursor motion. The default for this flag can be set with the variable | 2365 cursor motion. The default for this flag can be set with the variable |
2268 @code{reftex-index-follow-mode}. Note that only context in files | 2366 @code{reftex-index-follow-mode}. Note that only context in files |
2269 already visited is shown. @b{Ref@TeX{}} will not visit a file just for | 2367 already visited is shown. @b{Ref@TeX{}} will not visit a file just for |
2270 follow mode. See, however, the variable | 2368 follow mode. See, however, the variable |
2271 @code{reftex-revisit-to-follow}.@refill | 2369 @code{reftex-revisit-to-follow}. |
2272 | 2370 |
2273 @tablesubheading{Entry editing} | 2371 @tablesubheading{Entry editing} |
2274 @item e | 2372 @item e |
2275 Edit the current index entry. In the minibuffer, you can edit the | 2373 Edit the current index entry. In the minibuffer, you can edit the |
2276 index macro which defines this entry.@refill | 2374 index macro which defines this entry. |
2277 | 2375 |
2278 @item C-k | 2376 @item C-k |
2279 Kill the index entry. Currently not implemented because I don't know | 2377 Kill the index entry. Currently not implemented because I don't know |
2280 how to implement an @code{undo} function for this.@refill | 2378 how to implement an @code{undo} function for this. |
2281 | 2379 |
2282 @item * | 2380 @item * |
2283 Edit the @var{key} part of the entry. This is the initial part of the | 2381 Edit the @var{key} part of the entry. This is the initial part of the |
2284 entry which determines the location of the entry in the index.@refill | 2382 entry which determines the location of the entry in the index. |
2285 | 2383 |
2286 @item | | 2384 @item | |
2287 Edit the @var{attribute} part of the entry. This is the part after the | 2385 Edit the @var{attribute} part of the entry. This is the part after the |
2288 vertical bar. With @code{MakeIndex}, this part is an encapsulating | 2386 vertical bar. With @code{MakeIndex}, this part is an encapsulating |
2289 macro. With @code{xindy}, it is called @emph{attribute} and is a | 2387 macro. With @code{xindy}, it is called @emph{attribute} and is a |
2290 property of the index entry that can lead to special formatting. When | 2388 property of the index entry that can lead to special formatting. When |
2291 called with @kbd{C-u} prefix, kill the entire @var{attribute} | 2389 called with @kbd{C-u} prefix, kill the entire @var{attribute} |
2292 part.@refill | 2390 part. |
2293 | 2391 |
2294 @item @@ | 2392 @item @@ |
2295 Edit the @var{visual} part of the entry. This is the part after the | 2393 Edit the @var{visual} part of the entry. This is the part after the |
2296 @samp{@@} which is used by @code{MakeIndex} to change the visual | 2394 @samp{@@} which is used by @code{MakeIndex} to change the visual |
2297 appearance of the entry in the index. When called with @kbd{C-u} | 2395 appearance of the entry in the index. When called with @kbd{C-u} |
2298 prefix, kill the entire @var{visual} part.@refill | 2396 prefix, kill the entire @var{visual} part. |
2299 | 2397 |
2300 @item ( | 2398 @item ( |
2301 Toggle the beginning of page range property @samp{|(} of the | 2399 Toggle the beginning of page range property @samp{|(} of the |
2302 entry.@refill | 2400 entry. |
2303 | 2401 |
2304 @item ) | 2402 @item ) |
2305 Toggle the end of page range property @samp{|)} of the entry.@refill | 2403 Toggle the end of page range property @samp{|)} of the entry. |
2306 | 2404 |
2307 @item _ | 2405 @item _ |
2308 Make the current entry a subentry. This command will prompt for the | 2406 Make the current entry a subentry. This command will prompt for the |
2309 superordinate entry and insert it.@refill | 2407 superordinate entry and insert it. |
2310 | 2408 |
2311 @item ^ | 2409 @item ^ |
2312 Remove the highest superordinate entry. If the current entry is a | 2410 Remove the highest superordinate entry. If the current entry is a |
2313 subitem (@samp{aaa!bbb!ccc}), this function moves it up the hierarchy | 2411 subitem (@samp{aaa!bbb!ccc}), this function moves it up the hierarchy |
2314 (@samp{bbb!ccc}).@refill | 2412 (@samp{bbb!ccc}). |
2315 | 2413 |
2316 @tablesubheading{Exiting} | 2414 @tablesubheading{Exiting} |
2317 @item q | 2415 @item q |
2318 Hide the @file{*Index*} buffer.@refill | 2416 Hide the @file{*Index*} buffer. |
2319 | 2417 |
2320 @item k | 2418 @item k |
2321 Kill the @file{*Index*} buffer.@refill | 2419 Kill the @file{*Index*} buffer. |
2322 | 2420 |
2323 @item C-c = | 2421 @item C-c = |
2324 Switch to the Table of Contents buffer of this document.@refill | 2422 Switch to the Table of Contents buffer of this document. |
2325 | 2423 |
2326 @tablesubheading{Controlling what gets displayed} | 2424 @tablesubheading{Controlling what gets displayed} |
2327 @item c | 2425 @item c |
2328 @vindex reftex-index-include-context | 2426 @vindex reftex-index-include-context |
2329 Toggle the display of short context in the @file{*Index*} buffer. The | 2427 Toggle the display of short context in the @file{*Index*} buffer. The |
2330 default for this flag can be set with the variable | 2428 default for this flag can be set with the variable |
2331 @code{reftex-index-include-context}.@refill | 2429 @code{reftex-index-include-context}. |
2332 | 2430 |
2333 @item @} | 2431 @item @} |
2334 Restrict the index to a single document section. The corresponding | 2432 Restrict the index to a single document section. The corresponding |
2335 section number will be displayed in the @code{R<>} indicator in the | 2433 section number will be displayed in the @code{R<>} indicator in the |
2336 mode line and in the header of the @file{*Index*} buffer.@refill | 2434 mode line and in the header of the @file{*Index*} buffer. |
2337 | 2435 |
2338 @item @{ | 2436 @item @{ |
2339 Widen the index to contain all entries of the document.@refill | 2437 Widen the index to contain all entries of the document. |
2340 | 2438 |
2341 @item < | 2439 @item < |
2342 When the index is currently restricted, move the restriction to the | 2440 When the index is currently restricted, move the restriction to the |
2343 previous section.@refill | 2441 previous section. |
2344 | 2442 |
2345 @item > | 2443 @item > |
2346 When the index is currently restricted, move the restriction to the | 2444 When the index is currently restricted, move the restriction to the |
2347 next section.@refill | 2445 next section. |
2348 | 2446 |
2349 @tablesubheading{Updating the buffer} | 2447 @tablesubheading{Updating the buffer} |
2350 @item g | 2448 @item g |
2351 Rebuild the @file{*Index*} buffer. This does @emph{not} rescan the | 2449 Rebuild the @file{*Index*} buffer. This does @emph{not} rescan the |
2352 document. However, it sorts the entries again, so that edited entries | 2450 document. However, it sorts the entries again, so that edited entries |
2353 will move to the correct position.@refill | 2451 will move to the correct position. |
2354 | 2452 |
2355 @item r | 2453 @item r |
2356 @vindex reftex-enable-partial-scans | 2454 @vindex reftex-enable-partial-scans |
2357 Reparse the LaTeX document and rebuild the @file{*Index*} buffer. When | 2455 Reparse the LaTeX document and rebuild the @file{*Index*} buffer. When |
2358 @code{reftex-enable-partial-scans} is non-@code{nil}, rescan only the file this | 2456 @code{reftex-enable-partial-scans} is non-@code{nil}, rescan only the file this |
2359 location is defined in, not the entire document.@refill | 2457 location is defined in, not the entire document. |
2360 | 2458 |
2361 @item C-u r | 2459 @item C-u r |
2362 Reparse the @emph{entire} LaTeX document and rebuild the @file{*Index*} | 2460 Reparse the @emph{entire} LaTeX document and rebuild the @file{*Index*} |
2363 buffer.@refill | 2461 buffer. |
2364 | 2462 |
2365 @item s | 2463 @item s |
2366 Switch to a different index (for documents with multiple | 2464 Switch to a different index (for documents with multiple |
2367 indices).@refill | 2465 indices). |
2368 @end table | 2466 @end table |
2369 | 2467 |
2370 | 2468 |
2371 @node Builtin Index Macros, Defining Index Macros, Displaying and Editing the Index, Index Support | 2469 @node Builtin Index Macros, Defining Index Macros, Displaying and Editing the Index, Index Support |
2372 @section Builtin Index Macros | 2470 @section Builtin Index Macros |
2479 @end lisp | 2577 @end lisp |
2480 | 2578 |
2481 which specifies that the macro identified with the character @code{?x} (the | 2579 which specifies that the macro identified with the character @code{?x} (the |
2482 @code{\ix} macro) should be used for indexing phrases and words already | 2580 @code{\ix} macro) should be used for indexing phrases and words already |
2483 in the buffer with @kbd{C-c /} (@code{reftex-index-selection-or-word}). | 2581 in the buffer with @kbd{C-c /} (@code{reftex-index-selection-or-word}). |
2484 The index tag is "idx".@refill | 2582 The index tag is "idx". |
2485 | 2583 |
2486 @node Viewing Cross-References, RefTeXs Menu, Index Support, Top | 2584 @node Viewing Cross-References, RefTeXs Menu, Index Support, Top |
2487 @chapter Viewing Cross--References | 2585 @chapter Viewing Cross--References |
2488 @findex reftex-view-crossref | 2586 @findex reftex-view-crossref |
2489 @findex reftex-mouse-view-crossref | 2587 @findex reftex-mouse-view-crossref |
2493 @b{Ref@TeX{}} can display cross--referencing information. This means, | 2591 @b{Ref@TeX{}} can display cross--referencing information. This means, |
2494 if two document locations are linked, @b{Ref@TeX{}} can display the | 2592 if two document locations are linked, @b{Ref@TeX{}} can display the |
2495 matching location(s) in another window. The @code{\label} and @code{\ref} | 2593 matching location(s) in another window. The @code{\label} and @code{\ref} |
2496 macros are one way of establishing such a link. Also, a @code{\cite} | 2594 macros are one way of establishing such a link. Also, a @code{\cite} |
2497 macro is linked to the corresponding @code{\bibitem} macro or a BibTeX | 2595 macro is linked to the corresponding @code{\bibitem} macro or a BibTeX |
2498 database entry.@refill | 2596 database entry. |
2499 | 2597 |
2500 The feature is invoked by pressing @kbd{C-c &} | 2598 The feature is invoked by pressing @kbd{C-c &} |
2501 (@code{reftex-view-crossref}) while point is on the @var{key} argument | 2599 (@code{reftex-view-crossref}) while point is on the @var{key} argument |
2502 of a macro involved in cross--referencing. You can also click with | 2600 of a macro involved in cross--referencing. You can also click with |
2503 @kbd{S-mouse-2} on the macro argument. Here is what will happen for | 2601 @kbd{S-mouse-2} on the macro argument. Here is what will happen for |
2504 individual classes of macros:@refill | 2602 individual classes of macros: |
2505 | 2603 |
2506 @table @asis | 2604 @table @asis |
2507 | 2605 |
2508 @item @code{\ref} | 2606 @item @code{\ref} |
2509 @cindex @code{\ref} | 2607 @cindex @code{\ref} |
2510 Display the corresponding label definition. All usual | 2608 Display the corresponding label definition. All usual |
2511 variants@footnote{all macros that start with @samp{ref} or end with | 2609 variants@footnote{all macros that start with @samp{ref} or end with |
2512 @samp{ref} or @samp{refrange}} of the @code{\ref} macro are active for | 2610 @samp{ref} or @samp{refrange}} of the @code{\ref} macro are active for |
2513 cross--reference display. This works also for labels defined in an | 2611 cross--reference display. This works also for labels defined in an |
2514 external document when the current document refers to them through the | 2612 external document when the current document refers to them through the |
2515 @code{xr} interface (@pxref{xr (LaTeX package)}).@refill | 2613 @code{xr} interface (@pxref{xr (LaTeX package)}). |
2516 | 2614 |
2517 @item @code{\label} | 2615 @item @code{\label} |
2518 @cindex @code{\label} | 2616 @cindex @code{\label} |
2519 @vindex reftex-label-alist | 2617 @vindex reftex-label-alist |
2520 Display a document location which references this label. Pressing | 2618 Display a document location which references this label. Pressing |
2521 @kbd{C-c &} several times moves through the entire document and finds | 2619 @kbd{C-c &} several times moves through the entire document and finds |
2522 all locations. Not only the @code{\label} macro but also other macros | 2620 all locations. Not only the @code{\label} macro but also other macros |
2523 with label arguments (as configured with @code{reftex-label-alist}) are | 2621 with label arguments (as configured with @code{reftex-label-alist}) are |
2524 active for cross--reference display.@refill | 2622 active for cross--reference display. |
2525 | 2623 |
2526 @item @code{\cite} | 2624 @item @code{\cite} |
2527 @cindex @code{\cite} | 2625 @cindex @code{\cite} |
2528 Display the corresponding BibTeX database entry or @code{\bibitem}. | 2626 Display the corresponding BibTeX database entry or @code{\bibitem}. |
2529 All usual variants@footnote{all macros that either start or end with | 2627 All usual variants@footnote{all macros that either start or end with |
2530 @samp{cite}} of the @code{\cite} macro are active for cross--reference | 2628 @samp{cite}} of the @code{\cite} macro are active for cross--reference |
2531 display.@refill | 2629 display. |
2532 | 2630 |
2533 @item @code{\bibitem} | 2631 @item @code{\bibitem} |
2534 @cindex @code{\bibitem} | 2632 @cindex @code{\bibitem} |
2535 Display a document location which cites this article. Pressing | 2633 Display a document location which cites this article. Pressing |
2536 @kbd{C-c &} several times moves through the entire document and finds | 2634 @kbd{C-c &} several times moves through the entire document and finds |
2537 all locations.@refill | 2635 all locations. |
2538 | 2636 |
2539 @item BibTeX | 2637 @item BibTeX |
2540 @cindex BibTeX buffer, viewing cite locations from | 2638 @cindex BibTeX buffer, viewing cite locations from |
2541 @cindex Viewing cite locations from BibTeX buffer | 2639 @cindex Viewing cite locations from BibTeX buffer |
2542 @kbd{C-c &} is also active in BibTeX buffers. All locations in a | 2640 @kbd{C-c &} is also active in BibTeX buffers. All locations in a |
2543 document where the database entry at point is cited will be displayed. | 2641 document where the database entry at point is cited will be displayed. |
2544 On first use, @b{Ref@TeX{}} will prompt for a buffer which belongs to | 2642 On first use, @b{Ref@TeX{}} will prompt for a buffer which belongs to |
2545 the document you want to search. Subsequent calls will use the same | 2643 the document you want to search. Subsequent calls will use the same |
2546 document, until you break this link with a prefix argument to @kbd{C-c | 2644 document, until you break this link with a prefix argument to @kbd{C-c |
2547 &}.@refill | 2645 &}. |
2548 | 2646 |
2549 @item @code{\index} | 2647 @item @code{\index} |
2550 @cindex @code{\index} | 2648 @cindex @code{\index} |
2551 Display other locations in the document which are marked by an index | 2649 Display other locations in the document which are marked by an index |
2552 macro with the same key argument. Along with the standard @code{\index} | 2650 macro with the same key argument. Along with the standard @code{\index} |
2553 and @code{\glossary} macros, all macros configured in | 2651 and @code{\glossary} macros, all macros configured in |
2554 @code{reftex-index-macros} will be recognized.@refill | 2652 @code{reftex-index-macros} will be recognized. |
2555 @end table | 2653 @end table |
2556 | 2654 |
2557 @vindex reftex-view-crossref-extra | 2655 @vindex reftex-view-crossref-extra |
2558 While the display of cross referencing information for the above | 2656 While the display of cross referencing information for the above |
2559 mentioned macros is hard--coded, you can configure additional relations | 2657 mentioned macros is hard--coded, you can configure additional relations |
2570 | 2668 |
2571 @b{Ref@TeX{}} installs a @code{Ref} menu in the menu bar on systems | 2669 @b{Ref@TeX{}} installs a @code{Ref} menu in the menu bar on systems |
2572 which support this. From this menu you can access all of | 2670 which support this. From this menu you can access all of |
2573 @b{Ref@TeX{}}'s commands and a few of its options. There is also a | 2671 @b{Ref@TeX{}}'s commands and a few of its options. There is also a |
2574 @code{Customize} submenu which can be used to access @b{Ref@TeX{}}'s | 2672 @code{Customize} submenu which can be used to access @b{Ref@TeX{}}'s |
2575 entire set of options.@refill | 2673 entire set of options. |
2576 | 2674 |
2577 @node Key Bindings, Faces, RefTeXs Menu, Top | 2675 @node Key Bindings, Faces, RefTeXs Menu, Top |
2578 @section Default Key Bindings | 2676 @section Default Key Bindings |
2579 @cindex Key Bindings, summary | 2677 @cindex Key Bindings, summary |
2580 | 2678 |
2607 @kbd{C-c >} @code{reftex-display-index} | 2705 @kbd{C-c >} @code{reftex-display-index} |
2608 @end example | 2706 @end example |
2609 | 2707 |
2610 Note that the @kbd{S-mouse-2} binding is only provided if this key is | 2708 Note that the @kbd{S-mouse-2} binding is only provided if this key is |
2611 not already used by some other package. @b{Ref@TeX{}} will not override an | 2709 not already used by some other package. @b{Ref@TeX{}} will not override an |
2612 existing binding to @kbd{S-mouse-2}.@refill | 2710 existing binding to @kbd{S-mouse-2}. |
2613 | 2711 |
2614 Personally, I also bind some functions in the users @kbd{C-c} map for | 2712 Personally, I also bind some functions in the users @kbd{C-c} map for |
2615 easier access.@refill | 2713 easier access. |
2616 | 2714 |
2617 @c FIXME: Do we need bindings for the Index macros here as well? | 2715 @c FIXME: Do we need bindings for the Index macros here as well? |
2618 @c C-c i C-c I or so???? | 2716 @c C-c i C-c I or so???? |
2619 @c How about key bindings for reftex-reset-mode and reftex-parse-document? | 2717 @c How about key bindings for reftex-reset-mode and reftex-parse-document? |
2620 @kindex C-c t | 2718 @kindex C-c t |
2656 table of contents buffers. It does not create its own faces, but uses | 2754 table of contents buffers. It does not create its own faces, but uses |
2657 the ones defined in @file{font-lock.el}. Therefore, @b{Ref@TeX{}} will | 2755 the ones defined in @file{font-lock.el}. Therefore, @b{Ref@TeX{}} will |
2658 use faces only when @code{font-lock} is loaded. This seems to be | 2756 use faces only when @code{font-lock} is loaded. This seems to be |
2659 reasonable because people who like faces will very likely have it | 2757 reasonable because people who like faces will very likely have it |
2660 loaded. If you wish to turn off fontification or change the involved | 2758 loaded. If you wish to turn off fontification or change the involved |
2661 faces, see @ref{Options (Fontification)}.@refill | 2759 faces, see @ref{Options (Fontification)}. |
2662 | 2760 |
2663 @node Multifile Documents, Language Support, AUCTeX, Top | 2761 @node Multifile Documents, Language Support, AUCTeX, Top |
2664 @section Multifile Documents | 2762 @section Multifile Documents |
2665 @cindex Multifile documents | 2763 @cindex Multifile documents |
2666 @cindex Documents, spread over files | 2764 @cindex Documents, spread over files |
2667 | 2765 |
2668 The following is relevant when working with documents spread over many | 2766 The following is relevant when working with documents spread over many |
2669 files:@refill | 2767 files: |
2670 | 2768 |
2671 @itemize @bullet | 2769 @itemize @bullet |
2672 @item | 2770 @item |
2673 @b{Ref@TeX{}} has full support for multifile documents. You can edit parts of | 2771 @b{Ref@TeX{}} has full support for multifile documents. You can edit parts of |
2674 several (multifile) documents at the same time without conflicts. | 2772 several (multifile) documents at the same time without conflicts. |
2675 @b{Ref@TeX{}} provides functions to run @code{grep}, @code{search} and | 2773 @b{Ref@TeX{}} provides functions to run @code{grep}, @code{search} and |
2676 @code{query-replace} on all files which are part of a multifile | 2774 @code{query-replace} on all files which are part of a multifile |
2677 document.@refill | 2775 document. |
2678 | 2776 |
2679 @item | 2777 @item |
2680 @vindex tex-main-file | 2778 @vindex tex-main-file |
2681 @vindex TeX-master | 2779 @vindex TeX-master |
2682 All files belonging to a multifile document should define a File | 2780 All files belonging to a multifile document should define a File |
2683 Variable (@code{TeX-master} for AUCTeX or @code{tex-main-file} for the | 2781 Variable (@code{TeX-master} for AUCTeX or @code{tex-main-file} for the |
2684 standard Emacs LaTeX mode) containing the name of the master file. For | 2782 standard Emacs LaTeX mode) containing the name of the master file. For |
2685 example, to set the file variable @code{TeX-master}, include something | 2783 example, to set the file variable @code{TeX-master}, include something |
2686 like the following at the end of each TeX file:@refill | 2784 like the following at the end of each TeX file: |
2687 | 2785 |
2688 @example | 2786 @example |
2689 %%% Local Variables: *** | 2787 %%% Local Variables: *** |
2690 %%% mode:latex *** | 2788 %%% mode:latex *** |
2691 %%% TeX-master: "thesis.tex" *** | 2789 %%% TeX-master: "thesis.tex" *** |
2701 will actually ask you for each new file about the master file and insert | 2799 will actually ask you for each new file about the master file and insert |
2702 this comment automatically. For more details see the documentation of | 2800 this comment automatically. For more details see the documentation of |
2703 the AUCTeX (@pxref{Multifile,,,auctex, The AUC TeX User Manual}), the | 2801 the AUCTeX (@pxref{Multifile,,,auctex, The AUC TeX User Manual}), the |
2704 documentation about the Emacs (La)TeX mode (@pxref{TeX Print,,,emacs, | 2802 documentation about the Emacs (La)TeX mode (@pxref{TeX Print,,,emacs, |
2705 The GNU Emacs Manual}) and the Emacs documentation on File Variables | 2803 The GNU Emacs Manual}) and the Emacs documentation on File Variables |
2706 (@pxref{File Variables,,,emacs, The GNU Emacs Manual}).@refill | 2804 (@pxref{File Variables,,,emacs, The GNU Emacs Manual}). |
2707 | 2805 |
2708 @item | 2806 @item |
2709 The context of a label definition must be found in the same file as the | 2807 The context of a label definition must be found in the same file as the |
2710 label itself in order to be processed correctly by @b{Ref@TeX{}}. The only | 2808 label itself in order to be processed correctly by @b{Ref@TeX{}}. The only |
2711 exception is that section labels referring to a section statement | 2809 exception is that section labels referring to a section statement |
2712 outside the current file can still use that section title as | 2810 outside the current file can still use that section title as |
2713 context.@refill | 2811 context. |
2714 @end itemize | 2812 @end itemize |
2715 | 2813 |
2716 @node Language Support, Finding Files, Multifile Documents, Top | 2814 @node Language Support, Finding Files, Multifile Documents, Top |
2717 @section Language Support | 2815 @section Language Support |
2718 @cindex Language support | 2816 @cindex Language support |
2851 books, where some of it still might be useful.} | 2949 books, where some of it still might be useful.} |
2852 | 2950 |
2853 Implementing the principle of least surprises, the default settings of | 2951 Implementing the principle of least surprises, the default settings of |
2854 @b{Ref@TeX{}} ensure a safe ride for beginners and casual users. However, | 2952 @b{Ref@TeX{}} ensure a safe ride for beginners and casual users. However, |
2855 when using @b{Ref@TeX{}} for a large project and/or on a small computer, | 2953 when using @b{Ref@TeX{}} for a large project and/or on a small computer, |
2856 there are ways to improve speed or memory usage.@refill | 2954 there are ways to improve speed or memory usage. |
2857 | 2955 |
2858 @itemize @bullet | 2956 @itemize @bullet |
2859 @item | 2957 @item |
2860 @b{Removing Lookup Buffers}@* | 2958 @b{Removing Lookup Buffers}@* |
2861 @cindex Removing lookup buffers | 2959 @cindex Removing lookup buffers |
2885 Likewise, the @kbd{r} key in both the label selection buffer and the | 2983 Likewise, the @kbd{r} key in both the label selection buffer and the |
2886 table-of-contents buffer will only prompt scanning of the file in which | 2984 table-of-contents buffer will only prompt scanning of the file in which |
2887 the label or section macro near the cursor was defined. Re-parsing of | 2985 the label or section macro near the cursor was defined. Re-parsing of |
2888 the entire document is still available by using @kbd{C-u C-u} as a | 2986 the entire document is still available by using @kbd{C-u C-u} as a |
2889 prefix, or the capital @kbd{R} key in the menus. To use this feature, | 2987 prefix, or the capital @kbd{R} key in the menus. To use this feature, |
2890 try@refill | 2988 try |
2891 | 2989 |
2892 @vindex reftex-enable-partial-scans | 2990 @vindex reftex-enable-partial-scans |
2893 @lisp | 2991 @lisp |
2894 (setq reftex-enable-partial-scans t) | 2992 (setq reftex-enable-partial-scans t) |
2895 @end lisp | 2993 @end lisp |
2904 information can be stored in a file. The file @file{MASTER.rel} is used | 3002 information can be stored in a file. The file @file{MASTER.rel} is used |
2905 for storing information about a document with master file | 3003 for storing information about a document with master file |
2906 @file{MASTER.tex}. It is written automatically when you kill a buffer | 3004 @file{MASTER.tex}. It is written automatically when you kill a buffer |
2907 in @code{reftex-mode} or when you exit Emacs. The information is | 3005 in @code{reftex-mode} or when you exit Emacs. The information is |
2908 restored when you begin working with a document in a new editing | 3006 restored when you begin working with a document in a new editing |
2909 session. To use this feature, put into @file{.emacs}:@refill | 3007 session. To use this feature, put into @file{.emacs}: |
2910 | 3008 |
2911 @vindex reftex-save-parse-info | 3009 @vindex reftex-save-parse-info |
2912 @lisp | 3010 @lisp |
2913 (setq reftex-save-parse-info t) | 3011 (setq reftex-save-parse-info t) |
3012 @end lisp | |
3013 | |
3014 @item | |
3015 @b{Identifying label types by prefix}@* | |
3016 @cindex Parse information, saving to a file | |
3017 @vindex reftex-trust-label-prefix | |
3018 @b{Ref@TeX{}} normally parses around each label to check in which | |
3019 environment this label is located, in order to assign a label type to | |
3020 the label. If your document contains thousands of labels, document | |
3021 parsing will take considerable time. If you have been using label prefixes | |
3022 like tab: and fn: consistently, you can tell @b{Ref@TeX{}} to get the | |
3023 label type directly from the prefix, without additional parsing. This | |
3024 will be faster and also allow labels to end up in the correct category | |
3025 if for some reason it is not possible to derive the correct type from | |
3026 context. For example, to enable this feature for footnote and | |
3027 equation labels, use | |
3028 | |
3029 @lisp | |
3030 (setq reftex-trust-label-prefix '("fn:" "eq:")) | |
2914 @end lisp | 3031 @end lisp |
2915 | 3032 |
2916 @item | 3033 @item |
2917 @b{Automatic Document Scans}@* | 3034 @b{Automatic Document Scans}@* |
2918 @cindex Automatic document scans | 3035 @cindex Automatic document scans |
2925 (setq reftex-allow-automatic-rescan nil) | 3042 (setq reftex-allow-automatic-rescan nil) |
2926 @end lisp | 3043 @end lisp |
2927 | 3044 |
2928 @b{Ref@TeX{}} will then occasionally annotate new labels in the selection | 3045 @b{Ref@TeX{}} will then occasionally annotate new labels in the selection |
2929 buffer, saying that their position in the label list in uncertain. A | 3046 buffer, saying that their position in the label list in uncertain. A |
2930 manual document scan will fix this.@refill | 3047 manual document scan will fix this. |
2931 | 3048 |
2932 @item | 3049 @item |
2933 @b{Multiple Selection Buffers}@* | 3050 @b{Multiple Selection Buffers}@* |
2934 @cindex Multiple selection buffers | 3051 @cindex Multiple selection buffers |
2935 @cindex Selection buffers, multiple | 3052 @cindex Selection buffers, multiple |
2939 separate selection buffer for each label type and to keep this buffer | 3056 separate selection buffer for each label type and to keep this buffer |
2940 from one selection to the next. These buffers are updated automatically | 3057 from one selection to the next. These buffers are updated automatically |
2941 only when a new label has been added in the buffers category with | 3058 only when a new label has been added in the buffers category with |
2942 @code{reftex-label}. Updating the buffer takes as long as recreating it | 3059 @code{reftex-label}. Updating the buffer takes as long as recreating it |
2943 - so the time saving is limited to cases where no new labels of that | 3060 - so the time saving is limited to cases where no new labels of that |
2944 category have been added. To turn on this feature, use@refill | 3061 category have been added. To turn on this feature, use |
2945 | 3062 |
2946 @vindex reftex-use-multiple-selection-buffers | 3063 @vindex reftex-use-multiple-selection-buffers |
2947 @lisp | 3064 @lisp |
2948 (setq reftex-use-multiple-selection-buffers t) | 3065 (setq reftex-use-multiple-selection-buffers t) |
2949 @end lisp | 3066 @end lisp |
2951 @noindent | 3068 @noindent |
2952 @cindex Selection buffers, updating | 3069 @cindex Selection buffers, updating |
2953 You can also inhibit the automatic updating entirely. Then the | 3070 You can also inhibit the automatic updating entirely. Then the |
2954 selection buffer will always pop up very fast, but may not contain the | 3071 selection buffer will always pop up very fast, but may not contain the |
2955 most recently defined labels. You can always update the buffer by hand, | 3072 most recently defined labels. You can always update the buffer by hand, |
2956 with the @kbd{g} key. To get this behavior, use instead@refill | 3073 with the @kbd{g} key. To get this behavior, use instead |
2957 | 3074 |
2958 @vindex reftex-auto-update-selection-buffers | 3075 @vindex reftex-auto-update-selection-buffers |
2959 @lisp | 3076 @lisp |
2960 (setq reftex-use-multiple-selection-buffers t | 3077 (setq reftex-use-multiple-selection-buffers t |
2961 reftex-auto-update-selection-buffers nil) | 3078 reftex-auto-update-selection-buffers nil) |
2982 | 3099 |
2983 AUCTeX is without doubt the best major mode for editing TeX and LaTeX | 3100 AUCTeX is without doubt the best major mode for editing TeX and LaTeX |
2984 files with Emacs (@pxref{Top,AUCTeX,,auctex, The AUCTeX User Manual}). | 3101 files with Emacs (@pxref{Top,AUCTeX,,auctex, The AUCTeX User Manual}). |
2985 If AUCTeX is not part of your Emacs distribution, you can get | 3102 If AUCTeX is not part of your Emacs distribution, you can get |
2986 it@footnote{XEmacs 21.x users may want to install the corresponding | 3103 it@footnote{XEmacs 21.x users may want to install the corresponding |
2987 XEmacs package.} by ftp from the | 3104 XEmacs package.} by ftp from the @value{AUCTEXSITE}. |
2988 @uref{ftp://ftp.gnu.org/pub/gnu/auctex,AUCTeX distribution site}. | |
2989 | 3105 |
2990 @menu | 3106 @menu |
2991 * AUCTeX-RefTeX Interface:: How both packages work together | 3107 * AUCTeX-RefTeX Interface:: How both packages work together |
2992 * Style Files:: AUCTeX's style files can support RefTeX | 3108 * Style Files:: AUCTeX's style files can support RefTeX |
2993 * Bib-Cite:: Hypertext reading of a document | 3109 * Bib-Cite:: Hypertext reading of a document |
3000 interface is turned on, both packages will interact closely. Instead of | 3116 interface is turned on, both packages will interact closely. Instead of |
3001 using @b{Ref@TeX{}}'s commands directly, you can then also use them | 3117 using @b{Ref@TeX{}}'s commands directly, you can then also use them |
3002 indirectly as part of the AUCTeX | 3118 indirectly as part of the AUCTeX |
3003 environment@footnote{@b{Ref@TeX{}} 4.0 and AUCTeX 9.10c will be | 3119 environment@footnote{@b{Ref@TeX{}} 4.0 and AUCTeX 9.10c will be |
3004 needed for all of this to work. Parts of it work also with earlier | 3120 needed for all of this to work. Parts of it work also with earlier |
3005 versions.}. The interface is turned on with@refill | 3121 versions.}. The interface is turned on with |
3006 | 3122 |
3007 @lisp | 3123 @lisp |
3008 (setq reftex-plug-into-AUCTeX t) | 3124 (setq reftex-plug-into-AUCTeX t) |
3009 @end lisp | 3125 @end lisp |
3010 | 3126 |
3044 will offer its default label which is derived from the section title. | 3160 will offer its default label which is derived from the section title. |
3045 | 3161 |
3046 @item | 3162 @item |
3047 @b{AUCTeX tells @b{Ref@TeX{}} about new sections}@* | 3163 @b{AUCTeX tells @b{Ref@TeX{}} about new sections}@* |
3048 When creating a new section with @kbd{C-c C-s}, @b{Ref@TeX{}} will not | 3164 When creating a new section with @kbd{C-c C-s}, @b{Ref@TeX{}} will not |
3049 have to rescan the buffer in order to see it.@refill | 3165 have to rescan the buffer in order to see it. |
3050 | 3166 |
3051 @item | 3167 @item |
3052 @findex reftex-arg-label | 3168 @findex reftex-arg-label |
3053 @findex TeX-arg-label, @r{AUCTeX function} | 3169 @findex TeX-arg-label, @r{AUCTeX function} |
3054 @findex reftex-arg-ref | 3170 @findex reftex-arg-ref |
3068 do this, which is not reversible. However, @b{Ref@TeX{}} implements the | 3184 do this, which is not reversible. However, @b{Ref@TeX{}} implements the |
3069 old functionality when you later decide to turn off the interface.} and | 3185 old functionality when you later decide to turn off the interface.} and |
3070 supplies the macro arguments with @b{Ref@TeX{}'s} mechanisms. For | 3186 supplies the macro arguments with @b{Ref@TeX{}'s} mechanisms. For |
3071 example, when you type @kbd{C-c @key{RET} ref @key{RET}}, @b{Ref@TeX{}} | 3187 example, when you type @kbd{C-c @key{RET} ref @key{RET}}, @b{Ref@TeX{}} |
3072 will supply its label selection process (@pxref{Referencing | 3188 will supply its label selection process (@pxref{Referencing |
3073 Labels}).@refill | 3189 Labels}). |
3074 | 3190 |
3075 @item | 3191 @item |
3076 @b{@b{Ref@TeX{}} tells AUCTeX about new labels, citation-- and index keys}@* | 3192 @b{@b{Ref@TeX{}} tells AUCTeX about new labels, citation-- and index keys}@* |
3077 @b{Ref@TeX{}} will add all newly created labels to AUCTeX's completion list. | 3193 @b{Ref@TeX{}} will add all newly created labels to AUCTeX's completion list. |
3078 @end itemize | 3194 @end itemize |
3086 commands of a document (@pxref{Style Files,,,auctex}). Support for | 3202 commands of a document (@pxref{Style Files,,,auctex}). Support for |
3087 @b{Ref@TeX{}} in such a style file is useful when the LaTeX style | 3203 @b{Ref@TeX{}} in such a style file is useful when the LaTeX style |
3088 defines macros or environments connected with labels, citations, or the | 3204 defines macros or environments connected with labels, citations, or the |
3089 index. Many style files (e.g. @file{amsmath.el} or @file{natbib.el}) | 3205 index. Many style files (e.g. @file{amsmath.el} or @file{natbib.el}) |
3090 distributed with AUCTeX already support @b{Ref@TeX{}} in this | 3206 distributed with AUCTeX already support @b{Ref@TeX{}} in this |
3091 way.@refill | 3207 way. |
3092 | 3208 |
3093 Before calling a @b{Ref@TeX{}} function, the style hook should always | 3209 Before calling a @b{Ref@TeX{}} function, the style hook should always |
3094 test for the availability of the function, so that the style file will | 3210 test for the availability of the function, so that the style file will |
3095 also work for people who do not use @b{Ref@TeX{}}. @refill | 3211 also work for people who do not use @b{Ref@TeX{}}. |
3096 | 3212 |
3097 Additions made with style files in the way described below remain local | 3213 Additions made with style files in the way described below remain local |
3098 to the current document. For example, if one package uses AMSTeX, the | 3214 to the current document. For example, if one package uses AMSTeX, the |
3099 style file will make @b{Ref@TeX{}} switch over to @code{\eqref}, but | 3215 style file will make @b{Ref@TeX{}} switch over to @code{\eqref}, but |
3100 this will not affect other documents.@refill | 3216 this will not affect other documents. |
3101 | 3217 |
3102 @findex reftex-add-label-environments | 3218 @findex reftex-add-label-environments |
3103 @findex reftex-add-to-label-alist | 3219 @findex reftex-add-to-label-alist |
3104 A style hook may contain calls to | 3220 A style hook may contain calls to |
3105 @code{reftex-add-label-environments}@footnote{This used to be the | 3221 @code{reftex-add-label-environments}@footnote{This used to be the |
3106 function @code{reftex-add-to-label-alist} which is still available as an | 3222 function @code{reftex-add-to-label-alist} which is still available as an |
3107 alias for compatibility.} which defines additions to | 3223 alias for compatibility.} which defines additions to |
3108 @code{reftex-label-alist}. The argument taken by this function must have | 3224 @code{reftex-label-alist}. The argument taken by this function must have |
3109 the same format as @code{reftex-label-alist}. The @file{amsmath.el} | 3225 the same format as @code{reftex-label-alist}. The @file{amsmath.el} |
3110 style file of AUCTeX for example contains the following:@refill | 3226 style file of AUCTeX for example contains the following: |
3111 | 3227 |
3112 @lisp | 3228 @lisp |
3113 @group | 3229 @group |
3114 (TeX-add-style-hook "amsmath" | 3230 (TeX-add-style-hook "amsmath" |
3115 (lambda () | 3231 (lambda () |
3119 @end lisp | 3235 @end lisp |
3120 | 3236 |
3121 @noindent | 3237 @noindent |
3122 @findex LaTeX-add-environments, @r{AUCTeX} | 3238 @findex LaTeX-add-environments, @r{AUCTeX} |
3123 while a package @code{myprop} defining a @code{proposition} environment | 3239 while a package @code{myprop} defining a @code{proposition} environment |
3124 with @code{\newtheorem} might use@refill | 3240 with @code{\newtheorem} might use |
3125 | 3241 |
3126 @lisp | 3242 @lisp |
3127 @group | 3243 @group |
3128 (TeX-add-style-hook "myprop" | 3244 (TeX-add-style-hook "myprop" |
3129 (lambda () | 3245 (lambda () |
3137 | 3253 |
3138 @findex reftex-set-cite-format | 3254 @findex reftex-set-cite-format |
3139 Similarly, a style hook may contain a call to | 3255 Similarly, a style hook may contain a call to |
3140 @code{reftex-set-cite-format} to set the citation format. The style | 3256 @code{reftex-set-cite-format} to set the citation format. The style |
3141 file @file{natbib.el} for the Natbib citation style does switch | 3257 file @file{natbib.el} for the Natbib citation style does switch |
3142 @b{Ref@TeX{}}'s citation format like this:@refill | 3258 @b{Ref@TeX{}}'s citation format like this: |
3143 | 3259 |
3144 @lisp | 3260 @lisp |
3145 (TeX-add-style-hook "natbib" | 3261 (TeX-add-style-hook "natbib" |
3146 (lambda () | 3262 (lambda () |
3147 (if (fboundp 'reftex-set-cite-format) | 3263 (if (fboundp 'reftex-set-cite-format) |
3208 &}), @code{reftex-mouse-view-crossref} (bound to @kbd{S-mouse-2}), and | 3324 &}), @code{reftex-mouse-view-crossref} (bound to @kbd{S-mouse-2}), and |
3209 @code{reftex-search-document}. A somewhat fancier interface with mouse | 3325 @code{reftex-search-document}. A somewhat fancier interface with mouse |
3210 highlighting is provided (among other things) by Peter S. Galbraith's | 3326 highlighting is provided (among other things) by Peter S. Galbraith's |
3211 @file{bib-cite.el}. There is some overlap in the functionalities of | 3327 @file{bib-cite.el}. There is some overlap in the functionalities of |
3212 Bib-cite and @b{Ref@TeX{}}. Bib-cite.el comes bundled with | 3328 Bib-cite and @b{Ref@TeX{}}. Bib-cite.el comes bundled with |
3213 AUCTeX.@refill | 3329 AUCTeX. |
3214 | 3330 |
3215 Bib-cite version 3.06 and later can be configured so that bib-cite's | 3331 Bib-cite version 3.06 and later can be configured so that bib-cite's |
3216 mouse functions use @b{Ref@TeX{}} for displaying references and citations. | 3332 mouse functions use @b{Ref@TeX{}} for displaying references and citations. |
3217 This can be useful in particular when working with the LaTeX @code{xr} | 3333 This can be useful in particular when working with the LaTeX @code{xr} |
3218 package or with an explicit @code{thebibliography} environment (rather | 3334 package or with an explicit @code{thebibliography} environment (rather |
3219 than BibTeX). Bib-cite cannot handle those, but @b{Ref@TeX{}} does. To | 3335 than BibTeX). Bib-cite cannot handle those, but @b{Ref@TeX{}} does. To |
3220 make use of this feature, try@refill | 3336 make use of this feature, try |
3221 | 3337 |
3222 @vindex bib-cite-use-reftex-view-crossref | 3338 @vindex bib-cite-use-reftex-view-crossref |
3223 @lisp | 3339 @lisp |
3224 (setq bib-cite-use-reftex-view-crossref t) | 3340 (setq bib-cite-use-reftex-view-crossref t) |
3225 @end lisp | 3341 @end lisp |
3232 @itemize @bullet | 3348 @itemize @bullet |
3233 @item | 3349 @item |
3234 @b{LaTeX commands}@* | 3350 @b{LaTeX commands}@* |
3235 @cindex LaTeX commands, not found | 3351 @cindex LaTeX commands, not found |
3236 @code{\input}, @code{\include}, and @code{\section} (etc.) statements | 3352 @code{\input}, @code{\include}, and @code{\section} (etc.) statements |
3237 have to be first on a line (except for white space).@refill | 3353 have to be first on a line (except for white space). |
3238 | 3354 |
3239 @item | 3355 @item |
3240 @b{Commented regions}@* | 3356 @b{Commented regions}@* |
3241 @cindex Labels, commented out | 3357 @cindex Labels, commented out |
3242 @b{Ref@TeX{}} sees also labels in regions commented out and will refuse to | 3358 @b{Ref@TeX{}} sees also labels in regions commented out and will refuse to |
3243 make duplicates of such labels. This is considered to be a feature.@refill | 3359 make duplicates of such labels. This is considered to be a feature. |
3244 | 3360 |
3245 @item | 3361 @item |
3246 @b{Wrong section numbers}@* | 3362 @b{Wrong section numbers}@* |
3247 @cindex Section numbers, wrong | 3363 @cindex Section numbers, wrong |
3248 @vindex reftex-enable-partial-scans | 3364 @vindex reftex-enable-partial-scans |
3249 When using partial scans (@code{reftex-enable-partial-scans}), the section | 3365 When using partial scans (@code{reftex-enable-partial-scans}), the section |
3250 numbers in the table of contents may eventually become wrong. A full | 3366 numbers in the table of contents may eventually become wrong. A full |
3251 scan will fix this.@refill | 3367 scan will fix this. |
3252 | 3368 |
3253 @item | 3369 @item |
3254 @b{Local settings}@* | 3370 @b{Local settings}@* |
3255 @cindex Settings, local | 3371 @cindex Settings, local |
3256 @findex reftex-add-label-environments | 3372 @findex reftex-add-label-environments |
3261 local to a document, because they would interfere with settings in other | 3377 local to a document, because they would interfere with settings in other |
3262 documents, you should use AUCTeX and set up style files with calls to | 3378 documents, you should use AUCTeX and set up style files with calls to |
3263 @code{reftex-add-label-environments}, @code{reftex-set-cite-format}, | 3379 @code{reftex-add-label-environments}, @code{reftex-set-cite-format}, |
3264 @code{reftex-add-index-macros}, and @code{reftex-add-section-levels}. | 3380 @code{reftex-add-index-macros}, and @code{reftex-add-section-levels}. |
3265 Settings made with these functions remain local to the current | 3381 Settings made with these functions remain local to the current |
3266 document. @xref{AUCTeX}.@refill | 3382 document. @xref{AUCTeX}. |
3267 | 3383 |
3268 @item | 3384 @item |
3269 @b{Funny display in selection buffer}@* | 3385 @b{Funny display in selection buffer}@* |
3270 @cindex @code{x-symbol}, Emacs package | 3386 @cindex @code{x-symbol}, Emacs package |
3271 @cindex Emacs packages, @code{x-symbol} | 3387 @cindex Emacs packages, @code{x-symbol} |
3280 parts of a multifile document, because @b{Ref@TeX{}} visits these files | 3396 parts of a multifile document, because @b{Ref@TeX{}} visits these files |
3281 literally for speed reasons. Then both short context and section | 3397 literally for speed reasons. Then both short context and section |
3282 headings may look different from what you usually see on your screen. | 3398 headings may look different from what you usually see on your screen. |
3283 In rare cases @code{reftex-toc} may have problems to jump to an affected | 3399 In rare cases @code{reftex-toc} may have problems to jump to an affected |
3284 section heading. There are three possible ways to deal with | 3400 section heading. There are three possible ways to deal with |
3285 this:@refill | 3401 this: |
3286 @itemize @minus | 3402 @itemize @minus |
3287 @item | 3403 @item |
3288 @vindex reftex-keep-temporary-buffers | 3404 @vindex reftex-keep-temporary-buffers |
3289 @code{(setq reftex-keep-temporary-buffers t)}@* | 3405 @code{(setq reftex-keep-temporary-buffers t)}@* |
3290 This implies that @b{Ref@TeX{}} will load all parts of a multifile | 3406 This implies that @b{Ref@TeX{}} will load all parts of a multifile |
3291 document into Emacs (i.e. there won't be any temporary buffers).@refill | 3407 document into Emacs (i.e. there won't be any temporary buffers). |
3292 @item | 3408 @item |
3293 @vindex reftex-initialize-temporary-buffers | 3409 @vindex reftex-initialize-temporary-buffers |
3294 @code{(setq reftex-initialize-temporary-buffers t)}@* | 3410 @code{(setq reftex-initialize-temporary-buffers t)}@* |
3295 This means full initialization of temporary buffers. It involves | 3411 This means full initialization of temporary buffers. It involves |
3296 a penalty when the same unvisited file is used for lookup often.@refill | 3412 a penalty when the same unvisited file is used for lookup often. |
3297 @item | 3413 @item |
3298 Set @code{reftex-initialize-temporary-buffers} to a list of hook | 3414 Set @code{reftex-initialize-temporary-buffers} to a list of hook |
3299 functions doing a minimal initialization.@refill | 3415 functions doing a minimal initialization. |
3300 @end itemize | 3416 @end itemize |
3301 @vindex reftex-refontify-context | 3417 @vindex reftex-refontify-context |
3302 See also the variable @code{reftex-refontify-context}. | 3418 See also the variable @code{reftex-refontify-context}. |
3303 | 3419 |
3304 @item | 3420 @item |
3330 @code{step+} environment we actually tell @b{Ref@TeX{}} to look for the | 3446 @code{step+} environment we actually tell @b{Ref@TeX{}} to look for the |
3331 @emph{macro} @samp{\begin@{step+@}} and interpret the @emph{first} | 3447 @emph{macro} @samp{\begin@{step+@}} and interpret the @emph{first} |
3332 argument (which really is a second argument to the macro @code{\begin}) | 3448 argument (which really is a second argument to the macro @code{\begin}) |
3333 as a label of type @code{?p}. Argument count for this macro starts only | 3449 as a label of type @code{?p}. Argument count for this macro starts only |
3334 after the @samp{@{step+@}}, also when specifying how to get | 3450 after the @samp{@{step+@}}, also when specifying how to get |
3335 context.@refill | 3451 context. |
3336 | 3452 |
3337 @item | 3453 @item |
3338 @b{Idle timers in XEmacs}@* | 3454 @b{Idle timers in XEmacs}@* |
3339 @cindex Idle timer restart | 3455 @cindex Idle timer restart |
3340 @vindex reftex-use-itimer-in-xemacs | 3456 @vindex reftex-use-itimer-in-xemacs |
3350 @b{Viper mode}@* | 3466 @b{Viper mode}@* |
3351 @cindex Viper mode | 3467 @cindex Viper mode |
3352 @cindex Key bindings, problems with Viper mode | 3468 @cindex Key bindings, problems with Viper mode |
3353 @findex viper-harness-minor-mode | 3469 @findex viper-harness-minor-mode |
3354 With @i{Viper} mode prior to Vipers version 3.01, you need to protect | 3470 With @i{Viper} mode prior to Vipers version 3.01, you need to protect |
3355 @b{Ref@TeX{}}'s keymaps with@refill | 3471 @b{Ref@TeX{}}'s keymaps with |
3356 | 3472 |
3357 @lisp | 3473 @lisp |
3358 (viper-harness-minor-mode "reftex") | 3474 (viper-harness-minor-mode "reftex") |
3359 @end lisp | 3475 @end lisp |
3360 | 3476 |
3371 @cindex @code{http}, @b{Ref@TeX{}} home page | 3487 @cindex @code{http}, @b{Ref@TeX{}} home page |
3372 @cindex @code{ftp}, @b{Ref@TeX{}} site | 3488 @cindex @code{ftp}, @b{Ref@TeX{}} site |
3373 | 3489 |
3374 @b{Ref@TeX{}} was written by @i{Carsten Dominik} | 3490 @b{Ref@TeX{}} was written by @i{Carsten Dominik} |
3375 @email{dominik@@science.uva.nl}, with contributions by @i{Stephen | 3491 @email{dominik@@science.uva.nl}, with contributions by @i{Stephen |
3376 Eglen}. @b{Ref@TeX{}} is currently maintained by @refill | 3492 Eglen}. @b{Ref@TeX{}} is currently maintained by |
3377 | 3493 |
3378 @noindent | 3494 @noindent |
3379 Carsten Dominik @email{dominik@@science.uva.nl} | 3495 Carsten Dominik <dominik@@science.uva.nl> |
3380 | 3496 |
3381 If you have questions about @b{Ref@TeX{}}, there are several Usenet | 3497 If you have questions about @b{Ref@TeX{}}, there are several Usenet |
3382 groups which have competent readers: @code{comp.emacs}, | 3498 groups which have competent readers: @code{comp.emacs}, |
3383 @code{gnu.emacs.help}, @code{comp.emacs.xemacs}, @code{comp.text.tex}. | 3499 @code{gnu.emacs.help}, @code{comp.emacs.xemacs}, @code{comp.text.tex}, |
3384 You can also write directly to the maintainer. | 3500 @code{de.comp.text.tex}. You can also write directly to the |
3501 maintainer. | |
3385 | 3502 |
3386 If you find a bug in @b{Ref@TeX{}} or its documentation, or if you want | 3503 If you find a bug in @b{Ref@TeX{}} or its documentation, or if you want |
3387 to contribute code or ideas, please | 3504 to contribute code or ideas, please @value{MAINTAINERCONTACT}. Remember |
3388 @uref{mailto:dominik@@science.uva.nl,contact the maintainer}. Remember | |
3389 to provide all necessary information such as version numbers of Emacs | 3505 to provide all necessary information such as version numbers of Emacs |
3390 and @b{Ref@TeX{}}, and the relevant part of your configuration in | 3506 and @b{Ref@TeX{}}, and the relevant part of your configuration in |
3391 @file{.emacs}. When reporting a bug which throws an exception, please | 3507 @file{.emacs}. When reporting a bug which throws an exception, please |
3392 include a backtrace if you know how to produce one. | 3508 include a backtrace if you know how to produce one. |
3393 | 3509 |
3394 @b{Ref@TeX{}} is bundled and pre-installed with Emacs since version 20.2. | 3510 @b{Ref@TeX{}} is bundled and pre-installed with Emacs since version 20.2. |
3395 It was also bundled and pre-installed with XEmacs 19.16--20.x. XEmacs | 3511 It was also bundled and pre-installed with XEmacs 19.16--20.x. XEmacs |
3396 21.x users want to install the corresponding plugin package which is | 3512 21.x users want to install the corresponding plugin package which is |
3397 available from the XEmacs @code{ftp} site. See the XEmacs 21.x | 3513 available from the @value{XEMACSFTP}. See the XEmacs 21.x |
3398 documentation on package installation for details.@refill | 3514 documentation on package installation for details. |
3399 | 3515 |
3400 Users of earlier Emacs distributions (including Emacs 19) can get a | 3516 Users of earlier Emacs distributions (including Emacs 19) can get a |
3401 @b{Ref@TeX{}} distribution from the | 3517 @b{Ref@TeX{}} distribution from the @value{MAINTAINERSITE}. Note that |
3402 @uref{http://www.strw.leidenuniv.nl/~dominik/Tools/,maintainers | 3518 the Emacs 19 version supports many but not all features described in |
3403 webpage}. Note that the Emacs 19 version supports many but not all | 3519 this manual. |
3404 features described in this manual.@refill | |
3405 | 3520 |
3406 Thanks to the people on the Net who have used @b{Ref@TeX{}} and helped | 3521 Thanks to the people on the Net who have used @b{Ref@TeX{}} and helped |
3407 developing it with their reports. In particular thanks to @i{Fran | 3522 developing it with their reports. In particular thanks to @i{Fran |
3408 Burstall, Alastair Burt, Lars Clausen, Soren Dayton, Stephen Eglen, Karl | 3523 Burstall, Alastair Burt, Lars Clausen, Soren Dayton, Stephen Eglen, Karl |
3409 Eichwalder, Erik Frik, Erik Frisk, Peter Galbraith, Kai Grossjohann, | 3524 Eichwalder, Erik Frisk, Peter Galbraith, Kai Grossjohann, Frank Harrell, |
3410 Frank Harrell, Stephan Heuel, Alan Ho, Lute Kamstra, Dieter Kraft, | 3525 Peter Heslin, Stephan Heuel, Alan Ho, Lute Kamstra, Dieter Kraft, David |
3411 Adrian Lanz, Rory Molinari, Stefan Monnier, Laurent Mugnier, Sudeep | 3526 Kastrup, Adrian Lanz, Rory Molinari, Stefan Monnier, Laurent Mugnier, |
3412 Kumar Palat, Daniel Polani, Alan Shutko, Robin Socha, Richard Stanton, | 3527 Sudeep Kumar Palat, Daniel Polani, Alan Shutko, Robin Socha, Richard |
3413 Allan Strand, Jan Vroonhof, Christoph Wedler, Alan Williams, Roland | 3528 Stanton, Allan Strand, Jan Vroonhof, Christoph Wedler, Alan Williams, |
3414 Winkler, Eli Zaretskii}.@refill | 3529 Roland Winkler, Hans-Christoph Wirth, Eli Zaretskii}. |
3415 | 3530 |
3416 The @code{view-crossref} feature was inspired by @i{Peter Galbraith's} | 3531 The @code{view-crossref} feature was inspired by @i{Peter Galbraith's} |
3417 @file{bib-cite.el}.@refill | 3532 @file{bib-cite.el}. |
3418 | 3533 |
3419 Finally thanks to @i{Uwe Bolick} who first got me (some years ago) into | 3534 Finally thanks to @i{Uwe Bolick} who first got me interested in |
3420 supporting LaTeX labels and references with an editor (which was | 3535 supporting LaTeX labels and references with an editor (which was |
3421 MicroEmacs at the time).@refill | 3536 MicroEmacs at the time). |
3422 | 3537 |
3423 @node Commands, Options, Imprint, Top | 3538 @node Commands, Options, Imprint, Top |
3424 @chapter Commands | 3539 @chapter Commands |
3425 @cindex Commands, list of | 3540 @cindex Commands, list of |
3426 | 3541 |
3429 not described here. All commands are available from the @code{Ref} | 3544 not described here. All commands are available from the @code{Ref} |
3430 menu. See @xref{Key Bindings}. | 3545 menu. See @xref{Key Bindings}. |
3431 | 3546 |
3432 @deffn Command reftex-toc | 3547 @deffn Command reftex-toc |
3433 Show the table of contents for the current document. When called with | 3548 Show the table of contents for the current document. When called with |
3434 one ore two @kbd{C-u} prefixes, rescan the document first.@refill | 3549 one ore two @kbd{C-u} prefixes, rescan the document first. |
3435 @end deffn | 3550 @end deffn |
3436 | 3551 |
3437 @deffn Command reftex-label | 3552 @deffn Command reftex-label |
3438 Insert a unique label. With one or two @kbd{C-u} prefixes, enforce | 3553 Insert a unique label. With one or two @kbd{C-u} prefixes, enforce |
3439 document rescan first. | 3554 document rescan first. |
3448 Make a citation using BibTeX database files. After prompting for a regular | 3563 Make a citation using BibTeX database files. After prompting for a regular |
3449 expression, scans the buffers with BibTeX entries (taken from the | 3564 expression, scans the buffers with BibTeX entries (taken from the |
3450 @code{\bibliography} command or a @code{thebibliography} environment) | 3565 @code{\bibliography} command or a @code{thebibliography} environment) |
3451 and offers the matching entries for selection. The selected entry is | 3566 and offers the matching entries for selection. The selected entry is |
3452 formatted according to @code{reftex-cite-format} and inserted into the | 3567 formatted according to @code{reftex-cite-format} and inserted into the |
3453 buffer.@refill @* | 3568 buffer. @* |
3454 When called with one or two @kbd{C-u} prefixes, first rescans the | 3569 When called with a @kbd{C-u} prefixe, prompt for optional arguments in |
3455 document. When called with a numeric prefix, make that many citations. | 3570 cite macros. When called with a numeric prefix, make that many citations. |
3456 When called with point inside the braces of a @code{\cite} command, it | 3571 When called with point inside the braces of a @code{\cite} command, it |
3457 will add another key, ignoring the value of | 3572 will add another key, ignoring the value of |
3458 @code{reftex-cite-format}.@refill @* | 3573 @code{reftex-cite-format}. @* |
3459 The regular expression uses an expanded syntax: @samp{&&} is interpreted | 3574 The regular expression uses an expanded syntax: @samp{&&} is interpreted |
3460 as @code{and}. Thus, @samp{aaaa&&bbb} matches entries which contain | 3575 as @code{and}. Thus, @samp{aaaa&&bbb} matches entries which contain |
3461 both @samp{aaaa} and @samp{bbb}. While entering the regexp, completion | 3576 both @samp{aaaa} and @samp{bbb}. While entering the regexp, completion |
3462 on knows citation keys is possible. @samp{=} is a good regular | 3577 on knows citation keys is possible. @samp{=} is a good regular |
3463 expression to match all entries in all files.@refill | 3578 expression to match all entries in all files. |
3464 @end deffn | 3579 @end deffn |
3465 | 3580 |
3466 @deffn Command reftex-index | 3581 @deffn Command reftex-index |
3467 Query for an index macro and insert it along with its arguments. The | 3582 Query for an index macro and insert it along with its arguments. The |
3468 index macros available are those defined in @code{reftex-index-macro} or | 3583 index macros available are those defined in @code{reftex-index-macro} or |
3469 by a call to @code{reftex-add-index-macros}, typically from an AUCTeX | 3584 by a call to @code{reftex-add-index-macros}, typically from an AUCTeX |
3470 style file. @b{Ref@TeX{}} provides completion for the index tag and the | 3585 style file. @b{Ref@TeX{}} provides completion for the index tag and the |
3471 index key, and will prompt for other arguments.@refill | 3586 index key, and will prompt for other arguments. |
3472 @end deffn | 3587 @end deffn |
3473 | 3588 |
3474 @deffn Command reftex-index-selection-or-word | 3589 @deffn Command reftex-index-selection-or-word |
3475 Put current selection or the word near point into the default index | 3590 Put current selection or the word near point into the default index |
3476 macro. This uses the information in @code{reftex-index-default-macro} | 3591 macro. This uses the information in @code{reftex-index-default-macro} |
3478 the word near point. When called with one @kbd{C-u} prefix, let the | 3593 the word near point. When called with one @kbd{C-u} prefix, let the |
3479 user have a chance to edit the index entry. When called with 2 | 3594 user have a chance to edit the index entry. When called with 2 |
3480 @kbd{C-u} as prefix, also ask for the index macro and other stuff. When | 3595 @kbd{C-u} as prefix, also ask for the index macro and other stuff. When |
3481 called inside TeX math mode as determined by the @file{texmathp.el} | 3596 called inside TeX math mode as determined by the @file{texmathp.el} |
3482 library which is part of AUCTeX, the string is first processed with the | 3597 library which is part of AUCTeX, the string is first processed with the |
3483 @code{reftex-index-math-format}, which see.@refill | 3598 @code{reftex-index-math-format}, which see. |
3484 @end deffn | 3599 @end deffn |
3485 | 3600 |
3486 @deffn Command reftex-index-phrase-selection-or-word | 3601 @deffn Command reftex-index-phrase-selection-or-word |
3487 Add current selection or the word at point to the phrases buffer. | 3602 Add current selection or the word at point to the phrases buffer. |
3488 When you are in transient-mark-mode and the region is active, the | 3603 When you are in transient-mark-mode and the region is active, the |
3505 Display a buffer with an index compiled from the current document. | 3620 Display a buffer with an index compiled from the current document. |
3506 When the document has multiple indices, first prompts for the correct one. | 3621 When the document has multiple indices, first prompts for the correct one. |
3507 When index support is turned off, offer to turn it on. | 3622 When index support is turned off, offer to turn it on. |
3508 With one or two @kbd{C-u} prefixes, rescan document first. | 3623 With one or two @kbd{C-u} prefixes, rescan document first. |
3509 With prefix 2, restrict index to current document section. | 3624 With prefix 2, restrict index to current document section. |
3510 With prefix 3, restrict index to active region.@refill | 3625 With prefix 3, restrict index to active region. |
3511 @end deffn | 3626 @end deffn |
3512 | 3627 |
3513 @deffn Command reftex-view-crossref | 3628 @deffn Command reftex-view-crossref |
3514 View cross reference of macro at point. Point must be on the @var{key} | 3629 View cross reference of macro at point. Point must be on the @var{key} |
3515 argument. Works with the macros @code{\label}, @code{\ref}, | 3630 argument. Works with the macros @code{\label}, @code{\ref}, |
3530 @end deffn | 3645 @end deffn |
3531 | 3646 |
3532 @deffn Command reftex-create-tags-file | 3647 @deffn Command reftex-create-tags-file |
3533 Create TAGS file by running @code{etags} on the current document. The | 3648 Create TAGS file by running @code{etags} on the current document. The |
3534 TAGS file is also immediately visited with | 3649 TAGS file is also immediately visited with |
3535 @code{visit-tags-table}.@refill | 3650 @code{visit-tags-table}. |
3536 @end deffn | 3651 @end deffn |
3537 | 3652 |
3538 @deffn Command reftex-grep-document | 3653 @deffn Command reftex-grep-document |
3539 Run grep query through all files related to this document. | 3654 Run grep query through all files related to this document. |
3540 With prefix arg, force to rescan document. | 3655 With prefix arg, force to rescan document. |
3541 No active TAGS table is required.@refill | 3656 No active TAGS table is required. |
3542 @end deffn | 3657 @end deffn |
3543 | 3658 |
3544 @deffn Command reftex-search-document | 3659 @deffn Command reftex-search-document |
3545 Regexp search through all files of the current document. | 3660 Regexp search through all files of the current document. |
3546 Starts always in the master file. Stops when a match is found. | 3661 Starts always in the master file. Stops when a match is found. |
3547 No active TAGS table is required.@refill | 3662 No active TAGS table is required. |
3548 @end deffn | 3663 @end deffn |
3549 | 3664 |
3550 @deffn Command reftex-query-replace-document | 3665 @deffn Command reftex-query-replace-document |
3551 Run a query-replace-regexp of @var{from} with @var{to} over the entire | 3666 Run a query-replace-regexp of @var{from} with @var{to} over the entire |
3552 document. With prefix arg, replace only word-delimited matches. No | 3667 document. With prefix arg, replace only word-delimited matches. No |
3553 active TAGS table is required.@refill | 3668 active TAGS table is required. |
3554 @end deffn | 3669 @end deffn |
3555 | 3670 |
3556 @deffn Command reftex-goto-label | 3671 @deffn Command reftex-goto-label |
3557 Prompt for a label (with completion) and jump to the location of this | 3672 Prompt for a label (with completion) and jump to the location of this |
3558 label. Optional prefix argument @var{other-window} goes to the label in | 3673 label. Optional prefix argument @var{other-window} goes to the label in |
3561 | 3676 |
3562 | 3677 |
3563 @deffn Command reftex-change-label | 3678 @deffn Command reftex-change-label |
3564 Query replace @var{from} with @var{to} in all @code{\label} and | 3679 Query replace @var{from} with @var{to} in all @code{\label} and |
3565 @code{\ref} commands. Works on the entire multifile document. No | 3680 @code{\ref} commands. Works on the entire multifile document. No |
3566 active TAGS table is required.@refill | 3681 active TAGS table is required. |
3567 @end deffn | 3682 @end deffn |
3568 | 3683 |
3569 @deffn Command reftex-renumber-simple-labels | 3684 @deffn Command reftex-renumber-simple-labels |
3570 Renumber all simple labels in the document to make them sequentially. | 3685 Renumber all simple labels in the document to make them sequentially. |
3571 Simple labels are the ones created by RefTeX, consisting only of the | 3686 Simple labels are the ones created by RefTeX, consisting only of the |
3573 have sequential numbers throughout the document. Any references to the | 3688 have sequential numbers throughout the document. Any references to the |
3574 labels will be changed as well. For this, @b{Ref@TeX{}} looks at the | 3689 labels will be changed as well. For this, @b{Ref@TeX{}} looks at the |
3575 arguments of any macros which either start or end with the string | 3690 arguments of any macros which either start or end with the string |
3576 @samp{ref}. This command should be used with care, in particular in | 3691 @samp{ref}. This command should be used with care, in particular in |
3577 multifile documents. You should not use it if another document refers | 3692 multifile documents. You should not use it if another document refers |
3578 to this one with the @code{xr} package.@refill | 3693 to this one with the @code{xr} package. |
3579 @end deffn | 3694 @end deffn |
3580 | 3695 |
3581 @deffn Command reftex-find-duplicate-labels | 3696 @deffn Command reftex-find-duplicate-labels |
3582 Produce a list of all duplicate labels in the document.@refill | 3697 Produce a list of all duplicate labels in the document. |
3698 @end deffn | |
3699 | |
3700 @deffn Command reftex-create-bibtex-file | |
3701 Create a new BibTeX database file with all entries referenced in document. | |
3702 The command prompts for a filename and writes the collected entries to | |
3703 that file. Only entries referenced in the current document with | |
3704 any @code{\cite}-like macros are used. | |
3705 The sequence in the new file is the same as it was in the old database. | |
3583 @end deffn | 3706 @end deffn |
3584 | 3707 |
3585 @deffn Command reftex-customize | 3708 @deffn Command reftex-customize |
3586 Run the customize browser on the @b{Ref@TeX{}} group. | 3709 Run the customize browser on the @b{Ref@TeX{}} group. |
3587 @end deffn | 3710 @end deffn |
3605 | 3728 |
3606 Here is a complete list of @b{Ref@TeX{}}'s configuration variables. All | 3729 Here is a complete list of @b{Ref@TeX{}}'s configuration variables. All |
3607 variables have customize support - so if you are not familiar with Emacs | 3730 variables have customize support - so if you are not familiar with Emacs |
3608 Lisp (and even if you are) you might find it more comfortable to use | 3731 Lisp (and even if you are) you might find it more comfortable to use |
3609 @code{customize} to look at and change these variables. @kbd{M-x | 3732 @code{customize} to look at and change these variables. @kbd{M-x |
3610 reftex-customize} will get you there.@refill | 3733 reftex-customize} will get you there. |
3611 | 3734 |
3612 @menu | 3735 @menu |
3613 * Options (Table of Contents):: | 3736 * Options (Table of Contents):: |
3614 * Options (Defining Label Environments):: | 3737 * Options (Defining Label Environments):: |
3615 * Options (Creating Labels):: | 3738 * Options (Creating Labels):: |
3641 | 3764 |
3642 @defopt reftex-section-levels | 3765 @defopt reftex-section-levels |
3643 Commands and levels used for defining sections in the document. The | 3766 Commands and levels used for defining sections in the document. The |
3644 @code{car} of each cons cell is the name of the section macro. The | 3767 @code{car} of each cons cell is the name of the section macro. The |
3645 @code{cdr} is a number indicating its level. A negative level means the | 3768 @code{cdr} is a number indicating its level. A negative level means the |
3646 same as the positive value, but the section will never get a | 3769 same as the positive value, but the section will never get a number. |
3647 number. The @code{cdr} may also be a function which then has to return | 3770 The @code{cdr} may also be a function which then has to return the |
3648 the level.@refill | 3771 level. This list is also used for promotion and demption of sectioning |
3772 commands. If you are using a document class which has several sets of | |
3773 sectioning commands, promotion only works correctly if this list is | |
3774 sorted first by set, then within each set by level. The promotion | |
3775 commands always select the nearest entry with the correct new level. | |
3776 | |
3649 @end defopt | 3777 @end defopt |
3650 | 3778 |
3651 @defopt reftex-toc-max-level | 3779 @defopt reftex-toc-max-level |
3652 The maximum level of toc entries which will be included in the TOC. | 3780 The maximum level of toc entries which will be included in the TOC. |
3653 Section headings with a bigger level will be ignored. In RefTeX, | 3781 Section headings with a bigger level will be ignored. In RefTeX, |
3654 chapters are level 1, sections level 2 etc. This variable can be | 3782 chapters are level 1, sections level 2 etc. This variable can be |
3655 changed from within the @file{*toc*} buffer with the @kbd{t} key.@refill | 3783 changed from within the @file{*toc*} buffer with the @kbd{t} key. |
3656 @end defopt | 3784 @end defopt |
3657 | 3785 |
3658 @defopt reftex-part-resets-chapter | 3786 @defopt reftex-part-resets-chapter |
3659 Non-@code{nil} means, @code{\part} is like any other sectioning command. | 3787 Non-@code{nil} means, @code{\part} is like any other sectioning command. |
3660 This means, part numbers will be included in the numbering of chapters, and | 3788 This means, part numbers will be included in the numbering of chapters, and |
3662 When @code{nil} (the default), parts are special, do not reset the | 3790 When @code{nil} (the default), parts are special, do not reset the |
3663 chapter counter and also do not show up in chapter numbers. | 3791 chapter counter and also do not show up in chapter numbers. |
3664 @end defopt | 3792 @end defopt |
3665 | 3793 |
3666 @defopt reftex-auto-recenter-toc | 3794 @defopt reftex-auto-recenter-toc |
3667 Non-@code{nil} means, initially turn automatic recentering of toc on. | 3795 Non-@code{nil} means, turn automatic recentering of @file{*TOC*} window on. |
3668 When active, the @file{*TOC*} buffer will always show the section you | 3796 When active, the @file{*TOC*} window will always show the section you |
3669 are currently working in. Recentering happens whenever Emacs is idle | 3797 are currently working in. Recentering happens whenever Emacs is idle for |
3670 for more than `reftex-idle-time' seconds. | 3798 more than @code{reftex-idle-time} seconds. |
3671 This feature can be turned on and off from the menu | 3799 |
3800 Value @code{t} means, turn on immediately when RefTeX gets started. Then, | |
3801 recentering will work for any toc window created during the session. | |
3802 | |
3803 Value @code{frame} (the default) means, turn automatic recentering on | |
3804 only while the dedicated TOC frame does exist, and do the recentering | |
3805 only in that frame. So when creating that frame (with @kbd{d} key in an | |
3806 ordinary TOC window), the automatic recentering is turned on. When the | |
3807 frame gets destroyed, automatic recentering is turned off again. | |
3808 | |
3809 This feature can be turned on and off from the menu | |
3672 (Ref->Options). | 3810 (Ref->Options). |
3673 @end defopt | 3811 @end defopt |
3674 | 3812 |
3675 @defopt reftex-toc-split-windows-horizontally | 3813 @defopt reftex-toc-split-windows-horizontally |
3676 Non-@code{nil} means, create TOC window by splitting window | 3814 Non-@code{nil} means, create TOC window by splitting window |
3677 horizontally. The default is to split vertically. | 3815 horizontally. The default is to split vertically. |
3678 @end defopt | 3816 @end defopt |
3679 | 3817 |
3680 @defopt reftex-toc-split-windows-horizontally-fraction | 3818 @defopt reftex-toc-split-windows-fraction |
3681 Fraction of the horizontal width of the frame to be used for TOC window. | 3819 Fraction of the width or height of the frame to be used for TOC window. |
3682 Only relevant when @code{reftex-toc-split-windows-horizontally} is | |
3683 non-@code{nil}. | |
3684 @end defopt | 3820 @end defopt |
3685 | 3821 |
3686 @defopt reftex-toc-keep-other-windows | 3822 @defopt reftex-toc-keep-other-windows |
3687 Non-@code{nil} means, split the selected window to display the | 3823 Non-@code{nil} means, split the selected window to display the |
3688 @file{*toc*} buffer. This helps to keep the window configuration, but | 3824 @file{*toc*} buffer. This helps to keep the window configuration, but |
3689 makes the @file{*toc*} small. When @code{nil}, all other windows except | 3825 makes the @file{*toc*} small. When @code{nil}, all other windows except |
3690 the selected one will be deleted, so that the @file{*toc*} window fills | 3826 the selected one will be deleted, so that the @file{*toc*} window fills |
3691 half the frame.@refill | 3827 half the frame. |
3692 @end defopt | 3828 @end defopt |
3693 | 3829 |
3694 @defopt reftex-toc-include-file-boundaries | 3830 @defopt reftex-toc-include-file-boundaries |
3695 Non-@code{nil} means, include file boundaries in @file{*toc*} buffer. | 3831 Non-@code{nil} means, include file boundaries in @file{*toc*} buffer. |
3696 This flag can be toggled from within the @file{*toc*} buffer with the | 3832 This flag can be toggled from within the @file{*toc*} buffer with the |
3697 @kbd{i} key.@refill | 3833 @kbd{i} key. |
3698 @end defopt | 3834 @end defopt |
3699 | 3835 |
3700 @defopt reftex-toc-include-labels | 3836 @defopt reftex-toc-include-labels |
3701 Non-@code{nil} means, include labels in @file{*toc*} buffer. This flag | 3837 Non-@code{nil} means, include labels in @file{*toc*} buffer. This flag |
3702 can be toggled from within the @file{*toc*} buffer with the @kbd{l} | 3838 can be toggled from within the @file{*toc*} buffer with the @kbd{l} |
3703 key.@refill | 3839 key. |
3704 @end defopt | 3840 @end defopt |
3705 | 3841 |
3706 @defopt reftex-toc-include-index-entries | 3842 @defopt reftex-toc-include-index-entries |
3707 Non-@code{nil} means, include index entries in @file{*toc*} buffer. | 3843 Non-@code{nil} means, include index entries in @file{*toc*} buffer. |
3708 This flag can be toggled from within the @file{*toc*} buffer with the | 3844 This flag can be toggled from within the @file{*toc*} buffer with the |
3711 | 3847 |
3712 @defopt reftex-toc-include-context | 3848 @defopt reftex-toc-include-context |
3713 Non-@code{nil} means, include context with labels in the @file{*toc*} | 3849 Non-@code{nil} means, include context with labels in the @file{*toc*} |
3714 buffer. Context will only be shown if the labels are visible as well. | 3850 buffer. Context will only be shown if the labels are visible as well. |
3715 This flag can be toggled from within the @file{*toc*} buffer with the | 3851 This flag can be toggled from within the @file{*toc*} buffer with the |
3716 @kbd{c} key.@refill | 3852 @kbd{c} key. |
3717 @end defopt | 3853 @end defopt |
3718 | 3854 |
3719 @defopt reftex-toc-follow-mode | 3855 @defopt reftex-toc-follow-mode |
3720 Non-@code{nil} means, point in @file{*toc*} buffer (the | 3856 Non-@code{nil} means, point in @file{*toc*} buffer (the |
3721 table-of-contents buffer) will cause other window to follow. The other | 3857 table-of-contents buffer) will cause other window to follow. The other |
3722 window will show the corresponding part of the document. This flag can | 3858 window will show the corresponding part of the document. This flag can |
3723 be toggled from within the @file{*toc*} buffer with the @kbd{f} | 3859 be toggled from within the @file{*toc*} buffer with the @kbd{f} |
3724 key.@refill | 3860 key. |
3725 @end defopt | 3861 @end defopt |
3726 | 3862 |
3727 @deffn {Normal Hook} reftex-toc-mode-hook | 3863 @deffn {Normal Hook} reftex-toc-mode-hook |
3728 Normal hook which is run when a @file{*toc*} buffer is | 3864 Normal hook which is run when a @file{*toc*} buffer is |
3729 created.@refill | 3865 created. |
3730 @end deffn | 3866 @end deffn |
3731 | 3867 |
3732 @deffn Keymap reftex-toc-map | 3868 @deffn Keymap reftex-toc-map |
3733 The keymap which is active in the @file{*toc*} buffer. | 3869 The keymap which is active in the @file{*toc*} buffer. |
3734 (@pxref{Table of Contents}).@refill | 3870 (@pxref{Table of Contents}). |
3735 @end deffn | 3871 @end deffn |
3736 | 3872 |
3737 @node Options (Defining Label Environments), Options (Creating Labels), Options (Table of Contents), Options | 3873 @node Options (Defining Label Environments), Options (Creating Labels), Options (Table of Contents), Options |
3738 @section Defining Label Environments | 3874 @section Defining Label Environments |
3739 @cindex Options, defining label environments | 3875 @cindex Options, defining label environments |
3740 @cindex Defining label environments, options | 3876 @cindex Defining label environments, options |
3741 | 3877 |
3742 @defopt reftex-default-label-alist-entries | 3878 @defopt reftex-default-label-alist-entries |
3743 Default label alist specifications. It is a list of symbols with | 3879 Default label alist specifications. It is a list of symbols with |
3744 associations in the constant @code{reftex-label-alist-builtin}. | 3880 associations in the constant @code{reftex-label-alist-builtin}. |
3745 @code{LaTeX} should always be the last entry.@refill | 3881 @code{LaTeX} should always be the last entry. |
3746 @end defopt | 3882 @end defopt |
3747 | 3883 |
3748 @defopt reftex-label-alist | 3884 @defopt reftex-label-alist |
3749 Set this variable to define additions and changes to the defaults in | 3885 Set this variable to define additions and changes to the defaults in |
3750 @code{reftex-default-label-alist-entries}. The only things you | 3886 @code{reftex-default-label-alist-entries}. The only things you |
3751 @emph{must not} change is that @code{?s} is the type indicator for | 3887 @emph{must not} change is that @code{?s} is the type indicator for |
3752 section labels, and @key{SPC} for the @code{any} label type. These are | 3888 section labels, and @key{SPC} for the @code{any} label type. These are |
3753 hard-coded at other places in the code.@refill | 3889 hard-coded at other places in the code. |
3754 | 3890 |
3755 The value of the variable must be a list of items. Each item is a list | 3891 The value of the variable must be a list of items. Each item is a list |
3756 itself and has the following structure: | 3892 itself and has the following structure: |
3757 | 3893 |
3758 @example | 3894 @example |
3761 @end example | 3897 @end example |
3762 | 3898 |
3763 Each list entry describes either an environment carrying a counter for | 3899 Each list entry describes either an environment carrying a counter for |
3764 use with @code{\label} and @code{\ref}, or a LaTeX macro defining a | 3900 use with @code{\label} and @code{\ref}, or a LaTeX macro defining a |
3765 label as (or inside) one of its arguments. The elements of each list | 3901 label as (or inside) one of its arguments. The elements of each list |
3766 entry are:@refill | 3902 entry are: |
3767 | 3903 |
3768 @table @asis | 3904 @table @asis |
3769 @item @var{env-or-macro} | 3905 @item @var{env-or-macro} |
3770 Name of the environment (like @samp{table}) or macro (like | 3906 Name of the environment (like @samp{table}) or macro (like |
3771 @samp{\myfig}). For macros, indicate the arguments, as in | 3907 @samp{\myfig}). For macros, indicate the arguments, as in |
3772 @samp{\myfig[]@{@}@{@}@{*@}@{@}}. Use square brackets for optional | 3908 @samp{\myfig[]@{@}@{@}@{*@}@{@}}. Use square brackets for optional |
3773 arguments, a star to mark the label argument, if any. The macro does | 3909 arguments, a star to mark the label argument, if any. The macro does |
3774 not have to have a label argument - you could also use | 3910 not have to have a label argument - you could also use |
3775 @samp{\label@{...@}} inside one of its arguments.@refill | 3911 @samp{\label@{...@}} inside one of its arguments. |
3776 | 3912 |
3777 Special names: @code{section} for section labels, @code{any} to define a | 3913 Special names: @code{section} for section labels, @code{any} to define a |
3778 group which contains all labels.@refill | 3914 group which contains all labels. |
3779 | 3915 |
3780 This may also be a function to do local parsing and identify point to be | 3916 This may also be a function to do local parsing and identify point to be |
3781 in a non-standard label environment. The function must take an | 3917 in a non-standard label environment. The function must take an |
3782 argument @var{bound} and limit backward searches to this value. It | 3918 argument @var{bound} and limit backward searches to this value. It |
3783 should return either nil or a cons cell @code{(@var{function} | 3919 should return either nil or a cons cell @code{(@var{function} |
3784 . @var{position})} with the function symbol and the position where the | 3920 . @var{position})} with the function symbol and the position where the |
3785 special environment starts. See the Info documentation for an | 3921 special environment starts. See the Info documentation for an |
3786 example.@refill | 3922 example. |
3787 | 3923 |
3788 Finally this may also be @code{nil} if the entry is only meant to change | 3924 Finally this may also be @code{nil} if the entry is only meant to change |
3789 some settings associated with the type indicator character (see | 3925 some settings associated with the type indicator character (see |
3790 below).@refill | 3926 below). |
3791 | 3927 |
3792 @item @var{type-key} | 3928 @item @var{type-key} |
3793 Type indicator character, like @code{?t}, must be a printable ASCII | 3929 Type indicator character, like @code{?t}, must be a printable ASCII |
3794 character. The type indicator is a single character which defines a | 3930 character. The type indicator is a single character which defines a |
3795 label type. Any label inside the environment or macro is assumed to | 3931 label type. Any label inside the environment or macro is assumed to |
3796 belong to this type. The same character may occur several times in this | 3932 belong to this type. The same character may occur several times in this |
3797 list, to cover cases in which different environments carry the same | 3933 list, to cover cases in which different environments carry the same |
3798 label type (like @code{equation} and @code{eqnarray}). If the type | 3934 label type (like @code{equation} and @code{eqnarray}). If the type |
3799 indicator is @code{nil} and the macro has a label argument @samp{@{*@}}, | 3935 indicator is @code{nil} and the macro has a label argument @samp{@{*@}}, |
3800 the macro defines neutral labels just like @code{\label}. In this case | 3936 the macro defines neutral labels just like @code{\label}. In this case |
3801 the reminder of this entry is ignored.@refill | 3937 the reminder of this entry is ignored. |
3802 | 3938 |
3803 @item @var{label-prefix} | 3939 @item @var{label-prefix} |
3804 Label prefix string, like @samp{tab:}. The prefix is a short string | 3940 Label prefix string, like @samp{tab:}. The prefix is a short string |
3805 used as the start of a label. It may be the empty string. The prefix | 3941 used as the start of a label. It may be the empty string. The prefix |
3806 may contain the following @samp{%} escapes:@refill | 3942 may contain the following @samp{%} escapes: |
3807 | 3943 |
3808 @example | 3944 @example |
3809 %f Current file name, directory and extension stripped. | 3945 %f Current file name, directory and extension stripped. |
3810 %F Current file name relative to master file directory. | 3946 %F Current file name relative to master file directory. |
3947 %m Master file name, directory and extension stripped. | |
3948 %M Directory name (without path) where master file is located. | |
3811 %u User login name, on systems which support this. | 3949 %u User login name, on systems which support this. |
3812 %S A section prefix derived with variable @code{reftex-section-prefixes}. | 3950 %S A section prefix derived with variable @code{reftex-section-prefixes}. |
3813 @end example | 3951 @end example |
3814 | 3952 |
3815 @noindent | 3953 @noindent |
3816 Example: In a file @file{intro.tex}, @samp{eq:%f:} will become | 3954 Example: In a file @file{intro.tex}, @samp{eq:%f:} will become |
3817 @samp{eq:intro:}.@refill | 3955 @samp{eq:intro:}. |
3818 | 3956 |
3819 @item @var{reference-format} | 3957 @item @var{reference-format} |
3820 Format string for reference insert in buffer. @samp{%s} will be | 3958 Format string for reference insert in buffer. @samp{%s} will be |
3821 replaced by the label. When the format starts with @samp{~}, this | 3959 replaced by the label. When the format starts with @samp{~}, this |
3822 @samp{~} will only be inserted when the character before point is | 3960 @samp{~} will only be inserted when the character before point is |
3823 @emph{not} a whitespace.@refill | 3961 @emph{not} a whitespace. |
3824 | 3962 |
3825 @item @var{context-method} | 3963 @item @var{context-method} |
3826 Indication on how to find the short context. | 3964 Indication on how to find the short context. |
3827 @itemize @minus | 3965 @itemize @minus |
3828 @item | 3966 @item |
3829 If @code{nil}, use the text following the @samp{\label@{...@}} macro.@refill | 3967 If @code{nil}, use the text following the @samp{\label@{...@}} macro. |
3830 @item | 3968 @item |
3831 If @code{t}, use | 3969 If @code{t}, use |
3832 @itemize @minus | 3970 @itemize @minus |
3833 @item | 3971 @item |
3834 the section heading for section labels. | 3972 the section heading for section labels. |
3835 @item | 3973 @item |
3836 text following the @samp{\begin@{...@}} statement of environments (not | 3974 text following the @samp{\begin@{...@}} statement of environments (not |
3837 a good choice for environments like eqnarray or enumerate, where one has | 3975 a good choice for environments like eqnarray or enumerate, where one has |
3838 several labels in a single environment).@refill | 3976 several labels in a single environment). |
3839 @item | 3977 @item |
3840 text after the macro name (starting with the first arg) for | 3978 text after the macro name (starting with the first arg) for |
3841 macros.@refill | 3979 macros. |
3842 @end itemize | 3980 @end itemize |
3843 @item | 3981 @item |
3844 If an integer, use the nth argument of the macro. As a special case, | 3982 If an integer, use the nth argument of the macro. As a special case, |
3845 1000 means to get text after the last macro argument.@refill | 3983 1000 means to get text after the last macro argument. |
3846 @item | 3984 @item |
3847 If a string, use as regexp to search @emph{backward} from the label. | 3985 If a string, use as regexp to search @emph{backward} from the label. |
3848 Context is then the text following the end of the match. E.g. putting | 3986 Context is then the text following the end of the match. E.g. putting |
3849 this to @samp{\\caption[[@{]} will use the caption in a figure or table | 3987 this to @samp{\\caption[[@{]} will use the caption in a figure or table |
3850 environment. @samp{\\begin@{eqnarray@}\|\\\\} works for | 3988 environment. @samp{\\begin@{eqnarray@}\|\\\\} works for |
3851 eqnarrays.@refill | 3989 eqnarrays. |
3852 @item | 3990 @item |
3853 If any of @code{caption}, @code{item}, @code{eqnarray-like}, | 3991 If any of @code{caption}, @code{item}, @code{eqnarray-like}, |
3854 @code{alignat-like}, this symbol will internally be translated into an | 3992 @code{alignat-like}, this symbol will internally be translated into an |
3855 appropriate regexp (see also the variable | 3993 appropriate regexp (see also the variable |
3856 @code{reftex-default-context-regexps}).@refill | 3994 @code{reftex-default-context-regexps}). |
3857 @item | 3995 @item |
3858 If a function, call this function with the name of the environment/macro | 3996 If a function, call this function with the name of the environment/macro |
3859 as argument. On call, point will be just after the @code{\label} macro. | 3997 as argument. On call, point will be just after the @code{\label} macro. |
3860 The function is expected to return a suitable context string. It should | 3998 The function is expected to return a suitable context string. It should |
3861 throw an exception (error) when failing to find context. As an example, | 3999 throw an exception (error) when failing to find context. As an example, |
3862 here is a function returning the 10 chars following the label macro as | 4000 here is a function returning the 10 chars following the label macro as |
3863 context:@refill | 4001 context: |
3864 | 4002 |
3865 @example | 4003 @example |
3866 (defun my-context-function (env-or-mac) | 4004 (defun my-context-function (env-or-mac) |
3867 (if (> (point-max) (+ 10 (point))) | 4005 (if (> (point-max) (+ 10 (point))) |
3868 (buffer-substring (point) (+ 10 (point))) | 4006 (buffer-substring (point) (+ 10 (point))) |
3873 Label context is used in two ways by @b{Ref@TeX{}}: For display in the label | 4011 Label context is used in two ways by @b{Ref@TeX{}}: For display in the label |
3874 menu, and to derive a label string. If you want to use a different | 4012 menu, and to derive a label string. If you want to use a different |
3875 method for each of these, specify them as a dotted pair. | 4013 method for each of these, specify them as a dotted pair. |
3876 E.g. @code{(nil . t)} uses the text after the label (@code{nil}) for | 4014 E.g. @code{(nil . t)} uses the text after the label (@code{nil}) for |
3877 display, and text from the default position (@code{t}) to derive a label | 4015 display, and text from the default position (@code{t}) to derive a label |
3878 string. This is actually used for section labels.@refill | 4016 string. This is actually used for section labels. |
3879 | 4017 |
3880 @item @var{magic-word-list} | 4018 @item @var{magic-word-list} |
3881 List of magic words which identify a reference to be of this type. If | 4019 List of magic words which identify a reference to be of this type. If |
3882 the word before point is equal to one of these words when calling | 4020 the word before point is equal to one of these words when calling |
3883 @code{reftex-reference}, the label list offered will be automatically | 4021 @code{reftex-reference}, the label list offered will be automatically |
3884 restricted to labels of the correct type. If the first element of this | 4022 restricted to labels of the correct type. If the first element of this |
3885 word--list is the symbol `regexp', the strings are interpreted as regular | 4023 word--list is the symbol `regexp', the strings are interpreted as regular |
3886 expressions.@refill | 4024 expressions. |
3887 | 4025 |
3888 @item @var{toc-level} | 4026 @item @var{toc-level} |
3889 The integer level at which this environment should be added to the table | 4027 The integer level at which this environment should be added to the table |
3890 of contents. See also @code{reftex-section-levels}. A positive value | 4028 of contents. See also @code{reftex-section-levels}. A positive value |
3891 will number the entries mixed with the sectioning commands of the same | 4029 will number the entries mixed with the sectioning commands of the same |
3892 level. A negative value will make unnumbered entries. Useful only for | 4030 level. A negative value will make unnumbered entries. Useful only for |
3893 theorem-like environments which structure the document. Will be ignored | 4031 theorem-like environments which structure the document. Will be ignored |
3894 for macros. When omitted or @code{nil}, no TOC entries will be | 4032 for macros. When omitted or @code{nil}, no TOC entries will be |
3895 made.@refill | 4033 made. |
3896 @end table | 4034 @end table |
3897 | 4035 |
3898 If the type indicator characters of two or more entries are the same, | 4036 If the type indicator characters of two or more entries are the same, |
3899 @b{Ref@TeX{}} will use@refill | 4037 @b{Ref@TeX{}} will use |
3900 @itemize @minus | 4038 @itemize @minus |
3901 @item | 4039 @item |
3902 the first non-@code{nil} format and prefix | 4040 the first non-@code{nil} format and prefix |
3903 @item | 4041 @item |
3904 the magic words of all involved entries. | 4042 the magic words of all involved entries. |
3905 @end itemize | 4043 @end itemize |
3906 | 4044 |
3907 Any list entry may also be a symbol. If that has an association in | 4045 Any list entry may also be a symbol. If that has an association in |
3908 @code{reftex-label-alist-builtin}, the @code{cddr} of that association is | 4046 @code{reftex-label-alist-builtin}, the @code{cddr} of that association is |
3909 spliced into the list. However, builtin defaults should normally be set | 4047 spliced into the list. However, builtin defaults should normally be set |
3910 with the variable @code{reftex-default-label-alist-entries}.@refill | 4048 with the variable @code{reftex-default-label-alist-entries}. |
3911 @end defopt | 4049 @end defopt |
3912 | 4050 |
3913 @defopt reftex-section-prefixes | 4051 @defopt reftex-section-prefixes |
3914 Prefixes for section labels. When the label prefix given in an entry in | 4052 Prefixes for section labels. When the label prefix given in an entry in |
3915 @code{reftex-label-alist} contains @samp{%S}, this list is used to | 4053 @code{reftex-label-alist} contains @samp{%S}, this list is used to |
3922 | 4060 |
3923 @defopt reftex-default-context-regexps | 4061 @defopt reftex-default-context-regexps |
3924 Alist with default regular expressions for finding context. The emacs | 4062 Alist with default regular expressions for finding context. The emacs |
3925 lisp form @w{@code{(format regexp (regexp-quote environment))}} is used | 4063 lisp form @w{@code{(format regexp (regexp-quote environment))}} is used |
3926 to calculate the final regular expression - so @samp{%s} will be | 4064 to calculate the final regular expression - so @samp{%s} will be |
3927 replaced with the environment or macro.@refill | 4065 replaced with the environment or macro. |
4066 @end defopt | |
4067 | |
4068 @defopt reftex-trust-label-prefix | |
4069 Non-@code{nil} means, trust the label prefix when determining label type. | |
4070 It is customary to use special label prefixes to distinguish different label | |
4071 types. The label prefixes have no syntactic meaning in LaTeX (unless | |
4072 special packages like fancyref) are being used. RefTeX can and by | |
4073 default does parse around each label to detect the correct label type, | |
4074 but this process can be slow when a document contains thousands of | |
4075 labels. If you use label prefixes consistently, you may speed up | |
4076 document parsing by setting this variable to a non-nil value. RefTeX | |
4077 will then compare the label prefix with the prefixes found in | |
4078 `reftex-label-alist' and derive the correct label type in this way. | |
4079 Possible values for this option are: | |
4080 | |
4081 @example | |
4082 t @r{This means to trust any label prefixes found.} | |
4083 regexp @r{If a regexp, only prefixes matched by the regexp are trusted.} | |
4084 list @r{List of accepted prefixes, as strings. The colon is part of} | |
4085 @r{the prefix, e.g. ("fn:" "eqn:" "item:").} | |
4086 nil @r{Never trust a label prefix.} | |
4087 @end example | |
4088 The only disadvantage of using this feature is that the label context | |
4089 displayed in the label selection buffer along with each label is | |
4090 simply some text after the label definition. This is no problem if you | |
4091 place labels keeping this in mind (e.g. @i{before} the equation, @i{at | |
4092 the beginning} of a fig/tab caption ...). Anyway, it is probably best | |
4093 to use the regexp or the list value types to fine-tune this feature. | |
4094 For example, if your document contains thousands of footnotes with | |
4095 labels fn:xxx, you may want to set this variable to the value "^fn:$" or | |
4096 ("fn:"). Then RefTeX will still do extensive parsing for any | |
4097 non-footnote labels. | |
3928 @end defopt | 4098 @end defopt |
3929 | 4099 |
3930 @node Options (Creating Labels), Options (Referencing Labels), Options (Defining Label Environments), Options | 4100 @node Options (Creating Labels), Options (Referencing Labels), Options (Defining Label Environments), Options |
3931 @section Creating Labels | 4101 @section Creating Labels |
3932 @cindex Options, creating labels | 4102 @cindex Options, creating labels |
3943 label from context. A section label for example will be derived from | 4113 label from context. A section label for example will be derived from |
3944 the section heading. The conversion of the context to a legal label is | 4114 the section heading. The conversion of the context to a legal label is |
3945 governed by the specifications given in | 4115 governed by the specifications given in |
3946 @code{reftex-derive-label-parameters}. If @var{derive} is @code{nil}, | 4116 @code{reftex-derive-label-parameters}. If @var{derive} is @code{nil}, |
3947 the default label will consist of the prefix and a unique number, like | 4117 the default label will consist of the prefix and a unique number, like |
3948 @samp{eq:23}.@refill | 4118 @samp{eq:23}. |
3949 | 4119 |
3950 If @var{prompt} is @code{t}, the user will be prompted for a label | 4120 If @var{prompt} is @code{t}, the user will be prompted for a label |
3951 string. When @var{prompt} is @code{nil}, the default label will be | 4121 string. When @var{prompt} is @code{nil}, the default label will be |
3952 inserted without query.@refill | 4122 inserted without query. |
3953 | 4123 |
3954 So the combination of @var{derive} and @var{prompt} controls label | 4124 So the combination of @var{derive} and @var{prompt} controls label |
3955 insertion. Here is a table describing all four possibilities:@refill | 4125 insertion. Here is a table describing all four possibilities: |
3956 | 4126 |
3957 @example | 4127 @example |
3958 @group | 4128 @group |
3959 @var{derive} @var{prompt} @var{action} | 4129 @var{derive} @var{prompt} @var{action} |
3960 ----------------------------------------------------------- | 4130 ----------------------------------------------------------- |
3968 Each flag may be set to @code{t}, @code{nil}, or a string of label type | 4138 Each flag may be set to @code{t}, @code{nil}, or a string of label type |
3969 letters indicating the label types for which it should be true. Thus, | 4139 letters indicating the label types for which it should be true. Thus, |
3970 the combination may be set differently for each label type. The default | 4140 the combination may be set differently for each label type. The default |
3971 settings @samp{"s"} and @samp{"sft"} mean: Derive section labels from | 4141 settings @samp{"s"} and @samp{"sft"} mean: Derive section labels from |
3972 headings (with confirmation). Prompt for figure and table labels. Use | 4142 headings (with confirmation). Prompt for figure and table labels. Use |
3973 simple labels without confirmation for everything else.@refill | 4143 simple labels without confirmation for everything else. |
3974 | 4144 |
3975 The available label types are: @code{s} (section), @code{f} (figure), | 4145 The available label types are: @code{s} (section), @code{f} (figure), |
3976 @code{t} (table), @code{i} (item), @code{e} (equation), @code{n} | 4146 @code{t} (table), @code{i} (item), @code{e} (equation), @code{n} |
3977 (footnote), @code{N} (endnote) plus any definitions in | 4147 (footnote), @code{N} (endnote) plus any definitions in |
3978 @code{reftex-label-alist}.@refill | 4148 @code{reftex-label-alist}. |
3979 @end defopt | 4149 @end defopt |
3980 | 4150 |
3981 @deffn Hook reftex-format-label-function | 4151 @deffn Hook reftex-format-label-function |
3982 If non-@code{nil}, should be a function which produces the string to | 4152 If non-@code{nil}, should be a function which produces the string to |
3983 insert as a label definition. The function will be called with two | 4153 insert as a label definition. The function will be called with two |
3984 arguments, the @var{label} and the @var{default-format} (usually | 4154 arguments, the @var{label} and the @var{default-format} (usually |
3985 @samp{\label@{%s@}}). It should return the string to insert into the | 4155 @samp{\label@{%s@}}). It should return the string to insert into the |
3986 buffer.@refill | 4156 buffer. |
3987 @end deffn | 4157 @end deffn |
3988 | 4158 |
3989 @deffn Hook reftex-string-to-label-function | 4159 @deffn Hook reftex-string-to-label-function |
3990 Function to turn an arbitrary string into a legal label. | 4160 Function to turn an arbitrary string into a legal label. |
3991 @b{Ref@TeX{}}'s default function uses the variable | 4161 @b{Ref@TeX{}}'s default function uses the variable |
3992 @code{reftex-derive-label-parameters}.@refill | 4162 @code{reftex-derive-label-parameters}. |
3993 @end deffn | 4163 @end deffn |
3994 | 4164 |
3995 @deffn Hook reftex-translate-to-ascii-function | 4165 @deffn Hook reftex-translate-to-ascii-function |
3996 Filter function which will process a context string before it is used to | 4166 Filter function which will process a context string before it is used to |
3997 derive a label from it. The intended application is to convert ISO or | 4167 derive a label from it. The intended application is to convert ISO or |
3998 Mule characters into something legal in labels. The default function | 4168 Mule characters into something legal in labels. The default function |
3999 @code{reftex-latin1-to-ascii} removes the accents from Latin-1 | 4169 @code{reftex-latin1-to-ascii} removes the accents from Latin-1 |
4000 characters. X-Symbol (>=2.6) sets this variable to the much more | 4170 characters. X-Symbol (>=2.6) sets this variable to the much more |
4001 general @code{x-symbol-translate-to-ascii}.@refill | 4171 general @code{x-symbol-translate-to-ascii}. |
4002 @end deffn | 4172 @end deffn |
4003 | 4173 |
4004 @defopt reftex-derive-label-parameters | 4174 @defopt reftex-derive-label-parameters |
4005 Parameters for converting a string into a label. This variable is a | 4175 Parameters for converting a string into a label. This variable is a |
4006 list of the following items:@refill | 4176 list of the following items: |
4007 @table @asis | 4177 @table @asis |
4008 @item @var{nwords} | 4178 @item @var{nwords} |
4009 Number of words to use. | 4179 Number of words to use. |
4010 @item @var{maxchar} | 4180 @item @var{maxchar} |
4011 Maximum number of characters in a label string. | 4181 Maximum number of characters in a label string. |
4028 @defopt reftex-label-illegal-re | 4198 @defopt reftex-label-illegal-re |
4029 Regexp matching characters not legal in labels. | 4199 Regexp matching characters not legal in labels. |
4030 @end defopt | 4200 @end defopt |
4031 | 4201 |
4032 @defopt reftex-abbrev-parameters | 4202 @defopt reftex-abbrev-parameters |
4033 Parameters for abbreviation of words. A list of four parameters.@refill | 4203 Parameters for abbreviation of words. A list of four parameters. |
4034 @table @asis | 4204 @table @asis |
4035 @item @var{min-chars} | 4205 @item @var{min-chars} |
4036 Minimum number of characters remaining after abbreviation. | 4206 Minimum number of characters remaining after abbreviation. |
4037 @item @var{min-kill} | 4207 @item @var{min-kill} |
4038 Minimum number of characters to remove when abbreviating words.@refill | 4208 Minimum number of characters to remove when abbreviating words. |
4039 @item @var{before} | 4209 @item @var{before} |
4040 Character class before abbrev point in word.@refill | 4210 Character class before abbrev point in word. |
4041 @item @var{after} | 4211 @item @var{after} |
4042 Character class after abbrev point in word.@refill | 4212 Character class after abbrev point in word. |
4043 @end table | 4213 @end table |
4044 @end defopt | 4214 @end defopt |
4045 | 4215 |
4046 @node Options (Referencing Labels), Options (Creating Citations), Options (Creating Labels), Options | 4216 @node Options (Referencing Labels), Options (Creating Citations), Options (Creating Labels), Options |
4047 @section Referencing Labels | 4217 @section Referencing Labels |
4050 | 4220 |
4051 @defopt reftex-label-menu-flags | 4221 @defopt reftex-label-menu-flags |
4052 List of flags governing the label menu makeup. The flags are: | 4222 List of flags governing the label menu makeup. The flags are: |
4053 @table @asis | 4223 @table @asis |
4054 @item @var{table-of-contents} | 4224 @item @var{table-of-contents} |
4055 Show the labels embedded in a table of context.@refill | 4225 Show the labels embedded in a table of context. |
4056 @item @var{section-numbers} | 4226 @item @var{section-numbers} |
4057 Include section numbers (like 4.1.3) in table of contents.@refill | 4227 Include section numbers (like 4.1.3) in table of contents. |
4058 @item @var{counters} | 4228 @item @var{counters} |
4059 Show counters. This just numbers the labels in the menu.@refill | 4229 Show counters. This just numbers the labels in the menu. |
4060 @item @var{no-context} | 4230 @item @var{no-context} |
4061 Non-@code{nil} means do @emph{not} show the short context.@refill | 4231 Non-@code{nil} means do @emph{not} show the short context. |
4062 @item @var{follow} | 4232 @item @var{follow} |
4063 Follow full context in other window.@refill | 4233 Follow full context in other window. |
4064 @item @var{show-commented} | 4234 @item @var{show-commented} |
4065 Show labels from regions which are commented out.@refill | 4235 Show labels from regions which are commented out. |
4066 @item @var{match-everywhere} | 4236 @item @var{match-everywhere} |
4067 Obsolete flag.@refill | 4237 Obsolete flag. |
4068 @item @var{show-files} | 4238 @item @var{show-files} |
4069 Show begin and end of included files.@refill | 4239 Show begin and end of included files. |
4070 @end table | 4240 @end table |
4071 | 4241 |
4072 Each of these flags can be set to @code{t} or @code{nil}, or to a string | 4242 Each of these flags can be set to @code{t} or @code{nil}, or to a string |
4073 of type letters indicating the label types for which it should be true. | 4243 of type letters indicating the label types for which it should be true. |
4074 These strings work like character classes in regular expressions. Thus, | 4244 These strings work like character classes in regular expressions. Thus, |
4075 setting one of the flags to @samp{"sf"} makes the flag true for section | 4245 setting one of the flags to @samp{"sf"} makes the flag true for section |
4076 and figure labels, @code{nil} for everything else. Setting it to | 4246 and figure labels, @code{nil} for everything else. Setting it to |
4077 @samp{"^sf"} makes it the other way round.@refill | 4247 @samp{"^sf"} makes it the other way round. |
4078 | 4248 |
4079 The available label types are: @code{s} (section), @code{f} (figure), | 4249 The available label types are: @code{s} (section), @code{f} (figure), |
4080 @code{t} (table), @code{i} (item), @code{e} (equation), @code{n} | 4250 @code{t} (table), @code{i} (item), @code{e} (equation), @code{n} |
4081 (footnote), plus any definitions in @code{reftex-label-alist}.@refill | 4251 (footnote), plus any definitions in @code{reftex-label-alist}. |
4082 | 4252 |
4083 Most options can also be switched from the label menu itself - so if you | 4253 Most options can also be switched from the label menu itself - so if you |
4084 decide here to not have a table of contents in the label menu, you can | 4254 decide here to not have a table of contents in the label menu, you can |
4085 still get one interactively during selection from the label menu.@refill | 4255 still get one interactively during selection from the label menu. |
4086 @end defopt | 4256 @end defopt |
4087 | 4257 |
4088 @defopt reftex-multiref-punctuation | 4258 @defopt reftex-multiref-punctuation |
4089 Punctuation strings for multiple references. When marking is used in | 4259 Punctuation strings for multiple references. When marking is used in |
4090 the selection buffer to select several references, this variable | 4260 the selection buffer to select several references, this variable |
4091 associates the 3 marking characters @samp{,-+} with prefix strings to be | 4261 associates the 3 marking characters @samp{,-+} with prefix strings to be |
4092 inserted into the buffer before the corresponding @code{\ref} macro. | 4262 inserted into the buffer before the corresponding @code{\ref} macro. |
4093 This is used to string together whole reference sets, like | 4263 This is used to string together whole reference sets, like |
4094 @samp{eqs. 1,2,3-5,6 and 7} in a single call to | 4264 @samp{eqs. 1,2,3-5,6 and 7} in a single call to |
4095 @code{reftex-reference}.@refill | 4265 @code{reftex-reference}. |
4096 @end defopt | 4266 @end defopt |
4097 | 4267 |
4098 @defopt reftex-vref-is-default | 4268 @defopt reftex-vref-is-default |
4099 Non-@code{nil} means, the varioref macro @code{\vref} is used as | 4269 Non-@code{nil} means, the varioref macro @code{\vref} is used as |
4100 default. In the selection buffer, the @kbd{v} key toggles the reference | 4270 default. In the selection buffer, the @kbd{v} key toggles the reference |
4101 macro between @code{\ref} and @code{\vref}. The value of this variable | 4271 macro between @code{\ref} and @code{\vref}. The value of this variable |
4102 determines the default which is active when entering the selection | 4272 determines the default which is active when entering the selection |
4103 process. Instead of @code{nil} or @code{t}, this may also be a string | 4273 process. Instead of @code{nil} or @code{t}, this may also be a string |
4104 of type letters indicating the label types for which it should be | 4274 of type letters indicating the label types for which it should be |
4105 true.@refill | 4275 true. |
4106 @end defopt | 4276 @end defopt |
4107 | 4277 |
4108 @defopt reftex-fref-is-default | 4278 @defopt reftex-fref-is-default |
4109 Non-@code{nil} means, the fancyref macro @code{\fref} is used as | 4279 Non-@code{nil} means, the fancyref macro @code{\fref} is used as |
4110 default. In the selection buffer, the @kbd{V} key toggles the reference | 4280 default. In the selection buffer, the @kbd{V} key toggles the reference |
4121 changed with @code{reftex-label-alist}. This hook also is used by the | 4291 changed with @code{reftex-label-alist}. This hook also is used by the |
4122 special commands to insert @code{\vref} and @code{\fref} references, so | 4292 special commands to insert @code{\vref} and @code{\fref} references, so |
4123 even if you set this, your setting will be ignored by the special | 4293 even if you set this, your setting will be ignored by the special |
4124 commands. The function will be called with two arguments, the | 4294 commands. The function will be called with two arguments, the |
4125 @var{label} and the @var{default-format} (usually @samp{~\ref@{%s@}}). | 4295 @var{label} and the @var{default-format} (usually @samp{~\ref@{%s@}}). |
4126 It should return the string to insert into the buffer.@refill | 4296 It should return the string to insert into the buffer. |
4127 @end deffn | 4297 @end deffn |
4128 | 4298 |
4129 @defopt reftex-level-indent | 4299 @defopt reftex-level-indent |
4130 Number of spaces to be used for indentation per section level.@refill | 4300 Number of spaces to be used for indentation per section level. |
4131 @end defopt | 4301 @end defopt |
4132 | 4302 |
4133 @defopt reftex-guess-label-type | 4303 @defopt reftex-guess-label-type |
4134 Non-@code{nil} means, @code{reftex-reference} will try to guess the | 4304 Non-@code{nil} means, @code{reftex-reference} will try to guess the |
4135 label type. To do that, @b{Ref@TeX{}} will look at the word before the | 4305 label type. To do that, @b{Ref@TeX{}} will look at the word before the |
4136 cursor and compare it with the magic words given in | 4306 cursor and compare it with the magic words given in |
4137 @code{reftex-label-alist}. When it finds a match, @b{Ref@TeX{}} will | 4307 @code{reftex-label-alist}. When it finds a match, @b{Ref@TeX{}} will |
4138 immediately offer the correct label menu - otherwise it will prompt you | 4308 immediately offer the correct label menu - otherwise it will prompt you |
4139 for a label type. If you set this variable to @code{nil}, @b{Ref@TeX{}} | 4309 for a label type. If you set this variable to @code{nil}, @b{Ref@TeX{}} |
4140 will always prompt for a label type.@refill | 4310 will always prompt for a label type. |
4141 @end defopt | 4311 @end defopt |
4142 | 4312 |
4143 @deffn {Normal Hook} reftex-display-copied-context-hook | 4313 @deffn {Normal Hook} reftex-display-copied-context-hook |
4144 Normal Hook which is run before context is displayed anywhere. Designed | 4314 Normal Hook which is run before context is displayed anywhere. Designed |
4145 for @w{@code{X-Symbol}}, but may have other uses as well.@refill | 4315 for @w{@code{X-Symbol}}, but may have other uses as well. |
4146 @end deffn | 4316 @end deffn |
4147 | 4317 |
4148 @deffn Hook reftex-pre-refontification-functions | 4318 @deffn Hook reftex-pre-refontification-functions |
4149 @code{X-Symbol} specific hook. Probably not useful for other purposes. | 4319 @code{X-Symbol} specific hook. Probably not useful for other purposes. |
4150 The functions get two arguments, the buffer from where the command | 4320 The functions get two arguments, the buffer from where the command |
4151 started and a symbol indicating in what context the hook is | 4321 started and a symbol indicating in what context the hook is |
4152 called.@refill | 4322 called. |
4153 @end deffn | 4323 @end deffn |
4154 | 4324 |
4155 @deffn {Normal Hook} reftex-select-label-mode-hook | 4325 @deffn {Normal Hook} reftex-select-label-mode-hook |
4156 Normal hook which is run when a selection buffer enters | 4326 Normal hook which is run when a selection buffer enters |
4157 @code{reftex-select-label-mode}.@refill | 4327 @code{reftex-select-label-mode}. |
4158 @end deffn | 4328 @end deffn |
4159 | 4329 |
4160 @deffn Keymap reftex-select-label-map | 4330 @deffn Keymap reftex-select-label-map |
4161 The keymap which is active in the labels selection process | 4331 The keymap which is active in the labels selection process |
4162 (@pxref{Referencing Labels}).@refill | 4332 (@pxref{Referencing Labels}). |
4163 @end deffn | 4333 @end deffn |
4164 | 4334 |
4165 @node Options (Creating Citations), Options (Index Support), Options (Referencing Labels), Options | 4335 @node Options (Creating Citations), Options (Index Support), Options (Referencing Labels), Options |
4166 @section Creating Citations | 4336 @section Creating Citations |
4167 @cindex Options, creating citations | 4337 @cindex Options, creating citations |
4174 @defopt reftex-bibfile-ignore-regexps | 4344 @defopt reftex-bibfile-ignore-regexps |
4175 List of regular expressions to exclude files in | 4345 List of regular expressions to exclude files in |
4176 @code{\\bibliography@{..@}}. File names matched by any of these regexps | 4346 @code{\\bibliography@{..@}}. File names matched by any of these regexps |
4177 will not be parsed. Intended for files which contain only | 4347 will not be parsed. Intended for files which contain only |
4178 @code{@@string} macro definitions and the like, which are ignored by | 4348 @code{@@string} macro definitions and the like, which are ignored by |
4179 @b{Ref@TeX{}} anyway.@refill | 4349 @b{Ref@TeX{}} anyway. |
4180 @end defopt | 4350 @end defopt |
4181 | 4351 |
4182 @defopt reftex-default-bibliography | 4352 @defopt reftex-default-bibliography |
4183 List of BibTeX database files which should be used if none are specified. | 4353 List of BibTeX database files which should be used if none are specified. |
4184 When @code{reftex-citation} is called from a document with neither | 4354 When @code{reftex-citation} is called from a document with neither |
4185 a @samp{\bibliography@{...@}} statement nor a @code{thebibliography} | 4355 a @samp{\bibliography@{...@}} statement nor a @code{thebibliography} |
4186 environment, @b{Ref@TeX{}} will scan these files instead. Intended for | 4356 environment, @b{Ref@TeX{}} will scan these files instead. Intended for |
4187 using @code{reftex-citation} in non-LaTeX files. The files will be | 4357 using @code{reftex-citation} in non-LaTeX files. The files will be |
4188 searched along the BIBINPUTS or TEXBIB path.@refill | 4358 searched along the BIBINPUTS or TEXBIB path. |
4189 @end defopt | 4359 @end defopt |
4190 | 4360 |
4191 @defopt reftex-sort-bibtex-matches | 4361 @defopt reftex-sort-bibtex-matches |
4192 Sorting of the entries found in BibTeX databases by reftex-citation. | 4362 Sorting of the entries found in BibTeX databases by reftex-citation. |
4193 Possible values:@refill | 4363 Possible values: |
4194 @example | 4364 @example |
4195 nil @r{Do not sort entries.} | 4365 nil @r{Do not sort entries.} |
4196 author @r{Sort entries by author name.} | 4366 author @r{Sort entries by author name.} |
4197 year @r{Sort entries by increasing year.} | 4367 year @r{Sort entries by increasing year.} |
4198 reverse-year @r{Sort entries by decreasing year.} | 4368 reverse-year @r{Sort entries by decreasing year.} |
4201 | 4371 |
4202 @defopt reftex-cite-format | 4372 @defopt reftex-cite-format |
4203 The format of citations to be inserted into the buffer. It can be a | 4373 The format of citations to be inserted into the buffer. It can be a |
4204 string, an alist or a symbol. In the simplest case this is just the string | 4374 string, an alist or a symbol. In the simplest case this is just the string |
4205 @samp{\cite@{%l@}}, which is also the default. See the definition of | 4375 @samp{\cite@{%l@}}, which is also the default. See the definition of |
4206 @code{reftex-cite-format-builtin} for more complex examples.@refill | 4376 @code{reftex-cite-format-builtin} for more complex examples. |
4207 | 4377 |
4208 If @code{reftex-cite-format} is a string, it will be used as the format. | 4378 If @code{reftex-cite-format} is a string, it will be used as the format. |
4209 In the format, the following percent escapes will be expanded.@refill | 4379 In the format, the following percent escapes will be expanded. |
4210 | 4380 |
4211 @table @code | 4381 @table @code |
4212 @item %l | 4382 @item %l |
4213 The BibTeX label of the citation. | 4383 The BibTeX label of the citation. |
4214 @item %a | 4384 @item %a |
4217 Like %a, but abbreviate more than 2 authors like Jones et al. | 4387 Like %a, but abbreviate more than 2 authors like Jones et al. |
4218 @item %A | 4388 @item %A |
4219 First author name only. | 4389 First author name only. |
4220 @item %e | 4390 @item %e |
4221 Works like @samp{%a}, but on list of editor names. (@samp{%2e} and | 4391 Works like @samp{%a}, but on list of editor names. (@samp{%2e} and |
4222 @samp{%E} work a well).@refill | 4392 @samp{%E} work a well). |
4223 @end table | 4393 @end table |
4224 | 4394 |
4225 It is also possible to access all other BibTeX database fields: | 4395 It is also possible to access all other BibTeX database fields: |
4226 | 4396 |
4227 @example | 4397 @example |
4233 %B booktitle, abbreviated %T title, abbreviated | 4403 %B booktitle, abbreviated %T title, abbreviated |
4234 @end example | 4404 @end example |
4235 | 4405 |
4236 @noindent | 4406 @noindent |
4237 Usually, only @samp{%l} is needed. The other stuff is mainly for the | 4407 Usually, only @samp{%l} is needed. The other stuff is mainly for the |
4238 echo area display, and for @code{(setq reftex-comment-citations t)}.@refill | 4408 echo area display, and for @code{(setq reftex-comment-citations t)}. |
4239 | 4409 |
4240 @samp{%<} as a special operator kills punctuation and space around it | 4410 @samp{%<} as a special operator kills punctuation and space around it |
4241 after the string has been formatted.@refill | 4411 after the string has been formatted. |
4412 | |
4413 A pair of square brackets indicates an optional argument, and RefTeX | |
4414 will prompt for the values of these arguments. | |
4242 | 4415 |
4243 Beware that all this only works with BibTeX database files. When | 4416 Beware that all this only works with BibTeX database files. When |
4244 citations are made from the @code{\bibitems} in an explicit | 4417 citations are made from the @code{\bibitems} in an explicit |
4245 @code{thebibliography} environment, only @samp{%l} is available.@refill | 4418 @code{thebibliography} environment, only @samp{%l} is available. |
4246 | 4419 |
4247 If @code{reftex-cite-format} is an alist of characters and strings, the | 4420 If @code{reftex-cite-format} is an alist of characters and strings, the |
4248 user will be prompted for a character to select one of the possible | 4421 user will be prompted for a character to select one of the possible |
4249 format strings.@refill | 4422 format strings. |
4250 | 4423 |
4251 In order to configure this variable, you can either set | 4424 In order to configure this variable, you can either set |
4252 @code{reftex-cite-format} directly yourself or set it to the | 4425 @code{reftex-cite-format} directly yourself or set it to the |
4253 @emph{symbol} of one of the predefined styles. The predefined symbols | 4426 @emph{symbol} of one of the predefined styles. The predefined symbols |
4254 are those which have an association in the constant | 4427 are those which have an association in the constant |
4255 @code{reftex-cite-format-builtin}) E.g.: @code{(setq reftex-cite-format | 4428 @code{reftex-cite-format-builtin}) E.g.: @code{(setq reftex-cite-format |
4256 'natbib)}.@refill | 4429 'natbib)}. |
4257 @end defopt | 4430 @end defopt |
4258 | 4431 |
4259 @deffn Hook reftex-format-cite-function | 4432 @deffn Hook reftex-format-cite-function |
4260 | |
4261 If non-@code{nil}, should be a function which produces the string to | 4433 If non-@code{nil}, should be a function which produces the string to |
4262 insert as a citation. Note that the citation format can also be changed | 4434 insert as a citation. Note that the citation format can also be changed |
4263 with the variable @code{reftex-cite-format}. The function will be | 4435 with the variable @code{reftex-cite-format}. The function will be |
4264 called with two arguments, the @var{citation-key} and the | 4436 called with two arguments, the @var{citation-key} and the |
4265 @var{default-format} (taken from @code{reftex-cite-format}). It should | 4437 @var{default-format} (taken from @code{reftex-cite-format}). It should |
4266 return the string to insert into the buffer.@refill | 4438 return the string to insert into the buffer. |
4267 @end deffn | 4439 @end deffn |
4440 | |
4441 @defopt reftex-cite-prompt-optional-args | |
4442 Non-@code{nil} means, prompt for empty optional arguments in cite macros. | |
4443 When an entry in @code{reftex-cite-format} ist given with square brackets to | |
4444 indicate optional arguments (for example @samp{\\cite[][]@{%l@}}), RefTeX can | |
4445 prompt for values. Possible values are: | |
4446 @example | |
4447 nil @r{Never prompt for optional arguments} | |
4448 t @r{Always prompt} | |
4449 maybe @r{Prompt only if @code{reftex-citation} was called with C-u prefix arg}@end example | |
4450 Unnecessary empty optional arguments are removed before insertion into | |
4451 the buffer. See @code{reftex-cite-cleanup-optional-args}. | |
4452 @end defopt | |
4453 | |
4454 @defopt reftex-cite-cleanup-optional-args | |
4455 Non-@code{nil} means, remove empty optional arguments from cite macros | |
4456 if possible. | |
4457 @end defopt | |
4268 | 4458 |
4269 @defopt reftex-comment-citations | 4459 @defopt reftex-comment-citations |
4270 Non-@code{nil} means add a comment for each citation describing the full | 4460 Non-@code{nil} means add a comment for each citation describing the full |
4271 entry. The comment is formatted according to | 4461 entry. The comment is formatted according to |
4272 @code{reftex-cite-comment-format}.@refill | 4462 @code{reftex-cite-comment-format}. |
4273 @end defopt | 4463 @end defopt |
4274 | 4464 |
4275 @defopt reftex-cite-comment-format | 4465 @defopt reftex-cite-comment-format |
4276 Citation format used for commented citations. Must @emph{not} contain | 4466 Citation format used for commented citations. Must @emph{not} contain |
4277 @samp{%l}. See the variable @code{reftex-cite-format} for possible | 4467 @samp{%l}. See the variable @code{reftex-cite-format} for possible |
4278 percent escapes.@refill | 4468 percent escapes. |
4279 @end defopt | 4469 @end defopt |
4280 | 4470 |
4281 @defopt reftex-cite-punctuation | 4471 @defopt reftex-cite-punctuation |
4282 Punctuation for formatting of name lists in citations. This is a list | 4472 Punctuation for formatting of name lists in citations. This is a list |
4283 of 3 strings.@refill | 4473 of 3 strings. |
4284 @enumerate | 4474 @enumerate |
4285 @item | 4475 @item |
4286 normal names separator, like @samp{, } in Jones, Brown and Miller | 4476 normal names separator, like @samp{, } in Jones, Brown and Miller |
4287 @item | 4477 @item |
4288 final names separator, like @samp{ and } in Jones, Brown and Miller | 4478 final names separator, like @samp{ and } in Jones, Brown and Miller |
4292 @end enumerate | 4482 @end enumerate |
4293 @end defopt | 4483 @end defopt |
4294 | 4484 |
4295 @deffn {Normal Hook} reftex-select-bib-mode-hook | 4485 @deffn {Normal Hook} reftex-select-bib-mode-hook |
4296 Normal hook which is run when a selection buffer enters | 4486 Normal hook which is run when a selection buffer enters |
4297 @code{reftex-select-bib-mode}.@refill | 4487 @code{reftex-select-bib-mode}. |
4298 @end deffn | 4488 @end deffn |
4299 | 4489 |
4300 @deffn Keymap reftex-select-bib-map | 4490 @deffn Keymap reftex-select-bib-map |
4301 The keymap which is active in the citation-key selection process | 4491 The keymap which is active in the citation-key selection process |
4302 (@pxref{Creating Citations}).@refill | 4492 (@pxref{Creating Citations}). |
4303 @end deffn | 4493 @end deffn |
4304 | 4494 |
4305 @node Options (Index Support), Options (Viewing Cross-References), Options (Creating Citations), Options | 4495 @node Options (Index Support), Options (Viewing Cross-References), Options (Creating Citations), Options |
4306 @section Index Support | 4496 @section Index Support |
4307 @cindex Options, Index support | 4497 @cindex Options, Index support |
4311 Non-@code{nil} means, index entries are parsed as well. Index support | 4501 Non-@code{nil} means, index entries are parsed as well. Index support |
4312 is resource intensive and the internal structure holding the parsed | 4502 is resource intensive and the internal structure holding the parsed |
4313 information can become quite big. Therefore it can be turned off. When | 4503 information can become quite big. Therefore it can be turned off. When |
4314 this is @code{nil} and you execute a command which requires index | 4504 this is @code{nil} and you execute a command which requires index |
4315 support, you will be asked for confirmation to turn it on and rescan the | 4505 support, you will be asked for confirmation to turn it on and rescan the |
4316 document.@refill | 4506 document. |
4317 @end defopt | 4507 @end defopt |
4318 | 4508 |
4319 @defopt reftex-index-special-chars | 4509 @defopt reftex-index-special-chars |
4320 List of special characters in index entries, given as strings. These | 4510 List of special characters in index entries, given as strings. These |
4321 correspond to the @code{MakeIndex} keywords | 4511 correspond to the @code{MakeIndex} keywords |
4329 (@var{macro} @var{index-tag} @var{key} @var{prefix} @var{exclude} @var{repeat}) | 4519 (@var{macro} @var{index-tag} @var{key} @var{prefix} @var{exclude} @var{repeat}) |
4330 @end lisp | 4520 @end lisp |
4331 | 4521 |
4332 @var{macro} is the macro. Arguments should be denoted by empty braces, | 4522 @var{macro} is the macro. Arguments should be denoted by empty braces, |
4333 as for example in @samp{\index[]@{*@}}. Use square brackets to denote | 4523 as for example in @samp{\index[]@{*@}}. Use square brackets to denote |
4334 optional arguments. The star marks where the index key is.@refill | 4524 optional arguments. The star marks where the index key is. |
4335 | 4525 |
4336 @var{index-tag} is a short name of the index. @samp{idx} and @samp{glo} | 4526 @var{index-tag} is a short name of the index. @samp{idx} and @samp{glo} |
4337 are reserved for the default index and the glossary. Other indices can | 4527 are reserved for the default index and the glossary. Other indices can |
4338 be defined as well. If this is an integer, the Nth argument of the | 4528 be defined as well. If this is an integer, the Nth argument of the |
4339 macro holds the index tag.@refill | 4529 macro holds the index tag. |
4340 | 4530 |
4341 @var{key} is a character which is used to identify the macro for input | 4531 @var{key} is a character which is used to identify the macro for input |
4342 with @code{reftex-index}. @samp{?i}, @samp{?I}, and @samp{?g} are | 4532 with @code{reftex-index}. @samp{?i}, @samp{?I}, and @samp{?g} are |
4343 reserved for default index and glossary.@refill | 4533 reserved for default index and glossary. |
4344 | 4534 |
4345 @var{prefix} can be a prefix which is added to the @var{key} part of the | 4535 @var{prefix} can be a prefix which is added to the @var{key} part of the |
4346 index entry. If you have a macro | 4536 index entry. If you have a macro |
4347 @code{\newcommand@{\molec@}[1]@{#1\index@{Molecules!#1@}}, this prefix | 4537 @code{\newcommand@{\molec@}[1]@{#1\index@{Molecules!#1@}}, this prefix |
4348 should be @samp{Molecules!}.@refill | 4538 should be @samp{Molecules!}. |
4349 | 4539 |
4350 @var{exclude} can be a function. If this function exists and returns a | 4540 @var{exclude} can be a function. If this function exists and returns a |
4351 non-@code{nil} value, the index entry at point is ignored. This was | 4541 non-@code{nil} value, the index entry at point is ignored. This was |
4352 implemented to support the (deprecated) @samp{^} and @samp{_} shortcuts | 4542 implemented to support the (deprecated) @samp{^} and @samp{_} shortcuts |
4353 in the LaTeX2e @code{index} package.@refill | 4543 in the LaTeX2e @code{index} package. |
4354 | 4544 |
4355 @var{repeat}, if non-@code{nil}, means the index macro does not typeset | 4545 @var{repeat}, if non-@code{nil}, means the index macro does not typeset |
4356 the entry in the text, so that the text has to be repeated outside the | 4546 the entry in the text, so that the text has to be repeated outside the |
4357 index macro. Needed for @code{reftex-index-selection-or-word} and for | 4547 index macro. Needed for @code{reftex-index-selection-or-word} and for |
4358 indexing from the phrase buffer.@refill | 4548 indexing from the phrase buffer. |
4359 | 4549 |
4360 The final entry may also be a symbol. It must have an association in | 4550 The final entry may also be a symbol. It must have an association in |
4361 the variable @code{reftex-index-macros-builtin} to specify the main | 4551 the variable @code{reftex-index-macros-builtin} to specify the main |
4362 indexing package you are using. Legal values are currently@refill | 4552 indexing package you are using. Legal values are currently |
4363 @example | 4553 @example |
4364 default @r{The LaTeX default - unnecessary to specify this one} | 4554 default @r{The LaTeX default - unnecessary to specify this one} |
4365 multind @r{The multind.sty package} | 4555 multind @r{The multind.sty package} |
4366 index @r{The index.sty package} | 4556 index @r{The index.sty package} |
4367 index-shortcut @r{The index.sty packages with the ^ and _ shortcuts.} | 4557 index-shortcut @r{The index.sty packages with the ^ and _ shortcuts.} |
4381 | 4571 |
4382 @var{default-tag} is the tag to be used if the macro requires a | 4572 @var{default-tag} is the tag to be used if the macro requires a |
4383 @var{tag} argument. When this is @code{nil} and a @var{tag} is needed, | 4573 @var{tag} argument. When this is @code{nil} and a @var{tag} is needed, |
4384 @b{Ref@TeX{}} will ask for it. When this is the empty string and the | 4574 @b{Ref@TeX{}} will ask for it. When this is the empty string and the |
4385 TAG argument of the index macro is optional, the TAG argument will be | 4575 TAG argument of the index macro is optional, the TAG argument will be |
4386 omitted.@refill | 4576 omitted. |
4387 @end defopt | 4577 @end defopt |
4388 | 4578 |
4389 @defopt reftex-index-default-tag | 4579 @defopt reftex-index-default-tag |
4390 Default index tag. When working with multiple indexes, RefTeX queries | 4580 Default index tag. When working with multiple indexes, RefTeX queries |
4391 for an index tag when creating index entries or displaying a specific | 4581 for an index tag when creating index entries or displaying a specific |
4392 index. This variable controls the default offered for these queries. | 4582 index. This variable controls the default offered for these queries. |
4393 The default can be selected with @key{RET} during selection or | 4583 The default can be selected with @key{RET} during selection or |
4394 completion. Legal values of this variable are:@refill | 4584 completion. Legal values of this variable are: |
4395 @example | 4585 @example |
4396 nil @r{Do not provide a default index} | 4586 nil @r{Do not provide a default index} |
4397 "tag" @r{The default index tag given as a string, e.g. "idx"} | 4587 "tag" @r{The default index tag given as a string, e.g. "idx"} |
4398 last @r{The last used index tag will be offered as default} | 4588 last @r{The last used index tag will be offered as default} |
4399 @end example | 4589 @end example |
4403 Format of index entries when copied from inside math mode. When | 4593 Format of index entries when copied from inside math mode. When |
4404 @code{reftex-index-selection-or-word} is executed inside TeX math mode, | 4594 @code{reftex-index-selection-or-word} is executed inside TeX math mode, |
4405 the index key copied from the buffer is processed with this format | 4595 the index key copied from the buffer is processed with this format |
4406 string through the @code{format} function. This can be used to add the | 4596 string through the @code{format} function. This can be used to add the |
4407 math delimiters (e.g. @samp{$}) to the string. Requires the | 4597 math delimiters (e.g. @samp{$}) to the string. Requires the |
4408 @file{texmathp.el} library which is part of AUCTeX.@refill | 4598 @file{texmathp.el} library which is part of AUCTeX. |
4409 @end defopt | 4599 @end defopt |
4410 | 4600 |
4411 @defopt reftex-index-phrase-file-extension | 4601 @defopt reftex-index-phrase-file-extension |
4412 File extension for the index phrase file. This extension will be added | 4602 File extension for the index phrase file. This extension will be added |
4413 to the base name of the master file. | 4603 to the base name of the master file. |
4418 file. When several index arguments in a phrase line are separated by | 4608 file. When several index arguments in a phrase line are separated by |
4419 this operator, each part will generate an index macro. So each match of | 4609 this operator, each part will generate an index macro. So each match of |
4420 the search phrase will produce @emph{several} different index entries. | 4610 the search phrase will produce @emph{several} different index entries. |
4421 Make sure this does no match things which are not separators. This | 4611 Make sure this does no match things which are not separators. This |
4422 logical @samp{and} has higher priority than the logical @samp{or} | 4612 logical @samp{and} has higher priority than the logical @samp{or} |
4423 specified in @code{reftex-index-phrases-logical-or-regexp}.@refill | 4613 specified in @code{reftex-index-phrases-logical-or-regexp}. |
4424 @end defopt | 4614 @end defopt |
4425 | 4615 |
4426 @defopt reftex-index-phrases-logical-or-regexp | 4616 @defopt reftex-index-phrases-logical-or-regexp |
4427 Regexp matching the @samp{or} operator for index arguments in phrases | 4617 Regexp matching the @samp{or} operator for index arguments in phrases |
4428 file. When several index arguments in a phrase line are separated by | 4618 file. When several index arguments in a phrase line are separated by |
4429 this operator, the user will be asked to select one of them at each | 4619 this operator, the user will be asked to select one of them at each |
4430 match of the search phrase. The first index arg will be the default. A | 4620 match of the search phrase. The first index arg will be the default. A |
4431 number key @kbd{1}--@kbd{9} must be pressed to switch to another. Make | 4621 number key @kbd{1}--@kbd{9} must be pressed to switch to another. Make |
4432 sure this does no match things which are not separators. The logical | 4622 sure this does no match things which are not separators. The logical |
4433 @samp{and} specified in @code{reftex-index-phrases-logical-or-regexp} | 4623 @samp{and} specified in @code{reftex-index-phrases-logical-or-regexp} |
4434 has higher priority than this logical @samp{or}.@refill | 4624 has higher priority than this logical @samp{or}. |
4435 @end defopt | 4625 @end defopt |
4436 | 4626 |
4437 @defopt reftex-index-phrases-search-whole-words | 4627 @defopt reftex-index-phrases-search-whole-words |
4438 Non-@code{nil} means phrases search will look for whole words, not subwords. | 4628 Non-@code{nil} means phrases search will look for whole words, not subwords. |
4439 This works by requiring word boundaries at the beginning and end of | 4629 This works by requiring word boundaries at the beginning and end of |
4441 at one of these points, no word boundary is required there. | 4631 at one of these points, no word boundary is required there. |
4442 @end defopt | 4632 @end defopt |
4443 | 4633 |
4444 @defopt reftex-index-phrases-case-fold-search | 4634 @defopt reftex-index-phrases-case-fold-search |
4445 Non-@code{nil} means, searching for index phrases will ignore | 4635 Non-@code{nil} means, searching for index phrases will ignore |
4446 case.@refill | 4636 case. |
4447 @end defopt | 4637 @end defopt |
4448 | 4638 |
4449 @defopt reftex-index-verify-function | 4639 @defopt reftex-index-verify-function |
4450 A function which is called at each match during global indexing. | 4640 A function which is called at each match during global indexing. |
4451 If the function returns nil, the current match is skipped. | 4641 If the function returns nil, the current match is skipped. |
4457 phrases may match at places where that phrase was already indexed. In | 4647 phrases may match at places where that phrase was already indexed. In |
4458 particular when indexing an already processed document again, this | 4648 particular when indexing an already processed document again, this |
4459 will even be the norm. When this variable is non-@code{nil}, | 4649 will even be the norm. When this variable is non-@code{nil}, |
4460 @b{Ref@TeX{}} checks if the match is an index macro argument, or if an | 4650 @b{Ref@TeX{}} checks if the match is an index macro argument, or if an |
4461 index macro is directly before or after the phrase. If that is the | 4651 index macro is directly before or after the phrase. If that is the |
4462 case, that match will be ignored.@refill | 4652 case, that match will be ignored. |
4463 @end defopt | 4653 @end defopt |
4464 | 4654 |
4465 @defopt reftex-index-phrases-wrap-long-lines | 4655 @defopt reftex-index-phrases-wrap-long-lines |
4466 Non-@code{nil} means, when indexing from the phrases buffer, wrap lines. | 4656 Non-@code{nil} means, when indexing from the phrases buffer, wrap lines. |
4467 Inserting indexing commands in a line makes the line longer - often | 4657 Inserting indexing commands in a line makes the line longer - often |
4468 so long that it does not fit onto the screen. When this variable is | 4658 so long that it does not fit onto the screen. When this variable is |
4469 non-@code{nil}, newlines will be added as necessary before and/or after the | 4659 non-@code{nil}, newlines will be added as necessary before and/or after the |
4470 indexing command to keep lines short. However, the matched text | 4660 indexing command to keep lines short. However, the matched text |
4471 phrase and its index command will always end up on a single line.@refill | 4661 phrase and its index command will always end up on a single line. |
4472 @end defopt | 4662 @end defopt |
4473 | 4663 |
4474 @defopt reftex-index-phrases-sort-prefers-entry | 4664 @defopt reftex-index-phrases-sort-prefers-entry |
4475 Non-@code{nil} means when sorting phrase lines, the explicit index entry | 4665 Non-@code{nil} means when sorting phrase lines, the explicit index entry |
4476 is used. Phrase lines in the phrases buffer contain a search phrase, and | 4666 is used. Phrase lines in the phrases buffer contain a search phrase, and |
4477 sorting is normally based on these. Some phrase lines also have | 4667 sorting is normally based on these. Some phrase lines also have |
4478 an explicit index argument specified. When this variable is | 4668 an explicit index argument specified. When this variable is |
4479 non-@code{nil}, the index argument will be used for sorting.@refill | 4669 non-@code{nil}, the index argument will be used for sorting. |
4480 @end defopt | 4670 @end defopt |
4481 | 4671 |
4482 @defopt reftex-index-phrases-sort-in-blocks | 4672 @defopt reftex-index-phrases-sort-in-blocks |
4483 Non-@code{nil} means, empty and comment lines separate phrase buffer | 4673 Non-@code{nil} means, empty and comment lines separate phrase buffer |
4484 into blocks. Sorting will then preserve blocks, so that lines are | 4674 into blocks. Sorting will then preserve blocks, so that lines are |
4489 Keymap for the Index Phrases buffer. | 4679 Keymap for the Index Phrases buffer. |
4490 @end defopt | 4680 @end defopt |
4491 | 4681 |
4492 @defopt reftex-index-phrases-mode-hook | 4682 @defopt reftex-index-phrases-mode-hook |
4493 Normal hook which is run when a buffer is put into | 4683 Normal hook which is run when a buffer is put into |
4494 @code{reftex-index-phrases-mode}.@refill | 4684 @code{reftex-index-phrases-mode}. |
4495 @end defopt | 4685 @end defopt |
4496 | 4686 |
4497 @defopt reftex-index-section-letters | 4687 @defopt reftex-index-section-letters |
4498 The letters which denote sections in the index. Usually these are all | 4688 The letters which denote sections in the index. Usually these are all |
4499 capital letters. Don't use any downcase letters. Order is not | 4689 capital letters. Don't use any downcase letters. Order is not |
4500 significant, the index will be sorted by whatever the sort function | 4690 significant, the index will be sorted by whatever the sort function |
4501 thinks is correct. In addition to these letters, @b{Ref@TeX{}} will | 4691 thinks is correct. In addition to these letters, @b{Ref@TeX{}} will |
4502 create a group @samp{!} which contains all entries sorted below the | 4692 create a group @samp{!} which contains all entries sorted below the |
4503 lowest specified letter. In the @file{*Index*} buffer, pressing any of | 4693 lowest specified letter. In the @file{*Index*} buffer, pressing any of |
4504 these capital letters or @kbd{!} will jump to that section.@refill | 4694 these capital letters or @kbd{!} will jump to that section. |
4505 @end defopt | 4695 @end defopt |
4506 | 4696 |
4507 @defopt reftex-index-include-context | 4697 @defopt reftex-index-include-context |
4508 Non-@code{nil} means, display the index definition context in the | 4698 Non-@code{nil} means, display the index definition context in the |
4509 @file{*Index*} buffer. This flag may also be toggled from the | 4699 @file{*Index*} buffer. This flag may also be toggled from the |
4517 buffer with the @kbd{f} key. | 4707 buffer with the @kbd{f} key. |
4518 @end defopt | 4708 @end defopt |
4519 | 4709 |
4520 @deffn Keymap reftex-index-map | 4710 @deffn Keymap reftex-index-map |
4521 The keymap which is active in the @file{*Index*} buffer | 4711 The keymap which is active in the @file{*Index*} buffer |
4522 (@pxref{Index Support}).@refill | 4712 (@pxref{Index Support}). |
4523 @end deffn | 4713 @end deffn |
4524 | 4714 |
4525 @node Options (Viewing Cross-References), Options (Finding Files), Options (Index Support), Options | 4715 @node Options (Viewing Cross-References), Options (Finding Files), Options (Index Support), Options |
4526 @section Viewing Cross-References | 4716 @section Viewing Cross-References |
4527 @cindex Options, viewing cross-references | 4717 @cindex Options, viewing cross-references |
4550 the argument of a @code{\ref} or @code{\cite} macro, and no other | 4740 the argument of a @code{\ref} or @code{\cite} macro, and no other |
4551 message is being displayed, the echo area will display information about | 4741 message is being displayed, the echo area will display information about |
4552 that cross reference. You can also set the variable to the symbol | 4742 that cross reference. You can also set the variable to the symbol |
4553 @code{window}. In this case a small temporary window is used for the | 4743 @code{window}. In this case a small temporary window is used for the |
4554 display. This feature can be turned on and off from the menu | 4744 display. This feature can be turned on and off from the menu |
4555 (Ref->Options).@refill | 4745 (Ref->Options). |
4556 @end defopt | 4746 @end defopt |
4557 | 4747 |
4558 @defopt reftex-idle-time | 4748 @defopt reftex-idle-time |
4559 Time (secs) Emacs has to be idle before automatic crossref display | 4749 Time (secs) Emacs has to be idle before automatic crossref display |
4560 or toc recentering is done.@refill | 4750 or toc recentering is done. |
4561 @end defopt | 4751 @end defopt |
4562 | 4752 |
4563 @defopt reftex-cite-view-format | 4753 @defopt reftex-cite-view-format |
4564 Citation format used to display citation info in the message area. See | 4754 Citation format used to display citation info in the message area. See |
4565 the variable @code{reftex-cite-format} for possible percent | 4755 the variable @code{reftex-cite-format} for possible percent |
4566 escapes.@refill | 4756 escapes. |
4567 @end defopt | 4757 @end defopt |
4568 | 4758 |
4569 @defopt reftex-revisit-to-echo | 4759 @defopt reftex-revisit-to-echo |
4570 Non-@code{nil} means, automatic citation display will revisit files if | 4760 Non-@code{nil} means, automatic citation display will revisit files if |
4571 necessary. When nil, citation display in echo area will only be active | 4761 necessary. When nil, citation display in echo area will only be active |
4572 for cached echo strings (see @code{reftex-cache-cite-echo}), or for | 4762 for cached echo strings (see @code{reftex-cache-cite-echo}), or for |
4573 BibTeX database files which are already visited by a live associated | 4763 BibTeX database files which are already visited by a live associated |
4574 buffers.@refill | 4764 buffers. |
4575 @end defopt | 4765 @end defopt |
4576 | 4766 |
4577 @defopt reftex-cache-cite-echo | 4767 @defopt reftex-cache-cite-echo |
4578 Non-@code{nil} means, the information displayed in the echo area for | 4768 Non-@code{nil} means, the information displayed in the echo area for |
4579 cite macros (see variable @code{reftex-auto-view-crossref}) is cached and | 4769 cite macros (see variable @code{reftex-auto-view-crossref}) is cached and |
4586 @cindex Options, Finding Files | 4776 @cindex Options, Finding Files |
4587 @cindex Finding files, options | 4777 @cindex Finding files, options |
4588 | 4778 |
4589 @defopt reftex-texpath-environment-variables | 4779 @defopt reftex-texpath-environment-variables |
4590 List of specifications how to retrieve the search path for TeX files. | 4780 List of specifications how to retrieve the search path for TeX files. |
4591 Several entries are possible.@refill | 4781 Several entries are possible. |
4592 @itemize @minus | 4782 @itemize @minus |
4593 @item | 4783 @item |
4594 If an element is the name of an environment variable, its content is | 4784 If an element is the name of an environment variable, its content is |
4595 used.@refill | 4785 used. |
4596 @item | 4786 @item |
4597 If an element starts with an exclamation mark, it is used as a command | 4787 If an element starts with an exclamation mark, it is used as a command |
4598 to retrieve the path. A typical command with the kpathsearch library | 4788 to retrieve the path. A typical command with the kpathsearch library |
4599 would be @w{@code{"!kpsewhich -show-path=.tex"}}. | 4789 would be @w{@code{"!kpsewhich -show-path=.tex"}}. |
4600 @item | 4790 @item |
4605 be expanded recursively. See also @code{reftex-use-external-file-finders}. | 4795 be expanded recursively. See also @code{reftex-use-external-file-finders}. |
4606 @end defopt | 4796 @end defopt |
4607 | 4797 |
4608 @defopt reftex-bibpath-environment-variables | 4798 @defopt reftex-bibpath-environment-variables |
4609 List of specifications how to retrieve the search path for BibTeX | 4799 List of specifications how to retrieve the search path for BibTeX |
4610 files. Several entries are possible.@refill | 4800 files. Several entries are possible. |
4611 @itemize @minus | 4801 @itemize @minus |
4612 @item | 4802 @item |
4613 If an element is the name of an environment variable, its content is | 4803 If an element is the name of an environment variable, its content is |
4614 used.@refill | 4804 used. |
4615 @item | 4805 @item |
4616 If an element starts with an exclamation mark, it is used as a command | 4806 If an element starts with an exclamation mark, it is used as a command |
4617 to retrieve the path. A typical command with the kpathsearch library | 4807 to retrieve the path. A typical command with the kpathsearch library |
4618 would be @w{@code{"!kpsewhich -show-path=.bib"}}. | 4808 would be @w{@code{"!kpsewhich -show-path=.bib"}}. |
4619 @item | 4809 @item |
4632 @var{type}: @r{File type like @code{"bib"} or @code{"tex"}.} | 4822 @var{type}: @r{File type like @code{"bib"} or @code{"tex"}.} |
4633 @var{def-ext}: @r{The default extension for that file type, like @code{".tex"} or @code{".bib"}.} | 4823 @var{def-ext}: @r{The default extension for that file type, like @code{".tex"} or @code{".bib"}.} |
4634 @var{other-ext}: @r{Any number of other legal extensions for this file type.} | 4824 @var{other-ext}: @r{Any number of other legal extensions for this file type.} |
4635 @end example | 4825 @end example |
4636 When a files is searched and it does not have any of the legal extensions, | 4826 When a files is searched and it does not have any of the legal extensions, |
4637 we try the default extension first, and then the naked file name.@refill | 4827 we try the default extension first, and then the naked file name. |
4638 @end defopt | 4828 @end defopt |
4639 | 4829 |
4640 @defopt reftex-search-unrecursed-path-first | 4830 @defopt reftex-search-unrecursed-path-first |
4641 Non-@code{nil} means, search all specified directories before trying | 4831 Non-@code{nil} means, search all specified directories before trying |
4642 recursion. Thus, in a path @samp{.//:/tex/}, search first @samp{./}, | 4832 recursion. Thus, in a path @samp{.//:/tex/}, search first @samp{./}, |
4643 then @samp{/tex/}, and then all subdirectories of @samp{./}. If this | 4833 then @samp{/tex/}, and then all subdirectories of @samp{./}. If this |
4644 option is @code{nil}, the subdirectories of @samp{./} are searched | 4834 option is @code{nil}, the subdirectories of @samp{./} are searched |
4645 before @samp{/tex/}. This is mainly for speed - most of the time the | 4835 before @samp{/tex/}. This is mainly for speed - most of the time the |
4646 recursive path is for the system files and not for the user files. Set | 4836 recursive path is for the system files and not for the user files. Set |
4647 this to @code{nil} if the default makes @b{Ref@TeX{}} finding files with | 4837 this to @code{nil} if the default makes @b{Ref@TeX{}} finding files with |
4648 equal names in wrong sequence.@refill | 4838 equal names in wrong sequence. |
4649 @end defopt | 4839 @end defopt |
4650 | 4840 |
4651 @defopt reftex-use-external-file-finders | 4841 @defopt reftex-use-external-file-finders |
4652 Non-@code{nil} means, use external programs to find files. Normally, | 4842 Non-@code{nil} means, use external programs to find files. Normally, |
4653 @b{Ref@TeX{}} searches the paths given in the environment variables | 4843 @b{Ref@TeX{}} searches the paths given in the environment variables |
4665 @var{type} is either @code{"tex"} or @code{"bib"}. @var{program} is a | 4855 @var{type} is either @code{"tex"} or @code{"bib"}. @var{program} is a |
4666 string containing the external program to use with any arguments. | 4856 string containing the external program to use with any arguments. |
4667 @code{%f} will be replaced by the name of the file to be found. Note | 4857 @code{%f} will be replaced by the name of the file to be found. Note |
4668 that these commands will be executed directly, not via a shell. Only | 4858 that these commands will be executed directly, not via a shell. Only |
4669 relevant when @code{reftex-use-external-file-finders} is | 4859 relevant when @code{reftex-use-external-file-finders} is |
4670 non-@code{nil}.@refill | 4860 non-@code{nil}. |
4671 @end defopt | 4861 @end defopt |
4672 | 4862 |
4673 @page | 4863 @page |
4674 @node Options (Optimizations), Options (Fontification), Options (Finding Files), Options | 4864 @node Options (Optimizations), Options (Fontification), Options (Finding Files), Options |
4675 @section Optimizations | 4865 @section Optimizations |
4677 @cindex Optimizations, options | 4867 @cindex Optimizations, options |
4678 | 4868 |
4679 @defopt reftex-keep-temporary-buffers | 4869 @defopt reftex-keep-temporary-buffers |
4680 Non-@code{nil} means, keep buffers created for parsing and lookup. | 4870 Non-@code{nil} means, keep buffers created for parsing and lookup. |
4681 @b{Ref@TeX{}} sometimes needs to visit files related to the current | 4871 @b{Ref@TeX{}} sometimes needs to visit files related to the current |
4682 document. We distinguish files visited for@refill | 4872 document. We distinguish files visited for |
4683 @table @asis | 4873 @table @asis |
4684 @item PARSING | 4874 @item PARSING |
4685 Parts of a multifile document loaded when (re)-parsing the | 4875 Parts of a multifile document loaded when (re)-parsing the |
4686 document.@refill | 4876 document. |
4687 @item LOOKUP | 4877 @item LOOKUP |
4688 BibTeX database files and TeX files loaded to find a reference, to | 4878 BibTeX database files and TeX files loaded to find a reference, to |
4689 display label context, etc.@refill | 4879 display label context, etc. |
4690 @end table | 4880 @end table |
4691 The created buffers can be kept for later use, or be thrown away | 4881 The created buffers can be kept for later use, or be thrown away |
4692 immediately after use, depending on the value of this variable:@refill | 4882 immediately after use, depending on the value of this variable: |
4693 | 4883 |
4694 @table @code | 4884 @table @code |
4695 @item nil | 4885 @item nil |
4696 Throw away as much as possible. | 4886 Throw away as much as possible. |
4697 @item t | 4887 @item t |
4698 Keep everything. | 4888 Keep everything. |
4699 @item 1 | 4889 @item 1 |
4700 Throw away buffers created for parsing, but keep the ones created for | 4890 Throw away buffers created for parsing, but keep the ones created for |
4701 lookup.@refill | 4891 lookup. |
4702 @end table | 4892 @end table |
4703 | 4893 |
4704 If a buffer is to be kept, the file is visited normally (which is | 4894 If a buffer is to be kept, the file is visited normally (which is |
4705 potentially slow but will happen only once). If a buffer is to be thrown | 4895 potentially slow but will happen only once). If a buffer is to be thrown |
4706 away, the initialization of the buffer depends upon the variable | 4896 away, the initialization of the buffer depends upon the variable |
4707 @code{reftex-initialize-temporary-buffers}.@refill | 4897 @code{reftex-initialize-temporary-buffers}. |
4708 @end defopt | 4898 @end defopt |
4709 | 4899 |
4710 @defopt reftex-initialize-temporary-buffers | 4900 @defopt reftex-initialize-temporary-buffers |
4711 Non-@code{nil} means do initializations even when visiting file | 4901 Non-@code{nil} means do initializations even when visiting file |
4712 temporarily. When @code{nil}, @b{Ref@TeX{}} may turn off find-file hooks and | 4902 temporarily. When @code{nil}, @b{Ref@TeX{}} may turn off find-file hooks and |
4713 other stuff to briefly visit a file. When @code{t}, the full default | 4903 other stuff to briefly visit a file. When @code{t}, the full default |
4714 initializations are done (@code{find-file-hook} etc.). Instead of | 4904 initializations are done (@code{find-file-hook} etc.). Instead of |
4715 @code{t} or @code{nil}, this variable may also be a list of hook | 4905 @code{t} or @code{nil}, this variable may also be a list of hook |
4716 functions to do a minimal initialization.@refill | 4906 functions to do a minimal initialization. |
4717 @end defopt | 4907 @end defopt |
4718 | 4908 |
4719 @defopt reftex-no-include-regexps | 4909 @defopt reftex-no-include-regexps |
4720 List of regular expressions to exclude certain input files from parsing. | 4910 List of regular expressions to exclude certain input files from parsing. |
4721 If the name of a file included via @code{\include} or @code{\input} is | 4911 If the name of a file included via @code{\include} or @code{\input} is |
4729 commands, or with the @kbd{r} key in menus. When this option is | 4919 commands, or with the @kbd{r} key in menus. When this option is |
4730 @code{t} in a multifile document, we will only parse the current buffer, | 4920 @code{t} in a multifile document, we will only parse the current buffer, |
4731 or the file associated with the label or section heading near point in a | 4921 or the file associated with the label or section heading near point in a |
4732 menu. Requesting re-parsing of an entire multifile document then | 4922 menu. Requesting re-parsing of an entire multifile document then |
4733 requires a @kbd{C-u C-u} prefix or the capital @kbd{R} key in | 4923 requires a @kbd{C-u C-u} prefix or the capital @kbd{R} key in |
4734 menus.@refill | 4924 menus. |
4735 @end defopt | 4925 @end defopt |
4736 | 4926 |
4737 @defopt reftex-save-parse-info | 4927 @defopt reftex-save-parse-info |
4738 Non-@code{nil} means, save information gathered with parsing in files. | 4928 Non-@code{nil} means, save information gathered with parsing in files. |
4739 The file @file{MASTER.rel} in the same directory as @file{MASTER.tex} is | 4929 The file @file{MASTER.rel} in the same directory as @file{MASTER.tex} is |
4740 used to save the information. When this variable is @code{t}, | 4930 used to save the information. When this variable is @code{t}, |
4741 @itemize @minus | 4931 @itemize @minus |
4742 @item | 4932 @item |
4743 accessing the parsing information for the first time in an editing | 4933 accessing the parsing information for the first time in an editing |
4744 session will read that file (if available) instead of parsing the | 4934 session will read that file (if available) instead of parsing the |
4745 document.@refill | 4935 document. |
4746 @item | 4936 @item |
4747 exiting Emacs or killing a buffer in reftex-mode will cause a new | 4937 exiting Emacs or killing a buffer in reftex-mode will cause a new |
4748 version of the file to be written.@refill | 4938 version of the file to be written. |
4749 @end itemize | 4939 @end itemize |
4750 @end defopt | 4940 @end defopt |
4751 | 4941 |
4752 @defopt reftex-parse-file-extension | 4942 @defopt reftex-parse-file-extension |
4753 File extension for the file in which parser information is stored. | 4943 File extension for the file in which parser information is stored. |
4764 Non-@code{nil} means use a separate selection buffer for each label | 4954 Non-@code{nil} means use a separate selection buffer for each label |
4765 type. These buffers are kept from one selection to the next and need | 4955 type. These buffers are kept from one selection to the next and need |
4766 not to be created for each use - so the menu generally comes up faster. | 4956 not to be created for each use - so the menu generally comes up faster. |
4767 The selection buffers will be erased (and therefore updated) | 4957 The selection buffers will be erased (and therefore updated) |
4768 automatically when new labels in its category are added. See the | 4958 automatically when new labels in its category are added. See the |
4769 variable @code{reftex-auto-update-selection-buffers}.@refill | 4959 variable @code{reftex-auto-update-selection-buffers}. |
4770 @end defopt | 4960 @end defopt |
4771 | 4961 |
4772 @defopt reftex-auto-update-selection-buffers | 4962 @defopt reftex-auto-update-selection-buffers |
4773 Non-@code{nil} means, selection buffers will be updated automatically. | 4963 Non-@code{nil} means, selection buffers will be updated automatically. |
4774 When a new label is defined with @code{reftex-label}, all selection | 4964 When a new label is defined with @code{reftex-label}, all selection |
4775 buffers associated with that label category are emptied, in order to | 4965 buffers associated with that label category are emptied, in order to |
4776 force an update upon next use. When @code{nil}, the buffers are left | 4966 force an update upon next use. When @code{nil}, the buffers are left |
4777 alone and have to be updated by hand, with the @kbd{g} key from the | 4967 alone and have to be updated by hand, with the @kbd{g} key from the |
4778 label selection process. The value of this variable will only have any | 4968 label selection process. The value of this variable will only have any |
4779 effect when @code{reftex-use-multiple-selection-buffers} is | 4969 effect when @code{reftex-use-multiple-selection-buffers} is |
4780 non-@code{nil}.@refill | 4970 non-@code{nil}. |
4781 @end defopt | 4971 @end defopt |
4782 | 4972 |
4783 @node Options (Fontification), Options (Misc), Options (Optimizations), Options | 4973 @node Options (Fontification), Options (Misc), Options (Optimizations), Options |
4784 @section Fontification | 4974 @section Fontification |
4785 @cindex Options, fontification | 4975 @cindex Options, fontification |
4787 | 4977 |
4788 @defopt reftex-use-fonts | 4978 @defopt reftex-use-fonts |
4789 Non-@code{nil} means, use fonts in label menu and on-the-fly help. | 4979 Non-@code{nil} means, use fonts in label menu and on-the-fly help. |
4790 Font-lock must be loaded as well to actually get fontified | 4980 Font-lock must be loaded as well to actually get fontified |
4791 display. After changing this option, a rescan may be necessary to | 4981 display. After changing this option, a rescan may be necessary to |
4792 activate it.@refill | 4982 activate it. |
4793 @end defopt | 4983 @end defopt |
4794 | 4984 |
4795 @defopt reftex-refontify-context | 4985 @defopt reftex-refontify-context |
4796 Non-@code{nil} means, re-fontify the context in the label menu with | 4986 Non-@code{nil} means, re-fontify the context in the label menu with |
4797 font-lock. This slightly slows down the creation of the label menu. It | 4987 font-lock. This slightly slows down the creation of the label menu. It |
4798 is only necessary when you definitely want the context fontified.@refill | 4988 is only necessary when you definitely want the context fontified. |
4799 | 4989 |
4800 This option may have 3 different values: | 4990 This option may have 3 different values: |
4801 @table @code | 4991 @table @code |
4802 @item nil | 4992 @item nil |
4803 Never refontify. | 4993 Never refontify. |
4804 @item t | 4994 @item t |
4805 Always refontify. | 4995 Always refontify. |
4806 @item 1 | 4996 @item 1 |
4807 Refontify when necessary, e.g. with old versions of the x-symbol | 4997 Refontify when necessary, e.g. with old versions of the x-symbol |
4808 package.@refill | 4998 package. |
4809 @end table | 4999 @end table |
4810 The option is ignored when @code{reftex-use-fonts} is @code{nil}.@refill | 5000 The option is ignored when @code{reftex-use-fonts} is @code{nil}. |
4811 @end defopt | 5001 @end defopt |
4812 | 5002 |
4813 @defopt reftex-highlight-selection | 5003 @defopt reftex-highlight-selection |
4814 Non-@code{nil} means, highlight selected text in selection and | 5004 Non-@code{nil} means, highlight selected text in selection and |
4815 @file{*toc*} buffers. Normally, the text near the cursor is the | 5005 @file{*toc*} buffers. Normally, the text near the cursor is the |
4816 @emph{selected} text, and it is highlighted. This is the entry most | 5006 @emph{selected} text, and it is highlighted. This is the entry most |
4817 keys in the selection and @file{*toc*} buffers act on. However, if you | 5007 keys in the selection and @file{*toc*} buffers act on. However, if you |
4818 mainly use the mouse to select an item, you may find it nice to have | 5008 mainly use the mouse to select an item, you may find it nice to have |
4819 mouse-triggered highlighting @emph{instead} or @emph{as well}. The | 5009 mouse-triggered highlighting @emph{instead} or @emph{as well}. The |
4820 variable may have one of these values:@refill | 5010 variable may have one of these values: |
4821 | 5011 |
4822 @example | 5012 @example |
4823 nil @r{No highlighting.} | 5013 nil @r{No highlighting.} |
4824 cursor @r{Highlighting is cursor driven.} | 5014 cursor @r{Highlighting is cursor driven.} |
4825 mouse @r{Highlighting is mouse driven.} | 5015 mouse @r{Highlighting is mouse driven.} |
4826 both @r{Both cursor and mouse trigger highlighting.} | 5016 both @r{Both cursor and mouse trigger highlighting.} |
4827 @end example | 5017 @end example |
4828 | 5018 |
4829 Changing this variable requires to rebuild the selection and *toc* | 5019 Changing this variable requires to rebuild the selection and *toc* |
4830 buffers to become effective (keys @kbd{g} or @kbd{r}).@refill | 5020 buffers to become effective (keys @kbd{g} or @kbd{r}). |
4831 @end defopt | 5021 @end defopt |
4832 | 5022 |
4833 @defopt reftex-cursor-selected-face | 5023 @defopt reftex-cursor-selected-face |
4834 Face name to highlight cursor selected item in toc and selection buffers. | 5024 Face name to highlight cursor selected item in toc and selection buffers. |
4835 See also the variable @code{reftex-highlight-selection}.@refill | 5025 See also the variable @code{reftex-highlight-selection}. |
4836 @end defopt | 5026 @end defopt |
4837 @defopt reftex-mouse-selected-face | 5027 @defopt reftex-mouse-selected-face |
4838 Face name to highlight mouse selected item in toc and selection buffers. | 5028 Face name to highlight mouse selected item in toc and selection buffers. |
4839 See also the variable @code{reftex-highlight-selection}.@refill | 5029 See also the variable @code{reftex-highlight-selection}. |
4840 @end defopt | 5030 @end defopt |
4841 @defopt reftex-file-boundary-face | 5031 @defopt reftex-file-boundary-face |
4842 Face name for file boundaries in selection buffer. | 5032 Face name for file boundaries in selection buffer. |
4843 @end defopt | 5033 @end defopt |
4844 @defopt reftex-label-face | 5034 @defopt reftex-label-face |
4883 @cindex Options, misc | 5073 @cindex Options, misc |
4884 | 5074 |
4885 @defopt reftex-extra-bindings | 5075 @defopt reftex-extra-bindings |
4886 Non-@code{nil} means, make additional key bindings on startup. These | 5076 Non-@code{nil} means, make additional key bindings on startup. These |
4887 extra bindings are located in the users @samp{C-c letter} | 5077 extra bindings are located in the users @samp{C-c letter} |
4888 map. @xref{Key Bindings}.@refill | 5078 map. @xref{Key Bindings}. |
4889 @end defopt | 5079 @end defopt |
4890 | 5080 |
4891 @defopt reftex-plug-into-AUCTeX | 5081 @defopt reftex-plug-into-AUCTeX |
4892 Plug-in flags for AUCTeX interface. This variable is a list of | 5082 Plug-in flags for AUCTeX interface. This variable is a list of |
4893 5 boolean flags. When a flag is non-@code{nil}, @b{Ref@TeX{}} | 5083 5 boolean flags. When a flag is non-@code{nil}, @b{Ref@TeX{}} |
4894 will@refill | 5084 will |
4895 | 5085 |
4896 @example | 5086 @example |
4897 - supply labels in new sections and environments (flag 1) | 5087 - supply labels in new sections and environments (flag 1) |
4898 - supply arguments for macros like @code{\label} (flag 2) | 5088 - supply arguments for macros like @code{\label} (flag 2) |
4899 - supply arguments for macros like @code{\ref} (flag 3) | 5089 - supply arguments for macros like @code{\ref} (flag 3) |
4918 @defopt reftex-allow-detached-macro-args | 5108 @defopt reftex-allow-detached-macro-args |
4919 Non-@code{nil} means, allow arguments of macros to be detached by | 5109 Non-@code{nil} means, allow arguments of macros to be detached by |
4920 whitespace. When this is @code{t}, the @samp{aaa} in @w{@samp{\bbb | 5110 whitespace. When this is @code{t}, the @samp{aaa} in @w{@samp{\bbb |
4921 [xxx] @{aaa@}}} will be considered an argument of @code{\bb}. Note that | 5111 [xxx] @{aaa@}}} will be considered an argument of @code{\bb}. Note that |
4922 this will be the case even if @code{\bb} is defined with zero or one | 5112 this will be the case even if @code{\bb} is defined with zero or one |
4923 argument.@refill | 5113 argument. |
4924 @end defopt | 5114 @end defopt |
4925 | 5115 |
4926 @node Keymaps and Hooks, Changes, Options, Top | 5116 @node Keymaps and Hooks, Changes, Options, Top |
4927 @section Keymaps and Hooks | 5117 @section Keymaps and Hooks |
4928 @cindex Keymaps | 5118 @cindex Keymaps |
4936 @deffn {Normal Hook} reftex-load-hook | 5126 @deffn {Normal Hook} reftex-load-hook |
4937 Normal hook which is being run when loading @file{reftex.el}. | 5127 Normal hook which is being run when loading @file{reftex.el}. |
4938 @end deffn | 5128 @end deffn |
4939 | 5129 |
4940 @deffn {Normal Hook} reftex-mode-hook | 5130 @deffn {Normal Hook} reftex-mode-hook |
4941 Normal hook which is being run when turning on @b{Ref@TeX{}} mode.@refill | 5131 Normal hook which is being run when turning on @b{Ref@TeX{}} mode. |
4942 @end deffn | 5132 @end deffn |
4943 | 5133 |
4944 Furthermore, the 4 modes used for referencing labels, creating | 5134 Furthermore, the 4 modes used for referencing labels, creating |
4945 citations, the table of contents buffer and the phrases buffer have | 5135 citations, the table of contents buffer and the phrases buffer have |
4946 their own keymaps and mode hooks. See the respective sections. There | 5136 their own keymaps and mode hooks. See the respective sections. There |
4947 are many more hooks which are described in the relevant sections about | 5137 are many more hooks which are described in the relevant sections about |
4948 options for a specific part of @b{Ref@TeX{}}.@refill | 5138 options for a specific part of @b{Ref@TeX{}}. |
4949 | 5139 |
4950 @node Changes, , Keymaps and Hooks, Top | 5140 @node Changes, , Keymaps and Hooks, Top |
4951 @chapter Changes | 5141 @chapter Changes |
4952 @cindex Changes | 5142 @cindex Changes |
4953 | 5143 |
4954 Here is a list of recent changes to @b{Ref@TeX{}}. | 5144 Here is a list of recent changes to @b{Ref@TeX{}}. |
4955 | 5145 |
5146 @noindent @b{Version 4.26} | |
5147 @itemize @bullet | |
5148 @item | |
5149 Bug fixes only. | |
5150 @end itemize | |
5151 | |
5152 @noindent @b{Version 4.25} | |
5153 @itemize @bullet | |
5154 @item | |
5155 Fixed bug with @samp{%F} in a label prefix. Added new escapes | |
5156 @samp{%m} and @samp{%M} for mater file name and master directory. | |
5157 @end itemize | |
5158 | |
5159 @noindent @b{Version 4.24} | |
5160 @itemize @bullet | |
5161 @item | |
5162 Inserting citation commands now prompts for optional arguments | |
5163 when called with a prefix argument. Related new options are | |
5164 @code{reftex-cite-prompt-optional-args} and | |
5165 @code{reftex-cite-cleanup-optional-args}. | |
5166 @item | |
5167 New option @code{reftex-trust-label-prefix}. Configure this variable | |
5168 if you'd like RefTeX to base its classification of labels on prefixes. | |
5169 This can speed-up document parsing, but may in some cases reduce the | |
5170 quality of the context used by RefTeX to describe a label. | |
5171 @item | |
5172 Fixed bug in @code{reftex-create-bibtex-file} when @code{reftex-comment-citations} | |
5173 is non-nil. | |
5174 @item | |
5175 Fixed bugs in indexing: Case-sensitive search, quotes before and/or | |
5176 after words. Disabbled indexing in comment lines. | |
5177 @end itemize | |
5178 | |
5179 @noindent @b{Version 4.22} | |
5180 @itemize @bullet | |
5181 @item | |
5182 New command @code{reftex-create-bibtex-file} to create a new database | |
5183 with all entries referenced in the current document. | |
5184 @item | |
5185 New keys @kbd{e} and @kbd{E} allow to produce a BibTeX database file | |
5186 from entries marked in a citation selection buffer. | |
5187 @end itemize | |
5188 | |
5189 @noindent @b{Version 4.21} | |
5190 @itemize @bullet | |
5191 @item | |
5192 Renaming labels from the toc buffer with key @kbd{M-%}. | |
5193 @end itemize | |
5194 | |
5195 @noindent @b{Version 4.20} | |
5196 @itemize @bullet | |
5197 @item | |
5198 Structure editing capabilities. The command keys @kbd{<} and @kbd{>} in | |
5199 the TOC buffer promote/demote the section at point or all sections in | |
5200 the current region. | |
5201 @item | |
5202 New option @code{reftex-toc-split-windows-fraction} to set the size of | |
5203 the window used by the TOC. This makes the old variable | |
5204 @code{reftex-toc-split-windows-horizontally-fraction} obsolete. | |
5205 @item | |
5206 A dedicated frame can show the TOC with the current section | |
5207 always automatically highlighted. The frame is created and | |
5208 deleted from the toc buffer with the @kbd{d} key. | |
5209 @end itemize | |
5210 | |
5211 @noindent @b{Version 4.19} | |
5212 @itemize @bullet | |
5213 @item | |
5214 New command `reftex-toc-recenter' (@kbd{C-c -}) which shows the current | |
5215 section in the TOC buffer without selecting the TOC window. | |
5216 @item | |
5217 Recentering happens automatically in idle time when the option | |
5218 @code{reftex-auto-recenter-toc} is turned on. | |
5219 @item | |
5220 Fixed several bugs related to automatic cursor positioning in the TOC | |
5221 buffer. | |
5222 @item | |
5223 The highlight in the TOC buffer stays when the focus moves to a | |
5224 different window. | |
5225 @item | |
5226 New command `reftex-goto-label'. | |
5227 @item | |
5228 Part numbers are no longer included in chapter numbers, and a new | |
5229 part does not reset the chapter counter. See new option | |
5230 @code{reftex-part-resets-chapter}. | |
5231 @end itemize | |
5232 | |
5233 @noindent @b{Version 4.18} | |
5234 @itemize @bullet | |
5235 @item | |
5236 @code{reftex-citation} uses the word before the cursor as a default | |
5237 search string. | |
5238 @item | |
5239 Simplified several regular expressions for speed. | |
5240 @item | |
5241 Better support for chapterbib. | |
5242 @end itemize | |
5243 | |
5244 @noindent @b{Version 4.17} | |
5245 @itemize @bullet | |
5246 @item | |
5247 The toc window can be split off horizontally. See new options | |
5248 @code{reftex-toc-split-windows-horizontally}, | |
5249 @code{reftex-toc-split-windows-horizontally-fraction}. | |
5250 @item | |
5251 It is possible to specify a function which verifies an index match | |
5252 during global indexing. See new option @code{reftex-index-verify-function}. | |
5253 @item | |
5254 The macros which input a file in LaTeX (like \input, \include) can | |
5255 be configured. See new option @code{reftex-include-file-commands}. | |
5256 @item | |
5257 The macros which specify the bibliography file (like \bibliography) can | |
5258 be configured. See new option @code{reftex-bibliography-commands}. | |
5259 @item | |
5260 The regular expression used to search for the \bibliography macro has | |
5261 been relaxed to allow for @samp{@{\bibliography@{...@}@}} needed by | |
5262 chapterbib. | |
5263 @item | |
5264 Small bug fixes. | |
5265 @end itemize | |
5266 | |
5267 @noindent @b{Version 4.15} | |
5268 @itemize @bullet | |
5269 @item | |
5270 Fixed bug with parsing of BibTeX files, when fields contain quotes or | |
5271 unmatched parenthesis. | |
5272 @item | |
5273 Small bug fixes. | |
5274 @item | |
5275 Improved interaction with Emacs LaTeX mode. | |
5276 @end itemize | |
5277 | |
5278 @noindent @b{Version 4.12} | |
5279 @itemize @bullet | |
5280 @item | |
5281 Support for @file{bibentry} citation style. | |
5282 @end itemize | |
5283 | |
5284 @noindent @b{Version 4.11} | |
5285 @itemize @bullet | |
5286 @item | |
5287 Fixed bug which would parse @samp{\Section} just like @samp{\section}. | |
5288 @end itemize | |
5289 | |
5290 @noindent @b{Version 4.10} | |
5291 @itemize @bullet | |
5292 @item | |
5293 Renamed @file{reftex-vcr.el} to @file{reftex-dcr.el} because of conflict | |
5294 with @file{reftex-vars.el} on DOS machines. | |
5295 @item | |
5296 New options @code{reftex-parse-file-extension} and | |
5297 @code{reftex-index-phrase-file-extension}. | |
5298 @end itemize | |
5299 | |
5300 @noindent [.....] | |
4956 @ignore | 5301 @ignore |
4957 @noindent @b{Version 1.00} | 5302 @noindent @b{Version 4.09} |
4958 @itemize @bullet | 5303 @itemize @bullet |
4959 @item | 5304 @item |
4960 released on 7 Jan 1997. | 5305 New option @code{reftex-toc-max-level} to limit the depth of the toc. |
4961 @end itemize | 5306 New key binding @kbd{t} in the @file{*toc*} buffer to change this |
4962 | 5307 setting. |
4963 @noindent @b{Version 1.04} | 5308 @item |
4964 @itemize @bullet | 5309 RefTeX maintains an @file{Index Phrases} file in which phrases can be |
4965 @item | 5310 collected. When the document is ready, RefTeX can search all |
4966 Macros as wrappers, AMSTeX support, delayed context parsing for | 5311 these phrases and assist indexing all matches. |
4967 new labels.@refill | 5312 @item |
4968 @end itemize | 5313 The variables @code{reftex-index-macros} and |
4969 | 5314 @code{reftex-index-default-macro} have changed their syntax slightly. |
4970 @noindent @b{Version 1.05} | 5315 The @var{repeat} parameter has move from the latter to the former. |
4971 @itemize @bullet | 5316 Also calls to @code{reftex-add-index-macros} from AUCTeX style files |
4972 @item | 5317 need to be adapted. |
4973 XEmacs port. | 5318 @item |
4974 @end itemize | 5319 The variable @code{reftex-section-levels} no longer contains the |
4975 | 5320 default stuff which has been moved to a constant. |
4976 @noindent @b{Version 1.07} | 5321 @item |
4977 @itemize @bullet | 5322 Environments like theorems can be placed into the TOC by putting |
4978 @item | 5323 entries for @samp{"begin@{theorem@}"} in |
4979 @b{Ref@TeX{}} gets its own menu. | 5324 @code{reftex-setion-levels}. |
4980 @end itemize | 5325 @end itemize |
4981 | 5326 |
4982 @noindent @b{Version 1.09} | 5327 @noindent @b{Version 4.06} |
4983 @itemize @bullet | 5328 @itemize @bullet |
4984 @item | 5329 @item |
4985 Support for @code{tex-main-file}, an analogue for | 5330 @code{reftex-section-levels} can contain a function to compute the level |
4986 @code{TeX-master}.@refill | 5331 of a sectioning command. |
4987 @item | 5332 @item |
4988 MS-DOS support. | 5333 Multiple @code{thebibliography} environments recognized. |
4989 @end itemize | 5334 @end itemize |
4990 | 5335 |
4991 @noindent @b{Version 2.00} | 5336 @noindent @b{Version 4.04} |
4992 @itemize @bullet | 5337 @itemize @bullet |
4993 @item | 5338 @item |
4994 Labels can be derived from context (default for sections). | 5339 New option @code{reftex-index-default-tag} implements a default for queries. |
4995 @item | 5340 @end itemize |
4996 Configuration of label insertion and label referencing revised. | 5341 |
4997 @item | 5342 @noindent @b{Version 4.02} |
4998 Crossref fields in BibTeX database entries. | 5343 @itemize @bullet |
4999 @item | 5344 @item |
5000 @code{reftex-toc} introduced (thanks to Stephen Eglen). | 5345 macros ending in @samp{refrange} are considered to contain references. |
5001 @end itemize | 5346 @item |
5002 | 5347 Index entries made with @code{reftex-index-selection-or-word} in TeX |
5003 @noindent @b{Version 2.03} | 5348 math mode automatically get enclosing @samp{$} to preserve math mode. See |
5004 @itemize @bullet | 5349 new option @code{reftex-index-math-format}. Requires AUCTeX. |
5005 @item | 5350 @end itemize |
5006 @code{figure*}, @code{table*}, @code{sidewaysfigure/table} added to | 5351 |
5007 default environments.@refill | 5352 @noindent @b{Version 4.01} |
5008 @item | 5353 @itemize @bullet |
5009 @code{reftex-bibfile-ignore-list} introduced (thanks to Rory Molinari). | 5354 @item |
5010 @item | 5355 New command @code{reftex-index-globally} to index a word in many |
5011 New functions @code{reftex-arg-label}, @code{reftex-arg-ref}, | 5356 places in the document. Also available from the index buffer with |
5012 @code{reftex-arg-cite}.@refill | 5357 @kbd{&}. |
5013 @item | 5358 @item |
5014 Emacs/XEmacs compatibility reworked. XEmacs 19.15 now is | 5359 The first item in a @code{reftex-label-alist} entry may now also be a parser |
5015 required.@refill | 5360 function to do non-standard parsing. |
5016 @item | 5361 @item |
5017 @code{reftex-add-to-label-alist} (to be called from AUCTeX style | 5362 @code{reftex-auto-view-crossref} no longer interferes with |
5018 files).@refill | 5363 @code{pop-up-frames} (patch from Stefan Monnier). |
5019 @item | 5364 @end itemize |
5020 Finding context with a hook function. | 5365 |
5021 @item | 5366 @noindent @b{Version 4.00} |
5022 Sorting BibTeX entries (new variable: | 5367 @itemize @bullet |
5023 @code{reftex-sort-bibtex-matches}). | 5368 @item |
5024 @end itemize | 5369 RefTeX has been split into several smaller files which are autoloaded on |
5025 | 5370 demand. |
5026 @noindent @b{Version 2.05} | 5371 @item |
5027 @itemize @bullet | 5372 Index support, along with many new options. |
5028 @item | 5373 @item |
5029 Support for @file{custom.el}. | 5374 The selection of keys for @code{\ref} and @code{\cite} now allows to |
5030 @item | 5375 select multiple items by marking entries with the @kbd{m} key. |
5031 New function @code{reftex-grep-document} (thanks to Stephen Eglen). | 5376 @item |
5032 @end itemize | 5377 Fancyref support. |
5033 | 5378 @end itemize |
5034 @noindent @b{Version 2.07} | 5379 |
5035 @itemize @bullet | 5380 @noindent @b{Version 3.43} |
5036 @item | 5381 @itemize @bullet |
5037 New functions @code{reftex-search-document}, | 5382 @item |
5038 @code{reftex-query-replace-document}. | 5383 Viewing cross-references generalized. Now works on @code{\label}, |
5039 @end itemize | 5384 @code{\ref}, @code{\cite}, @code{\bibitem}, @code{\index}, variations of |
5040 | 5385 these, and from BibTeX buffers. |
5041 @noindent @b{Version 2.11} | 5386 @item |
5042 @itemize @bullet | 5387 New option @code{reftex-view-crossref-extra}. |
5043 @item | 5388 @item |
5044 Submitted for inclusion to Emacs and XEmacs. | 5389 Support for the additional sectioning commands @code{\addchap} and |
5045 @end itemize | 5390 @code{\addsec} which are defined in the LaTeX KOMA-Script classes. |
5046 | 5391 @item |
5047 @noindent @b{Version 2.14} | 5392 Files in @code{reftex-default-bibliography} will be searched along |
5048 @itemize @bullet | 5393 @code{BIBINPUTS} path. |
5049 @item | 5394 @item |
5050 Variable @code{reftex-plug-into-AUCTeX} simplifies cooperation with | 5395 Reading a parse file now checks consistency. |
5051 AUCTeX.@refill | 5396 @end itemize |
5052 @end itemize | 5397 |
5053 | 5398 @noindent @b{Version 3.42} |
5054 @noindent @b{Version 2.17} | 5399 @itemize @bullet |
5055 @itemize @bullet | 5400 @item |
5056 @item | 5401 File search further refined. New option @code{reftex-file-extensions}. |
5057 Label prefix expands % escapes with current file name and other stuff. | 5402 @item |
5058 @item | 5403 @file{*toc*} buffer can show the file boundaries of a multifile |
5059 Citation format now with % escapes. This is not backward | 5404 document, all labels and associated context. New keys @kbd{i}, @kbd{l}, |
5060 compatible!@refill | 5405 and @kbd{c}. New options @code{reftex-toc-include-labels}, |
5061 @item | 5406 @code{reftex-toc-include-context}, |
5062 TEXINPUTS variable recognized when looking for input files. | 5407 @code{reftex-toc-include-file-boundaries}. |
5063 @item | 5408 @end itemize |
5064 Context can be the nth argument of a macro.@refill | 5409 |
5065 @item | |
5066 Searching in the select buffer is now possible (@kbd{C-s} and | |
5067 @kbd{C-r}).@refill | |
5068 @item | |
5069 Display and derive-label can use two different context methods. | |
5070 @item | |
5071 AMSmath @code{xalignat} and @code{xxalignat} added. | |
5072 @end itemize | |
5073 | |
5074 @noindent @b{Version 3.00} | |
5075 @itemize @bullet | |
5076 @item | |
5077 @b{Ref@TeX{}} should work better for very large projects: | |
5078 @item | |
5079 The new parser works without creating a master buffer. | |
5080 @item | |
5081 Rescanning can be limited to a part of a multifile document. | |
5082 @item | |
5083 Information from the parser can be stored in a file. | |
5084 @item | |
5085 @b{Ref@TeX{}} can deal with macros having a naked label as an argument. | |
5086 @item | |
5087 Macros may have white space and newlines between arguments. | |
5088 @item | |
5089 Multiple identical section headings no longer confuse | |
5090 @code{reftex-toc}.@refill | |
5091 @item | |
5092 @b{Ref@TeX{}} should work correctly in combination with buffer-altering | |
5093 packages like outline, folding, x-symbol, iso-cvt, isotex, etc.@refill | |
5094 @item | |
5095 All labeled environments discussed in @emph{The LaTeX Companion} by | |
5096 Goossens, Mittelbach & Samarin, Addison-Wesley 1994) are part of | |
5097 @b{Ref@TeX{}}'s defaults.@refill | |
5098 @end itemize | |
5099 | |
5100 @noindent @b{Version 3.03} | |
5101 @itemize @bullet | |
5102 @item | |
5103 Support for the LaTeX package @code{xr}, for inter-document | |
5104 references.@refill | |
5105 @item | |
5106 A few (minor) Mule-related changes. | |
5107 @item | |
5108 Fixed bug which could cause @emph{huge} @file{.rel} files. | |
5109 @item | |
5110 Search for input and @file{.bib} files with recursive path definitions. | |
5111 @end itemize | |
5112 | |
5113 @noindent @b{Version 3.04} | |
5114 @itemize @bullet | |
5115 @item | |
5116 Fixed BUG in the @emph{xr} support. | |
5117 @end itemize | |
5118 | |
5119 @noindent @b{Version 3.05} | |
5120 @itemize @bullet | |
5121 @item | |
5122 Compatibility code now first checks for XEmacs feature. | |
5123 @end itemize | |
5124 | |
5125 @noindent @b{Version 3.07} | |
5126 @itemize @bullet | |
5127 @item | |
5128 @code{Ref} menu improved. | |
5129 @end itemize | |
5130 | |
5131 @noindent @b{Version 3.10} | |
5132 @itemize @bullet | |
5133 @item | |
5134 Fixed a bug which made reftex 3.07 fail on [X]Emacs version 19. | |
5135 @item | |
5136 Removed unimportant code which caused OS/2 Emacs to crash. | |
5137 @item | |
5138 All customization variables now accessible from menu. | |
5139 @end itemize | |
5140 | |
5141 @noindent @b{Version 3.11} | |
5142 @itemize @bullet | |
5143 @item | |
5144 Fixed bug which led to naked label in (e.g.) footnotes. | |
5145 @item | |
5146 Added scroll-other-window functions to RefTeX-Select. | |
5147 @end itemize | |
5148 | |
5149 @noindent @b{Version 3.12} | |
5150 @itemize @bullet | |
5151 @item | |
5152 There are 3 new keymaps for customization: @code{reftex-toc-map}, | |
5153 @code{reftex-select-label-map}, @code{reftex-select-bib-map}. | |
5154 @item | |
5155 Refontification uses more standard font-lock stuff. | |
5156 @item | |
5157 When no BibTeX database files are specified, citations can also use | |
5158 @code{\bibitem} entries from a @code{thebibliography} environment.@refill | |
5159 @end itemize | |
5160 | |
5161 @noindent @b{Version 3.14} | |
5162 @itemize @bullet | |
5163 @item | |
5164 Selection buffers can be kept between selections: this is faster. | |
5165 See new variable @code{reftex-use-multiple-selection-buffers}.@refill | |
5166 @item | |
5167 Prefix interpretation of reftex-view-crossref changed. | |
5168 @item | |
5169 Support for the @code{varioref} package (@kbd{v} key in selection | |
5170 buffer).@refill | |
5171 @end itemize | |
5172 | |
5173 @noindent @b{Version 3.16} | |
5174 @itemize @bullet | |
5175 @item | |
5176 New hooks @code{reftex-format-label-function}, | |
5177 @code{reftex-format-ref-function}, @code{reftex-format-cite-function}.@refill | |
5178 @item | |
5179 TeXInfo documentation completed. | |
5180 @item | |
5181 Some restrictions in Label inserting and referencing removed. | |
5182 @item | |
5183 New variable @code{reftex-default-bibliography}. | |
5184 @end itemize | |
5185 | |
5186 @noindent @b{Version 3.17} | |
5187 @itemize @bullet | |
5188 @item | |
5189 Additional bindings in selection and @file{*toc*} buffers. @kbd{g} | |
5190 redefined. | |
5191 @item | |
5192 New command @code{reftex-save-all-document-buffers}. | |
5193 @item | |
5194 Magic word matching made more intelligent. | |
5195 @item | |
5196 Selection process can switch to completion (with @key{TAB}). | |
5197 @item | |
5198 @code{\appendix} is now recognized and influences section numbering. | |
5199 @item | |
5200 File commentary shortened considerably (use Info documentation). | |
5201 @item | |
5202 New option @code{reftex-no-include-regexps} to skip some include files. | |
5203 @item | |
5204 New option @code{reftex-revisit-to-follow}. | |
5205 @end itemize | |
5206 | |
5207 @noindent @b{Version 3.18} | |
5208 @itemize @bullet | |
5209 @item | |
5210 The selection now uses a recursive edit, much like minibuffer input. | |
5211 This removes all restrictions during selection. E.g. you can now | |
5212 switch buffers at will, use the mouse etc.@refill | |
5213 @item | |
5214 New option @code{reftex-highlight-selection}. | |
5215 @item | |
5216 @kbd{mouse-2} can be used to select in selection and @file{*toc*} | |
5217 buffers.@refill | |
5218 @item | |
5219 Fixed some problems regarding the interaction with VIPER mode. | |
5220 @item | |
5221 Follow-mode is now only used after point motion. | |
5222 @item | |
5223 @b{Ref@TeX{}} now finally does not fontify temporary files anymore. | |
5224 @end itemize | |
5225 | |
5226 @noindent @b{Version 3.19} | |
5227 @itemize @bullet | |
5228 @item | |
5229 Fixed bug with AUCTeX @code{TeX-master}. | |
5230 @end itemize | |
5231 | |
5232 @noindent @b{Version 3.21} | |
5233 @itemize @bullet | |
5234 @item | |
5235 New options for all faces used by @b{Ref@TeX{}}. They're in the | |
5236 customization group @code{reftex-fontification-configurations}.@refill | |
5237 @end itemize | |
5238 | |
5239 @noindent @b{Version 3.22} | |
5240 @itemize @bullet | |
5241 @item | |
5242 Fixed bug with empty context strings. | |
5243 @item | |
5244 @code{reftex-mouse-view-crossref} is now bound by default at | |
5245 @kbd{S-mouse-2}.@refill | |
5246 @end itemize | |
5247 | |
5248 @noindent @b{Version 3.23} | |
5249 @itemize @bullet | |
5250 @item | |
5251 Parse files @file{MASTER.rel} made compatible between Emacs and XEmacs. | |
5252 @item | |
5253 @code{kill-emacs-hook} and @code{kill-buffer-hook} now write the parse | |
5254 file. | |
5255 @item | |
5256 The cursor inside a @code{\ref} or @code{\cite} macro can now trigger | |
5257 automatic display of crossref information in the echo area. See | |
5258 variable @code{reftex-auto-view-crossref}. | |
5259 @item | |
5260 AUCTeX interface updates: | |
5261 @itemize @minus | |
5262 @item | |
5263 AUCTeX 9.9c and later notifies @b{Ref@TeX{}} about new sections. | |
5264 @item | |
5265 @b{Ref@TeX{}} notifies AUCTeX about new labels. | |
5266 @item | |
5267 @code{TeX-arg-ref} no longer used (introduction was unnecessary). | |
5268 @item | |
5269 @code{reftex-arg-label} and @code{reftex-arg-cite} fixed up. | |
5270 @item | |
5271 Settings added to @b{Ref@TeX{}} via style files remain local. | |
5272 @end itemize | |
5273 @item | |
5274 Fixed bug with @code{reftex-citation} in non-latex buffers. | |
5275 @item | |
5276 Fixed bug with syntax table and context refontification. | |
5277 @item | |
5278 Safety-net for name change of @code{font-lock-reference-face}. | |
5279 @end itemize | |
5280 | |
5281 @noindent @b{Version 3.24} | |
5282 @itemize @bullet | |
5283 @item | |
5284 New option @code{reftex-revisit-to-echo}. | |
5285 @item | |
5286 Interface with X-Symbol (>=2.6) is now complete and stable. | |
5287 @item | |
5288 Adapted to new outline, which uses overlays. | |
5289 @item | |
5290 File names in @code{\bibliography} may now have the @code{.bib} | |
5291 extension.@refill | |
5292 @item | |
5293 Fixed Bug with parsing "single file" from master file buffer. | |
5294 @end itemize | |
5295 | |
5296 @noindent @b{Version 3.25} | |
5297 @itemize @bullet | |
5298 @item | |
5299 Echoing of citation info caches the info for displayed entries. | |
5300 New option @code{reftex-cache-cite-echo}.@refill | |
5301 @item | |
5302 @kbd{M-x reftex-reset-mode} now also removes the file with parsing | |
5303 info.@refill | |
5304 @item | |
5305 Default of @code{reftex-revisit-to-follow} changed to nil. | |
5306 @end itemize | |
5307 | |
5308 @noindent @b{Version 3.26} | |
5309 @itemize @bullet | |
5310 @item | |
5311 [X]Emacs 19 no longer supported. Use 3.22 for Emacs 19. | |
5312 @item | |
5313 New hooks @code{reftex-translate-to-ascii-function}, | |
5314 @code{reftex-string-to-label-function}.@refill | |
5315 @item | |
5316 Made sure automatic crossref display will not visit/scan files. | |
5317 @end itemize | |
5318 | |
5319 @noindent @b{Version 3.27} | |
5320 @itemize @bullet | |
5321 @item | |
5322 Macros can define @emph{neutral} labels, just like @code{\label} | |
5323 itself.@refill | |
5324 @item | |
5325 New option @code{reftex-allow-detached-macro-args}, default @code{nil}! | |
5326 @end itemize | |
5327 | |
5328 @noindent @b{Version 3.28} | |
5329 @itemize @bullet | |
5330 @item | |
5331 Auto view crossref for XEmacs uses @code{post-command-hook} to restart the | |
5332 timer, since itimer restart is not reliable.@refill | |
5333 @item | |
5334 Option @code{reftex-bibfile-ignore-list} renamed to @code{-regexps}. | |
5335 @item | |
5336 Expansion of recursive tex and bib path rewritten. | |
5337 @item | |
5338 Fixed problem where @b{Ref@TeX{}} did not scan unsaved buffers. | |
5339 @item | |
5340 Fixed bug with section numbering after *-red sections. | |
5341 @end itemize | |
5342 | |
5343 @noindent @b{Version 3.30} | |
5344 @itemize @bullet | |
5345 @item | |
5346 In @code{reftex-citation}, the regular expression used to scan BibTeX | |
5347 files can be specified using completion on known citation keys. | |
5348 @item | |
5349 New keys @kbd{a} and @kbd{A} in BibTeX selection process to cite @emph{all} | |
5350 entries. | |
5351 @item | |
5352 New command @code{reftex-renumber-simple-labels} to renumber simple | |
5353 labels like @samp{eq:13} sequentially through a document. | |
5354 @end itemize | |
5355 @noindent @b{Version 3.33} | |
5356 @itemize @bullet | |
5357 @item | |
5358 Multiple selection buffers are now hidden buffers (they start with a | |
5359 SPACE). | |
5360 @item | |
5361 Fixed bug with file search when TEXINPUTS environment variable is empty. | |
5362 @end itemize | |
5363 @noindent @b{Version 3.34} | |
5364 @itemize @bullet | |
5365 @item | |
5366 Additional flag in @code{reftex-derive-label-parameters} do make only | |
5367 lowercase labels (default @code{t}). | |
5368 @item | |
5369 All @file{.rel} files have a final newline to avoid queries. | |
5370 @item | |
5371 Single byte representations of accented European letters (ISO-8859-1) | |
5372 are now legal in labels. | |
5373 @end itemize | |
5374 @noindent @b{Version 3.35} | |
5375 @itemize @bullet | |
5376 @item | |
5377 ISO 8859 Latin-1 chars are converted to ASCII to derive better labels. | |
5378 This takes back the related changes in 3.34 for safety reasons.@refill | |
5379 @end itemize | |
5380 @noindent @b{Version 3.36} | |
5381 @itemize @bullet | |
5382 @item | |
5383 New value @code{window} for option @code{reftex-auto-view-crossref}. | |
5384 @end itemize | |
5385 @noindent @b{Version 3.38} | |
5386 @itemize @bullet | |
5387 @item | |
5388 @code{reftex-view-crossref} no longer moves to find a macro. Point has | |
5389 to be on the macro argument. | |
5390 @end itemize | |
5391 @noindent @b{Version 3.41} | 5410 @noindent @b{Version 3.41} |
5392 @itemize @bullet | 5411 @itemize @bullet |
5393 @item | 5412 @item |
5394 New options @code{reftex-texpath-environment-variables}, | 5413 New options @code{reftex-texpath-environment-variables}, |
5395 @code{reftex-use-external-file-finders}, | 5414 @code{reftex-use-external-file-finders}, |
5397 @code{reftex-search-unrecursed-path-first}. | 5416 @code{reftex-search-unrecursed-path-first}. |
5398 @item | 5417 @item |
5399 @emph{kpathsearch} support. See new options and | 5418 @emph{kpathsearch} support. See new options and |
5400 @code{reftex-bibpath-environment-variables}. | 5419 @code{reftex-bibpath-environment-variables}. |
5401 @end itemize | 5420 @end itemize |
5402 @noindent @b{Version 3.42} | 5421 |
5403 @itemize @bullet | 5422 @noindent @b{Version 3.38} |
5404 @item | 5423 @itemize @bullet |
5405 File search further refined. New option @code{reftex-file-extensions}. | 5424 @item |
5406 @item | 5425 @code{reftex-view-crossref} no longer moves to find a macro. Point has |
5407 @file{*toc*} buffer can show the file boundaries of a multifile | 5426 to be on the macro argument. |
5408 document, all labels and associated context. New keys @kbd{i}, @kbd{l}, | 5427 @end itemize |
5409 and @kbd{c}. New options @code{reftex-toc-include-labels}, | 5428 |
5410 @code{reftex-toc-include-context}, | 5429 @noindent @b{Version 3.36} |
5411 @code{reftex-toc-include-file-boundaries}. @refill | 5430 @itemize @bullet |
5412 @end itemize | 5431 @item |
5413 @noindent @b{Version 3.43} | 5432 New value @code{window} for option @code{reftex-auto-view-crossref}. |
5414 @itemize @bullet | 5433 @end itemize |
5415 @item | 5434 |
5416 Viewing cross-references generalized. Now works on @code{\label}, | 5435 @noindent @b{Version 3.35} |
5417 @code{\ref}, @code{\cite}, @code{\bibitem}, @code{\index}, variations of | 5436 @itemize @bullet |
5418 these, and from BibTeX buffers.@refill | 5437 @item |
5419 @item | 5438 ISO 8859 Latin-1 chars are converted to ASCII to derive better labels. |
5420 New option @code{reftex-view-crossref-extra}.@refill | 5439 This takes back the related changes in 3.34 for safety reasons. |
5421 @item | 5440 @end itemize |
5422 Support for the additional sectioning commands @code{\addchap} and | 5441 |
5423 @code{\addsec} which are defined in the LaTeX KOMA-Script classes.@refill | 5442 @noindent @b{Version 3.34} |
5424 @item | 5443 @itemize @bullet |
5425 Files in @code{reftex-default-bibliography} will be searched along | 5444 @item |
5426 @code{BIBINPUTS} path.@refill | 5445 Additional flag in @code{reftex-derive-label-parameters} do make only |
5427 @item | 5446 lowercase labels (default @code{t}). |
5428 Reading a parse file now checks consistency. | 5447 @item |
5429 @end itemize | 5448 All @file{.rel} files have a final newline to avoid queries. |
5430 @noindent @b{Version 4.00} | 5449 @item |
5431 @itemize @bullet | 5450 Single byte representations of accented European letters (ISO-8859-1) |
5432 @item | 5451 are now legal in labels. |
5433 RefTeX has been split into several smaller files which are autoloaded on | 5452 @end itemize |
5434 demand. | 5453 |
5435 @item | 5454 @noindent @b{Version 3.33} |
5436 Index support, along with many new options. | 5455 @itemize @bullet |
5437 @item | 5456 @item |
5438 The selection of keys for @code{\ref} and @code{\cite} now allows to | 5457 Multiple selection buffers are now hidden buffers (they start with a |
5439 select multiple items by marking entries with the @kbd{m} key. | 5458 SPACE). |
5440 @item | 5459 @item |
5441 Fancyref support. | 5460 Fixed bug with file search when TEXINPUTS environment variable is empty. |
5442 @end itemize | 5461 @end itemize |
5443 @noindent @b{Version 4.01} | 5462 |
5444 @itemize @bullet | 5463 @noindent @b{Version 3.30} |
5445 @item | 5464 @itemize @bullet |
5446 New command @code{reftex-index-globally} to index a word in many | 5465 @item |
5447 places in the document. Also available from the index buffer with | 5466 In @code{reftex-citation}, the regular expression used to scan BibTeX |
5448 @kbd{&}. | 5467 files can be specified using completion on known citation keys. |
5449 @item | 5468 @item |
5450 The first item in a @code{reftex-label-alist} entry may now also be a parser | 5469 New keys @kbd{a} and @kbd{A} in BibTeX selection process to cite @emph{all} |
5451 function to do non-standard parsing. | 5470 entries. |
5452 @item | 5471 @item |
5453 @code{reftex-auto-view-crossref} no longer interferes with | 5472 New command @code{reftex-renumber-simple-labels} to renumber simple |
5454 @code{pop-up-frames} (patch from Stefan Monnier). | 5473 labels like @samp{eq:13} sequentially through a document. |
5455 @end itemize | 5474 @end itemize |
5456 @noindent @b{Version 4.02} | 5475 |
5457 @itemize @bullet | 5476 @noindent @b{Version 3.28} |
5458 @item | 5477 @itemize @bullet |
5459 macros ending in @samp{refrange} are considered to contain references. | 5478 @item |
5460 @item | 5479 Auto view crossref for XEmacs uses @code{post-command-hook} to restart the |
5461 Index entries made with @code{reftex-index-selection-or-word} in TeX | 5480 timer, since itimer restart is not reliable. |
5462 math mode automatically get enclosing @samp{$} to preserve math mode. See | 5481 @item |
5463 new option @code{reftex-index-math-format}. Requires AUCTeX. | 5482 Option @code{reftex-bibfile-ignore-list} renamed to @code{-regexps}. |
5464 @end itemize | 5483 @item |
5465 @noindent @b{Version 4.04} | 5484 Expansion of recursive tex and bib path rewritten. |
5466 @itemize @bullet | 5485 @item |
5467 @item | 5486 Fixed problem where @b{Ref@TeX{}} did not scan unsaved buffers. |
5468 New option @code{reftex-index-default-tag} implements a default for queries. | 5487 @item |
5469 @end itemize | 5488 Fixed bug with section numbering after *-red sections. |
5470 @noindent @b{Version 4.06} | 5489 @end itemize |
5471 @itemize @bullet | 5490 |
5472 @item | 5491 @noindent @b{Version 3.27} |
5473 @code{reftex-section-levels} can contain a function to compute the level | 5492 @itemize @bullet |
5474 of a sectioning command. | 5493 @item |
5475 @item | 5494 Macros can define @emph{neutral} labels, just like @code{\label} |
5476 Multiple @code{thebibliography} environments recognized. | 5495 itself. |
5477 @end itemize | 5496 @item |
5478 @noindent @b{Version 4.09} | 5497 New option @code{reftex-allow-detached-macro-args}, default @code{nil}! |
5479 @itemize @bullet | 5498 @end itemize |
5480 @item | 5499 |
5481 New option @code{reftex-toc-max-level} to limit the depth of the toc. | 5500 @noindent @b{Version 3.26} |
5482 New key binding @kbd{t} in the @file{*toc*} buffer to change this | 5501 @itemize @bullet |
5483 setting.@refill | 5502 @item |
5484 @item | 5503 [X]Emacs 19 no longer supported. Use 3.22 for Emacs 19. |
5485 RefTeX maintains an @file{Index Phrases} file in which phrases can be | 5504 @item |
5486 collected. When the document is ready, RefTeX can search all | 5505 New hooks @code{reftex-translate-to-ascii-function}, |
5487 these phrases and assist indexing all matches.@refill | 5506 @code{reftex-string-to-label-function}. |
5488 @item | 5507 @item |
5489 The variables @code{reftex-index-macros} and | 5508 Made sure automatic crossref display will not visit/scan files. |
5490 @code{reftex-index-default-macro} have changed their syntax slightly. | 5509 @end itemize |
5491 The @var{repeat} parameter has move from the latter to the former. | 5510 |
5492 Also calls to @code{reftex-add-index-macros} from AUCTeX style files | 5511 @noindent @b{Version 3.25} |
5493 need to be adapted.@refill | 5512 @itemize @bullet |
5494 @item | 5513 @item |
5495 The variable @code{reftex-section-levels} no longer contains the | 5514 Echoing of citation info caches the info for displayed entries. |
5496 default stuff which has been moved to a constant.@refill | 5515 New option @code{reftex-cache-cite-echo}. |
5497 @item | 5516 @item |
5498 Environments like theorems can be placed into the TOC by putting | 5517 @kbd{M-x reftex-reset-mode} now also removes the file with parsing |
5499 entries for @samp{"begin@{theorem@}"} in | 5518 info. |
5500 @code{reftex-setion-levels}.@refill | 5519 @item |
5501 @end itemize | 5520 Default of @code{reftex-revisit-to-follow} changed to nil. |
5502 @noindent @b{Version 4.10} | 5521 @end itemize |
5503 @itemize @bullet | 5522 |
5504 @item | 5523 @noindent @b{Version 3.24} |
5505 Renamed @file{reftex-vcr.el} to @file{reftex-dcr.el} because of conflict | 5524 @itemize @bullet |
5506 with @file{reftex-vars.el} on DOS machines. | 5525 @item |
5507 @item | 5526 New option @code{reftex-revisit-to-echo}. |
5508 New options @code{reftex-parse-file-extension} and | 5527 @item |
5509 @code{reftex-index-phrase-file-extension}. | 5528 Interface with X-Symbol (>=2.6) is now complete and stable. |
5510 @end itemize | 5529 @item |
5511 @noindent @b{Version 4.11} | 5530 Adapted to new outline, which uses overlays. |
5512 @itemize @bullet | 5531 @item |
5513 @item | 5532 File names in @code{\bibliography} may now have the @code{.bib} |
5514 Fixed bug which would parse @samp{\Section} just like @samp{\section}. | 5533 extension. |
5515 @end itemize | 5534 @item |
5516 @noindent @b{Version 4.12} | 5535 Fixed Bug with parsing "single file" from master file buffer. |
5517 @itemize @bullet | 5536 @end itemize |
5518 @item | 5537 |
5519 Support for @file{bibentry} citation style. | 5538 @noindent @b{Version 3.23} |
5520 @end itemize | 5539 @itemize @bullet |
5521 @noindent @b{Version 4.15} | 5540 @item |
5522 @itemize @bullet | 5541 Parse files @file{MASTER.rel} made compatible between Emacs and XEmacs. |
5523 @item | 5542 @item |
5524 Fixed bug with parsing of BibTeX files, when fields contain quotes or | 5543 @code{kill-emacs-hook} and @code{kill-buffer-hook} now write the parse |
5525 unmatched parenthesis. | 5544 file. |
5526 @item | 5545 @item |
5527 Small bug fixes. | 5546 The cursor inside a @code{\ref} or @code{\cite} macro can now trigger |
5528 @item | 5547 automatic display of crossref information in the echo area. See |
5529 Improved interaction with Emacs LaTeX mode. | 5548 variable @code{reftex-auto-view-crossref}. |
5549 @item | |
5550 AUCTeX interface updates: | |
5551 @itemize @minus | |
5552 @item | |
5553 AUCTeX 9.9c and later notifies @b{Ref@TeX{}} about new sections. | |
5554 @item | |
5555 @b{Ref@TeX{}} notifies AUCTeX about new labels. | |
5556 @item | |
5557 @code{TeX-arg-ref} no longer used (introduction was unnecessary). | |
5558 @item | |
5559 @code{reftex-arg-label} and @code{reftex-arg-cite} fixed up. | |
5560 @item | |
5561 Settings added to @b{Ref@TeX{}} via style files remain local. | |
5562 @end itemize | |
5563 @item | |
5564 Fixed bug with @code{reftex-citation} in non-latex buffers. | |
5565 @item | |
5566 Fixed bug with syntax table and context refontification. | |
5567 @item | |
5568 Safety-net for name change of @code{font-lock-reference-face}. | |
5569 @end itemize | |
5570 | |
5571 @noindent @b{Version 3.22} | |
5572 @itemize @bullet | |
5573 @item | |
5574 Fixed bug with empty context strings. | |
5575 @item | |
5576 @code{reftex-mouse-view-crossref} is now bound by default at | |
5577 @kbd{S-mouse-2}. | |
5578 @end itemize | |
5579 | |
5580 @noindent @b{Version 3.21} | |
5581 @itemize @bullet | |
5582 @item | |
5583 New options for all faces used by @b{Ref@TeX{}}. They're in the | |
5584 customization group @code{reftex-fontification-configurations}. | |
5585 @end itemize | |
5586 | |
5587 @noindent @b{Version 3.19} | |
5588 @itemize @bullet | |
5589 @item | |
5590 Fixed bug with AUCTeX @code{TeX-master}. | |
5591 @end itemize | |
5592 | |
5593 @noindent @b{Version 3.18} | |
5594 @itemize @bullet | |
5595 @item | |
5596 The selection now uses a recursive edit, much like minibuffer input. | |
5597 This removes all restrictions during selection. E.g. you can now | |
5598 switch buffers at will, use the mouse etc. | |
5599 @item | |
5600 New option @code{reftex-highlight-selection}. | |
5601 @item | |
5602 @kbd{mouse-2} can be used to select in selection and @file{*toc*} | |
5603 buffers. | |
5604 @item | |
5605 Fixed some problems regarding the interaction with VIPER mode. | |
5606 @item | |
5607 Follow-mode is now only used after point motion. | |
5608 @item | |
5609 @b{Ref@TeX{}} now finally does not fontify temporary files anymore. | |
5610 @end itemize | |
5611 | |
5612 @noindent @b{Version 3.17} | |
5613 @itemize @bullet | |
5614 @item | |
5615 Additional bindings in selection and @file{*toc*} buffers. @kbd{g} | |
5616 redefined. | |
5617 @item | |
5618 New command @code{reftex-save-all-document-buffers}. | |
5619 @item | |
5620 Magic word matching made more intelligent. | |
5621 @item | |
5622 Selection process can switch to completion (with @key{TAB}). | |
5623 @item | |
5624 @code{\appendix} is now recognized and influences section numbering. | |
5625 @item | |
5626 File commentary shortened considerably (use Info documentation). | |
5627 @item | |
5628 New option @code{reftex-no-include-regexps} to skip some include files. | |
5629 @item | |
5630 New option @code{reftex-revisit-to-follow}. | |
5631 @end itemize | |
5632 | |
5633 @noindent @b{Version 3.16} | |
5634 @itemize @bullet | |
5635 @item | |
5636 New hooks @code{reftex-format-label-function}, | |
5637 @code{reftex-format-ref-function}, @code{reftex-format-cite-function}. | |
5638 @item | |
5639 TeXInfo documentation completed. | |
5640 @item | |
5641 Some restrictions in Label inserting and referencing removed. | |
5642 @item | |
5643 New variable @code{reftex-default-bibliography}. | |
5644 @end itemize | |
5645 | |
5646 @noindent @b{Version 3.14} | |
5647 @itemize @bullet | |
5648 @item | |
5649 Selection buffers can be kept between selections: this is faster. | |
5650 See new variable @code{reftex-use-multiple-selection-buffers}. | |
5651 @item | |
5652 Prefix interpretation of reftex-view-crossref changed. | |
5653 @item | |
5654 Support for the @code{varioref} package (@kbd{v} key in selection | |
5655 buffer). | |
5656 @end itemize | |
5657 | |
5658 @noindent @b{Version 3.12} | |
5659 @itemize @bullet | |
5660 @item | |
5661 There are 3 new keymaps for customization: @code{reftex-toc-map}, | |
5662 @code{reftex-select-label-map}, @code{reftex-select-bib-map}. | |
5663 @item | |
5664 Refontification uses more standard font-lock stuff. | |
5665 @item | |
5666 When no BibTeX database files are specified, citations can also use | |
5667 @code{\bibitem} entries from a @code{thebibliography} environment. | |
5668 @end itemize | |
5669 | |
5670 @noindent @b{Version 3.11} | |
5671 @itemize @bullet | |
5672 @item | |
5673 Fixed bug which led to naked label in (e.g.) footnotes. | |
5674 @item | |
5675 Added scroll-other-window functions to RefTeX-Select. | |
5676 @end itemize | |
5677 | |
5678 @noindent @b{Version 3.10} | |
5679 @itemize @bullet | |
5680 @item | |
5681 Fixed a bug which made reftex 3.07 fail on [X]Emacs version 19. | |
5682 @item | |
5683 Removed unimportant code which caused OS/2 Emacs to crash. | |
5684 @item | |
5685 All customization variables now accessible from menu. | |
5686 @end itemize | |
5687 | |
5688 @noindent @b{Version 3.07} | |
5689 @itemize @bullet | |
5690 @item | |
5691 @code{Ref} menu improved. | |
5692 @end itemize | |
5693 | |
5694 @noindent @b{Version 3.05} | |
5695 @itemize @bullet | |
5696 @item | |
5697 Compatibility code now first checks for XEmacs feature. | |
5698 @end itemize | |
5699 | |
5700 @noindent @b{Version 3.04} | |
5701 @itemize @bullet | |
5702 @item | |
5703 Fixed BUG in the @emph{xr} support. | |
5704 @end itemize | |
5705 | |
5706 @noindent @b{Version 3.03} | |
5707 @itemize @bullet | |
5708 @item | |
5709 Support for the LaTeX package @code{xr}, for inter-document | |
5710 references. | |
5711 @item | |
5712 A few (minor) Mule-related changes. | |
5713 @item | |
5714 Fixed bug which could cause @emph{huge} @file{.rel} files. | |
5715 @item | |
5716 Search for input and @file{.bib} files with recursive path definitions. | |
5717 @end itemize | |
5718 | |
5719 @noindent @b{Version 3.00} | |
5720 @itemize @bullet | |
5721 @item | |
5722 @b{Ref@TeX{}} should work better for very large projects: | |
5723 @item | |
5724 The new parser works without creating a master buffer. | |
5725 @item | |
5726 Rescanning can be limited to a part of a multifile document. | |
5727 @item | |
5728 Information from the parser can be stored in a file. | |
5729 @item | |
5730 @b{Ref@TeX{}} can deal with macros having a naked label as an argument. | |
5731 @item | |
5732 Macros may have white space and newlines between arguments. | |
5733 @item | |
5734 Multiple identical section headings no longer confuse | |
5735 @code{reftex-toc}. | |
5736 @item | |
5737 @b{Ref@TeX{}} should work correctly in combination with buffer-altering | |
5738 packages like outline, folding, x-symbol, iso-cvt, isotex, etc. | |
5739 @item | |
5740 All labeled environments discussed in @emph{The LaTeX Companion} by | |
5741 Goossens, Mittelbach & Samarin, Addison-Wesley 1994) are part of | |
5742 @b{Ref@TeX{}}'s defaults. | |
5743 @end itemize | |
5744 | |
5745 @noindent @b{Version 2.17} | |
5746 @itemize @bullet | |
5747 @item | |
5748 Label prefix expands % escapes with current file name and other stuff. | |
5749 @item | |
5750 Citation format now with % escapes. This is not backward | |
5751 compatible! | |
5752 @item | |
5753 TEXINPUTS variable recognized when looking for input files. | |
5754 @item | |
5755 Context can be the nth argument of a macro. | |
5756 @item | |
5757 Searching in the select buffer is now possible (@kbd{C-s} and | |
5758 @kbd{C-r}). | |
5759 @item | |
5760 Display and derive-label can use two different context methods. | |
5761 @item | |
5762 AMSmath @code{xalignat} and @code{xxalignat} added. | |
5763 @end itemize | |
5764 | |
5765 @noindent @b{Version 2.14} | |
5766 @itemize @bullet | |
5767 @item | |
5768 Variable @code{reftex-plug-into-AUCTeX} simplifies cooperation with | |
5769 AUCTeX. | |
5770 @end itemize | |
5771 | |
5772 @noindent @b{Version 2.11} | |
5773 @itemize @bullet | |
5774 @item | |
5775 Submitted for inclusion to Emacs and XEmacs. | |
5776 @end itemize | |
5777 | |
5778 @noindent @b{Version 2.07} | |
5779 @itemize @bullet | |
5780 @item | |
5781 New functions @code{reftex-search-document}, | |
5782 @code{reftex-query-replace-document}. | |
5783 @end itemize | |
5784 | |
5785 @noindent @b{Version 2.05} | |
5786 @itemize @bullet | |
5787 @item | |
5788 Support for @file{custom.el}. | |
5789 @item | |
5790 New function @code{reftex-grep-document} (thanks to Stephen Eglen). | |
5791 @end itemize | |
5792 | |
5793 @noindent @b{Version 2.03} | |
5794 @itemize @bullet | |
5795 @item | |
5796 @code{figure*}, @code{table*}, @code{sidewaysfigure/table} added to | |
5797 default environments. | |
5798 @item | |
5799 @code{reftex-bibfile-ignore-list} introduced (thanks to Rory Molinari). | |
5800 @item | |
5801 New functions @code{reftex-arg-label}, @code{reftex-arg-ref}, | |
5802 @code{reftex-arg-cite}. | |
5803 @item | |
5804 Emacs/XEmacs compatibility reworked. XEmacs 19.15 now is | |
5805 required. | |
5806 @item | |
5807 @code{reftex-add-to-label-alist} (to be called from AUCTeX style | |
5808 files). | |
5809 @item | |
5810 Finding context with a hook function. | |
5811 @item | |
5812 Sorting BibTeX entries (new variable: | |
5813 @code{reftex-sort-bibtex-matches}). | |
5814 @end itemize | |
5815 | |
5816 @noindent @b{Version 2.00} | |
5817 @itemize @bullet | |
5818 @item | |
5819 Labels can be derived from context (default for sections). | |
5820 @item | |
5821 Configuration of label insertion and label referencing revised. | |
5822 @item | |
5823 Crossref fields in BibTeX database entries. | |
5824 @item | |
5825 @code{reftex-toc} introduced (thanks to Stephen Eglen). | |
5826 @end itemize | |
5827 | |
5828 @noindent @b{Version 1.09} | |
5829 @itemize @bullet | |
5830 @item | |
5831 Support for @code{tex-main-file}, an analogue for | |
5832 @code{TeX-master}. | |
5833 @item | |
5834 MS-DOS support. | |
5835 @end itemize | |
5836 | |
5837 @noindent @b{Version 1.07} | |
5838 @itemize @bullet | |
5839 @item | |
5840 @b{Ref@TeX{}} gets its own menu. | |
5841 @end itemize | |
5842 | |
5843 @noindent @b{Version 1.05} | |
5844 @itemize @bullet | |
5845 @item | |
5846 XEmacs port. | |
5847 @end itemize | |
5848 | |
5849 @noindent @b{Version 1.04} | |
5850 @itemize @bullet | |
5851 @item | |
5852 Macros as wrappers, AMSTeX support, delayed context parsing for | |
5853 new labels. | |
5530 @end itemize | 5854 @end itemize |
5531 @end ignore | 5855 @end ignore |
5532 @noindent @b{Version 4.17} | 5856 |
5533 @itemize @bullet | 5857 @noindent @b{Version 1.00} |
5534 @item | 5858 @itemize @bullet |
5535 The toc window can be split off horizontally. See new options | 5859 @item |
5536 @code{reftex-toc-split-windows-horizontally}, | 5860 released on 7 Jan 1997. |
5537 @code{reftex-toc-split-windows-horizontally-fraction}. | 5861 @end itemize |
5538 @item | 5862 |
5539 It is possible to specify a function which verifies an index match | 5863 |
5540 during global indexing. See new option @code{reftex-index-verify-function}. | 5864 |
5541 @item | 5865 |
5542 The macros which input a file in LaTeX (like \input, \include) can | |
5543 be configured. See new option @code{reftex-include-file-commands}. | |
5544 @item | |
5545 The macros which specify the bibliography file (like \bibliography) can | |
5546 be configured. See new option @code{reftex-bibliography-commands}. | |
5547 @item | |
5548 The regular expression used to search for the \bibliography macro has | |
5549 been relaxed to allow for @samp{@{\bibliography@{...@}@}} needed by | |
5550 chapterbib. | |
5551 @item | |
5552 Small bug fixes. | |
5553 @end itemize | |
5554 @noindent @b{Version 4.18} | |
5555 @itemize @bullet | |
5556 @item | |
5557 @code{reftex-citation} uses the word before the cursor as a default | |
5558 search string. | |
5559 @item | |
5560 Simplified several regular expressions for speed. | |
5561 @item | |
5562 Better support for chapterbib. | |
5563 @end itemize | |
5564 @noindent @b{Version 4.19} | |
5565 @itemize @bullet | |
5566 @item | |
5567 New command `reftex-toc-recenter' (@kbd{C-c -}) which shows the current | |
5568 section in the TOC buffer without selecting the TOC window. | |
5569 @item | |
5570 Recentering happens automatically in idle time when the option | |
5571 @code{reftex-auto-recenter-toc} is turned on. | |
5572 @item | |
5573 Fixed several bugs related to automatic cursor positioning in the TOC | |
5574 buffer. | |
5575 @item | |
5576 The highlight in the TOC buffer stays when the focus moves to a | |
5577 different window. | |
5578 @item | |
5579 New command `reftex-goto-label'. | |
5580 @item | |
5581 Part numbers are no longer included in chapter numbers, and a new | |
5582 part does not reset the chapter counter. See new option | |
5583 @code{reftex-part-resets-chapter}. | |
5584 @end itemize | |
5585 | 5866 |
5586 @node Index, , , Top | 5867 @node Index, , , Top |
5587 @unnumbered Index | 5868 @unnumbered Index |
5588 @printindex cp | 5869 @printindex cp |
5589 | 5870 |