;; Author: Carsten Dominik <dominik@science.uva.nl>
;; Maintainer: auctex-devel@gnu.org
-;; Version: 4.31
-;; Package: reftex
;; This file is part of GNU Emacs.
;;; Code:
(eval-when-compile (require 'cl))
-(provide 'reftex-sel)
+
(require 'reftex)
-;;;
;; Common bindings in reftex-select-label-mode-map
;; and reftex-select-bib-mode-map.
(define-key map "-" 'negative-argument)
map))
+(define-obsolete-variable-alias
+ 'reftex-select-label-map 'reftex-select-label-mode-map "24.1")
(defvar reftex-select-label-mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent map reftex-select-shared-map)
(loop for x in
'(("b" . reftex-select-jump-to-previous)
("z" . reftex-select-jump)
- ("v" . reftex-select-toggle-varioref)
- ("V" . reftex-select-toggle-fancyref)
+ ("v" . reftex-select-cycle-ref-style-forward)
+ ("V" . reftex-select-cycle-ref-style-backward)
("m" . reftex-select-mark)
("u" . reftex-select-unmark)
("," . reftex-select-mark-comma)
"Keymap used for *RefTeX Select* buffer, when selecting a label.
This keymap can be used to configure the label selection process which is
started with the command \\[reftex-reference].")
-(define-obsolete-variable-alias
- 'reftex-select-label-map 'reftex-select-label-mode-map "24.1")
(define-derived-mode reftex-select-label-mode fundamental-mode "LSelect"
"Major mode for selecting a label in a LaTeX document.
;; We do not set a local map - reftex-select-item does this.
)
+(define-obsolete-variable-alias
+ 'reftex-select-bib-map 'reftex-select-bib-mode-map "24.1")
(defvar reftex-select-bib-mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent map reftex-select-shared-map)
"Keymap used for *RefTeX Select* buffer, when selecting a BibTeX entry.
This keymap can be used to configure the BibTeX selection process which is
started with the command \\[reftex-citation].")
-(define-obsolete-variable-alias
- 'reftex-select-bib-map 'reftex-select-bib-mode-map "24.1")
(define-derived-mode reftex-select-bib-mode fundamental-mode "BSelect"
"Major mode for selecting a citation key in a LaTeX document.
(if (memq reftex-highlight-selection '(mouse both))
reftex-mouse-selected-face
nil))
- (label-face (reftex-verified-face reftex-label-face
- 'font-lock-constant-face
- 'font-lock-reference-face))
- (index-face (reftex-verified-face reftex-index-face
- 'font-lock-constant-face
- 'font-lock-reference-face))
+ (label-face reftex-label-face)
+ (index-face reftex-index-face)
all cell text label typekey note comment master-dir-re
prev-inserted offset from to index-tag docstruct-symbol)
(defvar last-data)
(defvar call-back)
(defvar help-string)
+(defvar reftex-refstyle)
;; The selection commands
(setq reftex-last-follow-point -1)
(setq cb-flag (not cb-flag)))
-(defvar reftex-refstyle) ; from reftex-reference
+(defun reftex-select-cycle-ref-style-internal (&optional reverse)
+ "Cycle through macros used for referencing.
+Cycle in reverse order if optional argument REVERSE is non-nil."
+ (let (list)
+ (dolist (style (reftex-ref-style-list))
+ (mapc (lambda (x) (add-to-list 'list (car x) t))
+ (nth 2 (assoc style reftex-ref-style-alist))))
+ (when reverse
+ (setq list (reverse list)))
+ (setq reftex-refstyle (or (cadr (member reftex-refstyle list)) (car list))))
+ (force-mode-line-update))
-(defun reftex-select-toggle-varioref ()
- "Toggle the macro used for referencing the label between \\ref and \\vref."
+(defun reftex-select-cycle-ref-style-forward ()
+ "Cycle forward through macros used for referencing."
(interactive)
- (if (string= reftex-refstyle "\\ref")
- (setq reftex-refstyle "\\vref")
- (setq reftex-refstyle "\\ref"))
- (force-mode-line-update))
-(defun reftex-select-toggle-fancyref ()
- "Toggle the macro used for referencing the label between \\ref and \\vref."
+ (reftex-select-cycle-ref-style-internal))
+
+(defun reftex-select-cycle-ref-style-backward ()
+ "Cycle backward through macros used for referencing."
(interactive)
- (setq reftex-refstyle
- (cond ((string= reftex-refstyle "\\ref") "\\fref")
- ((string= reftex-refstyle "\\fref") "\\Fref")
- (t "\\ref")))
- (force-mode-line-update))
+ (reftex-select-cycle-ref-style-internal t))
+
(defun reftex-select-show-insertion-point ()
"Show the point from where selection was started in another window."
(interactive)
(if sep
(format "*%c%d* " sep (decf cnt))
(format "*%d* " (decf cnt)))))
- reftex-select-marked)
+ reftex-select-marked)
(message "Entry no longer marked")))
(defun reftex-select-help ()
(princ help-string))
(reftex-enlarge-to-fit "*RefTeX Help*" t))
+(provide 'reftex-sel)
+
;;; reftex-sel.el ends here