;;; reftex-index.el --- index support with RefTeX
-
-;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
-;; 2005 Free Software Foundation, Inc.
+;; Copyright (C) 1997, 1998, 1999, 2000, 2003, 2004, 2005,
+;; 2006 Free Software Foundation, Inc.
;; Author: Carsten Dominik <dominik@science.uva.nl>
-;; Version: 4.28
+;; Version: 4.31
;; This file is part of GNU Emacs.
(defvar mark-active)
(defvar zmacs-regions)
(defvar transient-mark-mode)
+(defvar TeX-master)
;; END remove for XEmacs release
(defun reftex-index-selection-or-word (&optional arg phrase)
"Put selection or the word near point into the default index macro.
;; OPT-ARGS is a list of optional argument indices, as given by
;; `reftex-parse-args'.
(let* ((opt (and (integerp itag) (member itag opt-args)))
- (index-tags (cdr (assq 'index-tags
- (symbol-value reftex-docstruct-symbol))))
- (default (reftex-default-index))
- (prompt (concat "Index tag"
- (if default (format " (default: %s)" default) "")
- (if opt " (optional)" "") ": "))
- (tag (completing-read prompt (mapcar 'list index-tags))))
+ (index-tags (cdr (assq 'index-tags
+ (symbol-value reftex-docstruct-symbol))))
+ (default (reftex-default-index))
+ (prompt (concat "Index tag"
+ (if (or opt default)
+ (format " (%s): "
+ (concat
+ (if opt "optional" "")
+ (if default
+ (concat (if opt ", " "")
+ (format "default %s" default))
+ "")))
+ ": ")))
+ (tag (completing-read prompt (mapcar 'list index-tags))))
(if (and default (equal tag "")) (setq tag default))
(reftex-update-default-index tag)
tag))
(easy-menu-add reftex-index-menu reftex-index-map)
(add-hook 'post-command-hook 'reftex-index-post-command-hook nil t)
(add-hook 'pre-command-hook 'reftex-index-pre-command-hook nil t)
- (run-mode-hooks 'reftex-index-mode-hook))
+ (run-hooks 'reftex-index-mode-hook))
(defconst reftex-index-help
" AVAILABLE KEYS IN INDEX BUFFER
(reftex-insert-index (list data) reftex-index-tag t
"EDITED")))
(setq reftex-last-follow-point 1)
- (and message (message message))))
+ (and message (message "%s" message))))
;; Index map
(define-key reftex-index-map (if (featurep 'xemacs) [(button2)] [(mouse-2)])
'reftex-index-mouse-goto-line-and-hide)
+(define-key reftex-index-map [follow-link] 'mouse-face)
(substitute-key-definition
'next-line 'reftex-index-next reftex-index-map global-map)
(set-marker reftex-index-return-marker (point))
(reftex-index-selection-or-word arg 'phrase)
(if (eq major-mode 'reftex-index-phrases-mode)
- (message
+ (message "%s"
(substitute-command-keys
"Return to LaTeX with \\[reftex-index-phrases-save-and-return]"))))
(beginning-of-line 2))
(cond ((fboundp 'zmacs-activate-region) (zmacs-activate-region))
((boundp 'make-active) (setq mark-active t)))
- (if (yes-or-no-p "Delete and rebuilt header ")
+ (if (yes-or-no-p "Delete and rebuild header? ")
(delete-region (point-min) (point))))
;; Insert the mode line
(defvar reftex-index-phrases-menu)
+(defvar reftex-index-phrases-marker)
(defvar reftex-index-phrases-restrict-file nil)
;;;###autoload
(defun reftex-index-phrases-mode ()
reftex-index-phrases-font-lock-defaults)
(easy-menu-add reftex-index-phrases-menu reftex-index-phrases-map)
(set (make-local-variable 'reftex-index-phrases-marker) (make-marker))
- (run-mode-hooks 'reftex-index-phrases-mode-hook))
+ (run-hooks 'reftex-index-phrases-mode-hook))
(add-hook 'reftex-index-phrases-mode-hook 'turn-on-font-lock)
;; Font Locking stuff
reftex-index-phrases-font-lock-defaults) ; XEmacs
)
-(defvar reftex-index-phrases-marker)
(defun reftex-index-next-phrase (&optional arg)
"Index the next ARG phrases in the phrases buffer."
(interactive "p")
(nkeys (length index-keys))
(ckey (nth 0 index-keys))
(all-yes nil)
- match rpl char beg end mathp)
+ match rpl char (beg (make-marker)) (end (make-marker)) mathp)
+ (move-marker beg 1)
+ (move-marker end 1)
(unwind-protect
(while (re-search-forward re nil t)
(catch 'next-match
(setq mathp
(save-match-data
(condition-case nil (texmathp) (error nil))))
- (setq beg (car (match-data))
- end (nth 1 (match-data)))
+ (setq beg (move-marker beg (match-beginning 0))
+ end (move-marker end (match-end 0)))
(if (and reftex-index-phrases-skip-indexed-matches
(save-match-data
(reftex-index-phrase-match-is-indexed beg
;; Recursive edit
(save-match-data
(save-excursion
- (message
+ (message "%s"
(substitute-command-keys
"Recursive edit. Resume with \\[exit-recursive-edit]"))
(recursive-edit))))
(t (ding)))
nil)))))
(message "")
+ (move-marker beg nil)
+ (move-marker end nil)
(setq all-yes nil)
(reftex-unhighlight 0))))
(save-excursion
(goto-char end)
(let* ((all-macros (reftex-what-macro t))
- (this-macro (car (car all-macros)))
+; (this-macro (car (car all-macros)))
(before-macro
(and (> beg 2)
(goto-char (1- beg))