diff options
author | Tassilo Horn <tsdh@gnu.org> | 2015-01-28 10:32:50 +0100 |
---|---|---|
committer | Tassilo Horn <tsdh@gnu.org> | 2015-01-28 10:36:17 +0100 |
commit | 8a8bd38fedb89b2d04cca2419698813a22862c3b (patch) | |
tree | ce6bcc3a08d9e72fb9a6e1dc9f1c48034dd7b599 /lisp/textmodes/reftex.el | |
parent | 173ac1caac65543956ce0d72a9d6ae10b6729fa8 (diff) | |
download | emacs-8a8bd38fedb89b2d04cca2419698813a22862c3b.tar.gz emacs-8a8bd38fedb89b2d04cca2419698813a22862c3b.tar.bz2 emacs-8a8bd38fedb89b2d04cca2419698813a22862c3b.zip |
Fix issues with BibTeX entries containing ")".
* textmodes/reftex.el (reftex-syntax-table-for-bib): Give ( and )
punctuation syntax since to allow bibtex fields with values such
as {Test 1) and 2)} (bug#19205, bug#19707).
(reftex--prepare-syntax-tables): New function.
(reftex-mode): Use it.
Diffstat (limited to 'lisp/textmodes/reftex.el')
-rw-r--r-- | lisp/textmodes/reftex.el | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/lisp/textmodes/reftex.el b/lisp/textmodes/reftex.el index 160d9fb4cdf..7cf54c6d28a 100644 --- a/lisp/textmodes/reftex.el +++ b/lisp/textmodes/reftex.el @@ -106,17 +106,21 @@ (defvar reftex-syntax-table nil) (defvar reftex-syntax-table-for-bib nil) -(unless reftex-syntax-table +(defun reftex--prepare-syntax-tables () (setq reftex-syntax-table (copy-syntax-table)) (modify-syntax-entry ?\( "." reftex-syntax-table) - (modify-syntax-entry ?\) "." reftex-syntax-table)) + (modify-syntax-entry ?\) "." reftex-syntax-table) -(unless reftex-syntax-table-for-bib (setq reftex-syntax-table-for-bib (copy-syntax-table)) (modify-syntax-entry ?\' "." reftex-syntax-table-for-bib) (modify-syntax-entry ?\" "." reftex-syntax-table-for-bib) (modify-syntax-entry ?\[ "." reftex-syntax-table-for-bib) - (modify-syntax-entry ?\] "." reftex-syntax-table-for-bib)) + (modify-syntax-entry ?\] "." reftex-syntax-table-for-bib) + (modify-syntax-entry ?\( "." reftex-syntax-table-for-bib) + (modify-syntax-entry ?\) "." reftex-syntax-table-for-bib)) + +(unless (and reftex-syntax-table reftex-syntax-table-for-bib) + (reftex--prepare-syntax-tables)) ;; The following definitions are out of place, but I need them here ;; to make the compilation of reftex-mode not complain. @@ -180,15 +184,7 @@ on the menu bar. (put 'reftex-auto-recenter-toc 'initialized t)) ;; Prepare the special syntax tables. - (setq reftex-syntax-table (copy-syntax-table (syntax-table))) - (modify-syntax-entry ?\( "." reftex-syntax-table) - (modify-syntax-entry ?\) "." reftex-syntax-table) - - (setq reftex-syntax-table-for-bib (copy-syntax-table)) - (modify-syntax-entry ?\' "." reftex-syntax-table-for-bib) - (modify-syntax-entry ?\" "." reftex-syntax-table-for-bib) - (modify-syntax-entry ?\[ "." reftex-syntax-table-for-bib) - (modify-syntax-entry ?\] "." reftex-syntax-table-for-bib) + (reftex--prepare-syntax-tables) (run-hooks 'reftex-mode-hook)) ;; Mode was turned off |