]> git.eshelyaron.com Git - emacs.git/commitdiff
Updated to RefTeX 4.18
authorCarsten Dominik <dominik@science.uva.nl>
Thu, 25 Jul 2002 07:03:41 +0000 (07:03 +0000)
committerCarsten Dominik <dominik@science.uva.nl>
Thu, 25 Jul 2002 07:03:41 +0000 (07:03 +0000)
lisp/textmodes/reftex-auc.el
lisp/textmodes/reftex-cite.el
lisp/textmodes/reftex-dcr.el
lisp/textmodes/reftex-global.el
lisp/textmodes/reftex-index.el
lisp/textmodes/reftex-parse.el
lisp/textmodes/reftex-ref.el
lisp/textmodes/reftex-sel.el
lisp/textmodes/reftex-toc.el
lisp/textmodes/reftex-vars.el
lisp/textmodes/reftex.el

index 4546651da9129a150671c33ff37dc63cc6033f27..c113e165d6201fecfb32bbe5004b7bbd2cadc6a7 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
index ebcfd99182989881c0a0c9dc5b87abc7f7cbd543..39d8f26a9a61b9ec08720d7a20468ddc1318e96e 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
   (let* (re-list first-re rest-re
                  (buffer-list (if (listp buffers) buffers (list buffers)))
                  found-list entry buffer1 buffer alist
-                 key-point start-point end-point)
+                 key-point start-point end-point default)
 
     ;; Read a regexp, completing on known citation keys.
+    (setq default (regexp-quote (reftex-get-bibkey-default)))
     (setq re-list 
          (split-string 
           (completing-read 
-           "RegExp [ && RegExp...]: "
+           (concat
+            "Regex { && Regex...}: "
+            "[" default "]: ")
            (if reftex-mode
                (if (fboundp 'LaTeX-bibitem-list)
                    (LaTeX-bibitem-list)
            nil nil nil 'reftex-cite-regexp-hist)
           "[ \t]*&&[ \t]*"))
 
+    (if (or (null re-list ) (equal re-list '("")))
+       (setq re-list (list default)))
+
     (setq first-re (car re-list)    ; We'll use the first re to find things,
           rest-re  (cdr re-list))   ; the others to narrow down.
     (if (string-match "\\`[ \t]*\\'" (or first-re ""))
   ;; Parsing is not as good as for the BibTeX database stuff.
   ;; The environment should be located in file FILE.
 
-  (let* (start end buf entries re re-list file)
+  (let* (start end buf entries re re-list file default)
     (unless files
       (error "Need file name to find thebibliography environment"))
     (while (setq file (pop files))
     (unless entries
       (error "No bibitems found"))
 
-    (setq re-list (split-string 
-                  (read-string "RegExp [ && RegExp...]: "
-                               nil 'reftex-cite-regexp-hist)
-                  "[ \t]*&&[ \t]*"))
+    ;; Read a regexp, completing on known citation keys.
+    (setq default (regexp-quote (reftex-get-bibkey-default)))
+    (setq re-list 
+         (split-string 
+          (completing-read 
+           (concat
+            "Regex { && Regex...}: "
+            "[" default "]: ")
+           (if reftex-mode
+               (if (fboundp 'LaTeX-bibitem-list)
+                   (LaTeX-bibitem-list)
+                 (cdr (assoc 'bibview-cache 
+                             (symbol-value reftex-docstruct-symbol))))
+             nil)
+           nil nil nil 'reftex-cite-regexp-hist)
+          "[ \t]*&&[ \t]*"))
+
+    (if (or (null re-list ) (equal re-list '("")))
+       (setq re-list (list default)))
+
     (if (string-match "\\`[ \t]*\\'" (car re-list))
         (error "Empty regular expression"))
 
 
     entries))
 
+(defun reftex-get-bibkey-default ()
+  ;; Return the word before the cursor.  If the cursor is in a
+  ;; citation macro, return the word before the macro.
+  (let* ((macro (reftex-what-macro 1)))
+    (save-excursion
+      (if (and macro (string-match "cite" (car macro)))
+         (goto-char (cdr macro)))
+      (skip-chars-backward "^a-zA-Z0-9")
+      (reftex-this-word))))
+
 ;; Parse and format individual entries
 
 (defun reftex-get-bib-names (field entry)
index c0af53a9bc6fc07a5da9eb4d0bfc5ac0761484dc..d7419ad49ccc60d01a9815b5212d29cd0c402cc9 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 ;;
 
 ;; This file is part of GNU Emacs.
index d19b45d76de71ad4641c0a831c288c7fe8fee8c8..613a70192c257b64fe6e43899b6a242d8679a95e 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
index 5db364c371f86f1c65c136e2871a90d685df0d8d..8990c15dc7e03738a712666c14789b414d5e60a1 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
@@ -299,6 +299,10 @@ Here are all local bindings.
              "  R<" 'reftex-index-restriction-indicator ">"
              " -%-"))
   (setq truncate-lines t)
+  (when (featurep 'xemacs)
+    ;; XEmacs needs the call to make-local-hook
+    (make-local-hook 'post-command-hook)
+    (make-local-hook 'pre-command-hook))
   (make-local-variable 'reftex-last-follow-point)
   (easy-menu-add reftex-index-menu reftex-index-map)
   (add-hook 'post-command-hook 'reftex-index-post-command-hook nil t)
index 702682c9f8b21b39b6b14bf412d6c2b507101a63..c6a950da6d73a38da3157c859b7e8d421c01d9d1 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 ;;
 
 ;; This file is part of GNU Emacs.
@@ -335,7 +335,8 @@ of master file."
       (goto-char (point-min))
       (if (re-search-forward
           (concat
-           "\\(\\`\\|[\n\r]\\)[^%]*\\\\\\("
+;          "\\(\\`\\|[\n\r]\\)[^%]*\\\\\\("
+           "\\(^\\)[^%]*\\\\\\("
            (mapconcat 'identity reftex-bibliography-commands "\\|")
            "\\){[ \t]*\\([^}]+\\)") nil t)
          (setq files 
index 982062e12f99d6483f77ee6e71da817651b5402c..d3aaeb518e3425124ecbfa7d44d0a8ab334a36cf 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
@@ -646,7 +646,7 @@ When called with 2 C-u prefix args, disable magic word recognition."
              selection-buffers)
       (reftex-kill-temporary-buffers))
     ;; Add the prefixes, put together the relevant information in the form
-    ;; (LABEL TYPEKEY SEPERATOR) and return a list of those.
+    ;; (LABEL TYPEKEY SEPARATOR) and return a list of those.
     (mapcar (lambda (x)
              (if (listp x)
                  (list (concat prefix (car (car x)))
index f59e2a1e03fcec16d487214583df4d93118951bb..f888406c593b9ef366b001bd23b10685ddaa309f 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
@@ -49,6 +49,10 @@ During a selection process, these are the local bindings.
 
   (interactive)
   (kill-all-local-variables)
+  (when (featurep 'xemacs)
+    ;; XEmacs needs the call to make-local-hook
+    (make-local-hook 'pre-command-hook)
+    (make-local-hook 'post-command-hook))
   (setq major-mode 'reftex-select-label-mode
        mode-name "LSelect")
   (set (make-local-variable 'reftex-select-marked) nil)
@@ -75,6 +79,10 @@ During a selection process, these are the local bindings.
 \\{reftex-select-label-map}"
   (interactive)
   (kill-all-local-variables)
+  (when (featurep 'xemacs)
+    ;; XEmacs needs the call to make-local-hook
+    (make-local-hook 'pre-command-hook)
+    (make-local-hook 'post-command-hook))
   (setq major-mode 'reftex-select-bib-mode
        mode-name "BSelect")
   (set (make-local-variable 'reftex-select-marked) nil)
index 15685939815bc98f1a6ce9386074c51ed2413bed..c769758430c20adfe27ea81b60bc78c9b05165a0 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
@@ -62,6 +62,10 @@ Here are all local bindings.
              "  T<" 'reftex-toc-max-level-indicator ">"
              " -%-"))
   (setq truncate-lines t)
+  (when (featurep 'xemacs)
+    ;; XEmacs needs the call to make-local-hook
+    (make-local-hook 'post-command-hook)
+    (make-local-hook 'pre-command-hook))
   (make-local-variable 'reftex-last-follow-point)
   (add-hook 'post-command-hook 'reftex-toc-post-command-hook nil t)
   (add-hook 'pre-command-hook  'reftex-toc-pre-command-hook nil t)
index 05588d712e6cca52853d2234eb5b6f0eab5b0378..dca2dc95517226645f151250532860def79d7f7c 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 
 ;; This file is part of GNU Emacs.
 
index 2dca200c0ec05f817c2cdbbef86dc5e061b5f7bd..0ccaff9ead10ba4b421229a2a449832694f72270 100644 (file)
@@ -2,7 +2,7 @@
 ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 
 ;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.17
+;; Version: 4.18
 ;; Keywords: tex
 
 ;; This file is part of GNU Emacs.
 ;;; Define the formal stuff for a minor mode named RefTeX.
 ;;;
 
-(defconst reftex-version "RefTeX version 4.17"
+(defconst reftex-version "RefTeX version 4.18"
   "Version string for RefTeX.")
 
 (defvar reftex-mode nil
@@ -1101,7 +1101,8 @@ This enforces rescanning the buffer on next use."
     ;; Calculate the regular expressions
     (let* (
 ;         (wbol "\\(\\`\\|[\n\r]\\)[ \t]*")
-          (wbol "\\(\\`\\|[\n\r]\\)[ \t]*")
+          (wbol "\\(^\\)[ \t]*")  ; Need to keep the empty group because
+                                 ;;; because match number are hard coded  
           (label-re "\\\\label{\\([^}]*\\)}")
           (include-re (concat wbol 
                               "\\\\\\("