emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/textmodes/reftex-sel.el [lexbind]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/textmodes/reftex-sel.el [lexbind]
Date: Tue, 14 Oct 2003 19:30:36 -0400

Index: emacs/lisp/textmodes/reftex-sel.el
diff -c emacs/lisp/textmodes/reftex-sel.el:1.11.4.1 
emacs/lisp/textmodes/reftex-sel.el:1.11.4.2
*** emacs/lisp/textmodes/reftex-sel.el:1.11.4.1 Fri Apr  4 01:20:40 2003
--- emacs/lisp/textmodes/reftex-sel.el  Tue Oct 14 19:30:22 2003
***************
*** 1,8 ****
  ;;; reftex-sel.el --- the selection modes for RefTeX
! ;; Copyright (c) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
  
  ;; Author: Carsten Dominik <address@hidden>
! ;; Version: 4.18
  
  ;; This file is part of GNU Emacs.
  
--- 1,8 ----
  ;;; reftex-sel.el --- the selection modes for RefTeX
! ;; Copyright (c) 1997, 1998, 1999, 2000, 2003 Free Software Foundation, Inc.
  
  ;; Author: Carsten Dominik <address@hidden>
! ;; Version: 4.21
  
  ;; This file is part of GNU Emacs.
  
***************
*** 38,44 ****
  (defun reftex-select-label-mode ()
    "Major mode for selecting a label in a LaTeX document.
  This buffer was created with RefTeX.
! It only has a meaningful keymap when you are in the middle of a
  selection process.
  To select a label, move the cursor to it and press RET.
  Press `?' for a summary of important key bindings.
--- 38,44 ----
  (defun reftex-select-label-mode ()
    "Major mode for selecting a label in a LaTeX document.
  This buffer was created with RefTeX.
! It only has a meaningful keymap when you are in the middle of a 
  selection process.
  To select a label, move the cursor to it and press RET.
  Press `?' for a summary of important key bindings.
***************
*** 54,60 ****
      (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)
    (when (syntax-table-p reftex-latex-syntax-table)
      (set-syntax-table reftex-latex-syntax-table))
--- 54,60 ----
      (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)
    (when (syntax-table-p reftex-latex-syntax-table)
      (set-syntax-table reftex-latex-syntax-table))
***************
*** 69,75 ****
  (defun reftex-select-bib-mode ()
    "Major mode for selecting a citation key in a LaTeX document.
  This buffer was created with RefTeX.
! It only has a meaningful keymap when you are in the middle of a
  selection process.
  In order to select a citation, move the cursor to it and press RET.
  Press `?' for a summary of important key bindings.
--- 69,75 ----
  (defun reftex-select-bib-mode ()
    "Major mode for selecting a citation key in a LaTeX document.
  This buffer was created with RefTeX.
! It only has a meaningful keymap when you are in the middle of a 
  selection process.
  In order to select a citation, move the cursor to it and press RET.
  Press `?' for a summary of important key bindings.
***************
*** 84,90 ****
      (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)
    ;; We do not set a local map - reftex-select-item does this.
    (run-hooks 'reftex-select-bib-mode-hook))
--- 84,90 ----
      (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)
    ;; We do not set a local map - reftex-select-item does this.
    (run-hooks 'reftex-select-bib-mode-hook))
***************
*** 99,116 ****
  ;;;       (set-buffer buf)
  ;;;       (reftex-access-scan-info)
  ;;;       (let* ((rest (memq here-am-I (symbol-value 
reftex-docstruct-symbol)))
! ;;;        entry)
! ;;;   (while (setq entry (pop rest))
! ;;;     (if (or (and typekey
! ;;;                  (stringp (car entry))
! ;;;                  (or (equal typekey " ")
! ;;;                      (equal typekey (nth 1 entry))))
! ;;;             (and toc (eq (car entry) 'toc))
! ;;;             (and index (eq (car entry) 'index))
! ;;;             (and file
! ;;;                  (memq (car entry) '(bof eof file-error))))
! ;;;         (throw 'exit entry)))
! ;;;   nil))))
  
  (defun reftex-get-offset (buf here-am-I &optional typekey toc index file)
    ;; Find the correct offset data, like insert-docstruct would, but faster.
--- 99,116 ----
  ;;;       (set-buffer buf)
  ;;;       (reftex-access-scan-info)
  ;;;       (let* ((rest (memq here-am-I (symbol-value 
reftex-docstruct-symbol)))
! ;;;          entry)
! ;;;     (while (setq entry (pop rest))
! ;;;       (if (or (and typekey
! ;;;                    (stringp (car entry))
! ;;;                    (or (equal typekey " ")
! ;;;                        (equal typekey (nth 1 entry))))
! ;;;               (and toc (eq (car entry) 'toc))
! ;;;               (and index (eq (car entry) 'index))
! ;;;               (and file
! ;;;                    (memq (car entry) '(bof eof file-error))))
! ;;;           (throw 'exit entry)))
! ;;;     nil))))
  
  (defun reftex-get-offset (buf here-am-I &optional typekey toc index file)
    ;; Find the correct offset data, like insert-docstruct would, but faster.
***************
*** 122,145 ****
        (set-buffer buf)
        (reftex-access-scan-info)
        (let* ((rest (symbol-value reftex-docstruct-symbol))
!            lastentry entry)
!       (while (setq entry (pop rest))
!         (if (or (and typekey
!                      (stringp (car entry))
!                      (or (equal typekey " ")
!                          (equal typekey (nth 1 entry))))
!                 (and toc (eq (car entry) 'toc))
!                 (and index (eq (car entry) 'index))
!                 (and file
!                      (memq (car entry) '(bof eof file-error))))
!             (setq lastentry entry))
!         (if (eq entry here-am-I)
!             (throw 'exit (or lastentry entry))))
!       nil))))
  
  (defun reftex-insert-docstruct
    (buf toc labels index-entries files context counter show-commented
!           here-I-am xr-prefix toc-buffer)
    ;; Insert an excerpt of the docstruct list.
    ;; Return the data property of the entry corresponding to HERE-I-AM.
    ;; BUF is the buffer which has the correct docstruct-symbol.
--- 122,145 ----
        (set-buffer buf)
        (reftex-access-scan-info)
        (let* ((rest (symbol-value reftex-docstruct-symbol))
!              lastentry entry)
!         (while (setq entry (pop rest))
!           (if (or (and typekey
!                        (stringp (car entry))
!                        (or (equal typekey " ")
!                            (equal typekey (nth 1 entry))))
!                   (and toc (eq (car entry) 'toc))
!                   (and index (eq (car entry) 'index))
!                   (and file
!                        (memq (car entry) '(bof eof file-error))))
!               (setq lastentry entry))
!           (if (eq entry here-am-I)
!               (throw 'exit (or lastentry entry))))
!         nil))))
  
  (defun reftex-insert-docstruct
    (buf toc labels index-entries files context counter show-commented
!             here-I-am xr-prefix toc-buffer)
    ;; Insert an excerpt of the docstruct list.
    ;; Return the data property of the entry corresponding to HERE-I-AM.
    ;; BUF is the buffer which has the correct docstruct-symbol.
***************
*** 163,180 ****
           (context-indent
            (concat ".   "
                    (if toc (make-string (* 7 reftex-level-indent) ?\ ) "")))
!        (mouse-face
!         (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))
           all cell text label typekey note comment master-dir-re
!        prev-inserted offset from to index-tag docstruct-symbol)
  
      ;; Pop to buffer buf to get the correct buffer-local variables
      (save-excursion
--- 163,180 ----
           (context-indent
            (concat ".   "
                    (if toc (make-string (* 7 reftex-level-indent) ?\ ) "")))
!          (mouse-face
!           (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))
           all cell text label typekey note comment master-dir-re
!          prev-inserted offset from to index-tag docstruct-symbol)
  
      ;; Pop to buffer buf to get the correct buffer-local variables
      (save-excursion
***************
*** 184,190 ****
        (reftex-access-scan-info)
  
        (setq docstruct-symbol reftex-docstruct-symbol
!           all (symbol-value reftex-docstruct-symbol)
              reftex-active-toc nil
              master-dir-re
              (concat "\\`" (regexp-quote
--- 184,190 ----
        (reftex-access-scan-info)
  
        (setq docstruct-symbol reftex-docstruct-symbol
!             all (symbol-value reftex-docstruct-symbol)
              reftex-active-toc nil
              master-dir-re
              (concat "\\`" (regexp-quote
***************
*** 192,198 ****
  
      (set (make-local-variable 'reftex-docstruct-symbol) docstruct-symbol)
      (set (make-local-variable 'reftex-prefix)
!        (cdr (assoc labels reftex-typekey-to-prefix-alist)))
      (if (equal reftex-prefix " ") (setq reftex-prefix nil))
  
      ;; Walk the docstruct and insert the appropriate stuff
--- 192,198 ----
  
      (set (make-local-variable 'reftex-docstruct-symbol) docstruct-symbol)
      (set (make-local-variable 'reftex-prefix)
!          (cdr (assoc labels reftex-typekey-to-prefix-alist)))
      (if (equal reftex-prefix " ") (setq reftex-prefix nil))
  
      ;; Walk the docstruct and insert the appropriate stuff
***************
*** 204,217 ****
        (cond
  
         ((memq (car cell) '(bib thebib label-numbers appendix
!                              master-dir bibview-cache is-multi xr xr-doc)))
         ;; These are currently ignored
  
         ((memq (car cell) '(bof eof file-error))
          ;; Beginning or end of a file
          (when files
!         (setq prev-inserted cell)
! ;       (if (eq offset 'attention) (setq offset cell))
            (insert
             " File " (if (string-match master-dir-re (nth 1 cell))
                     (substring (nth 1 cell) (match-end 0))
--- 204,217 ----
        (cond
  
         ((memq (car cell) '(bib thebib label-numbers appendix
!                                master-dir bibview-cache is-multi xr xr-doc)))
         ;; These are currently ignored
  
         ((memq (car cell) '(bof eof file-error))
          ;; Beginning or end of a file
          (when files
!           (setq prev-inserted cell)
! ;         (if (eq offset 'attention) (setq offset cell))
            (insert
             " File " (if (string-match master-dir-re (nth 1 cell))
                     (substring (nth 1 cell) (match-end 0))
***************
*** 219,259 ****
             (cond ((eq (car cell) 'bof) " starts here\n")
                   ((eq (car cell) 'eof) " ends here\n")
                   ((eq (car cell) 'file-error) " was not found\n")))
!         (setq to (point))
            (when font
              (put-text-property from to
                                 'face reftex-file-boundary-face))
!         (when toc-buffer
!           (if mouse-face
!               (put-text-property from (1- to)
!                                  'mouse-face mouse-face))
!           (put-text-property from to :data cell))))
  
         ((eq (car cell) 'toc)
          ;; a table of contents entry
          (when (and toc
!                  (<= (nth 5 cell) reftex-toc-max-level))
!         (setq prev-inserted cell)
! ;       (if (eq offset 'attention) (setq offset cell))
            (setq reftex-active-toc cell)
            (insert (concat toc-indent (nth 2 cell) "\n"))
!         (setq to (point))
!         (when font
!           (put-text-property from to
!                              'face reftex-section-heading-face))
!         (when toc-buffer
!           (if mouse-face
!               (put-text-property from (1- to)
!                                  'mouse-face mouse-face))
!           (put-text-property from to :data cell))
!         (goto-char to)))
  
         ((stringp (car cell))
          ;; a label
          (when (null (nth 2 cell))
            ;; No context yet.  Quick update.
!         (setcdr cell (cdr (reftex-label-info-update cell)))
!         (put docstruct-symbol 'modified t))
  
          (setq label   (car cell)
                typekey (nth 1 cell)
--- 219,259 ----
             (cond ((eq (car cell) 'bof) " starts here\n")
                   ((eq (car cell) 'eof) " ends here\n")
                   ((eq (car cell) 'file-error) " was not found\n")))
!           (setq to (point))
            (when font
              (put-text-property from to
                                 'face reftex-file-boundary-face))
!           (when toc-buffer
!             (if mouse-face
!                 (put-text-property from (1- to)
!                                    'mouse-face mouse-face))
!             (put-text-property from to :data cell))))
  
         ((eq (car cell) 'toc)
          ;; a table of contents entry
          (when (and toc
!                    (<= (nth 5 cell) reftex-toc-max-level))
!           (setq prev-inserted cell)
! ;         (if (eq offset 'attention) (setq offset cell))
            (setq reftex-active-toc cell)
            (insert (concat toc-indent (nth 2 cell) "\n"))
!           (setq to (point))
!           (when font
!             (put-text-property from to
!                                'face reftex-section-heading-face))
!           (when toc-buffer
!             (if mouse-face
!                 (put-text-property from (1- to)
!                                    'mouse-face mouse-face))
!             (put-text-property from to :data cell))
!           (goto-char to)))
  
         ((stringp (car cell))
          ;; a label
          (when (null (nth 2 cell))
            ;; No context yet.  Quick update.
!           (setcdr cell (cdr (reftex-label-info-update cell)))
!           (put docstruct-symbol 'modified t))
  
          (setq label   (car cell)
                typekey (nth 1 cell)
***************
*** 262,288 ****
                note    (nth 5 cell))
  
          (when (and labels
!                  (or (eq labels t)
!                      (string= typekey labels)
!                      (string= labels " "))
                     (or show-commented (null comment)))
  
            ;; Yes we want this one
            (incf cnt)
!         (setq prev-inserted cell)
! ;       (if (eq offset 'attention) (setq offset cell))
  
!         (setq label (concat xr-prefix label))
            (when comment (setq label (concat "% " label)))
            (insert label-indent label)
            (when font
!           (setq to (point))
              (put-text-property
               (- (point) (length label)) to
               'face (if comment
                         'font-lock-comment-face
                       label-face))
!           (goto-char to))
  
            (insert (if counter (format " (%d) " cnt) "")
                    (if comment " LABEL IS COMMENTED OUT " "")
--- 262,288 ----
                note    (nth 5 cell))
  
          (when (and labels
!                    (or (eq labels t) 
!                        (string= typekey labels)
!                        (string= labels " "))
                     (or show-commented (null comment)))
  
            ;; Yes we want this one
            (incf cnt)
!           (setq prev-inserted cell)
! ;         (if (eq offset 'attention) (setq offset cell))
  
!           (setq label (concat xr-prefix label))
            (when comment (setq label (concat "% " label)))
            (insert label-indent label)
            (when font
!             (setq to (point))
              (put-text-property
               (- (point) (length label)) to
               'face (if comment
                         'font-lock-comment-face
                       label-face))
!             (goto-char to))
  
            (insert (if counter (format " (%d) " cnt) "")
                    (if comment " LABEL IS COMMENTED OUT " "")
***************
*** 294,339 ****
              (insert context-indent text "\n")
              (setq to (point)))
            (put-text-property from to :data cell)
!         (when mouse-face
!           (put-text-property from (1- to)
!                              'mouse-face mouse-face))
            (goto-char to)))
  
         ((eq (car cell) 'index)
!       ;; index entry
!       (when (and index-entries
!                  (or (eq t index-entries)
!                      (string= index-entries (nth 1 cell))))
!         (setq prev-inserted cell)
! ;       (if (eq offset 'attention) (setq offset cell))
!         (setq index-tag (format "<%s>" (nth 1 cell)))
!         (and font
!              (put-text-property 0 (length index-tag)
!                                 'face reftex-index-tag-face index-tag))
!         (insert label-indent index-tag " " (nth 7 cell))
! 
!         (when font
!           (setq to (point))
!           (put-text-property
!            (- (point) (length (nth 7 cell))) to
!            'face index-face)
!           (goto-char to))
!         (insert "\n")
!         (setq to (point))
! 
!         (when context
!           (insert context-indent (nth 2 cell) "\n")
!           (setq to (point)))
!         (put-text-property from to :data cell)
!         (when mouse-face
!           (put-text-property from (1- to)
!                              'mouse-face mouse-face))
            (goto-char to))))
  
!       (if (eq cell here-I-am)
!         (setq offset 'attention))
        (if (and prev-inserted (eq offset 'attention))
!         (setq offset prev-inserted))
        )
  
      (when (reftex-refontify)
--- 294,339 ----
              (insert context-indent text "\n")
              (setq to (point)))
            (put-text-property from to :data cell)
!           (when mouse-face
!             (put-text-property from (1- to)
!                                'mouse-face mouse-face))   
            (goto-char to)))
  
         ((eq (car cell) 'index)
!         ;; index entry
!         (when (and index-entries
!                    (or (eq t index-entries)
!                        (string= index-entries (nth 1 cell))))
!           (setq prev-inserted cell)
! ;         (if (eq offset 'attention) (setq offset cell))
!           (setq index-tag (format "<%s>" (nth 1 cell)))
!           (and font
!                (put-text-property 0 (length index-tag)
!                                   'face reftex-index-tag-face index-tag))
!           (insert label-indent index-tag " " (nth 7 cell))
! 
!           (when font
!             (setq to (point))
!             (put-text-property 
!              (- (point) (length (nth 7 cell))) to
!              'face index-face)
!             (goto-char to))
!           (insert "\n")
!           (setq to (point))
! 
!           (when context
!             (insert context-indent (nth 2 cell) "\n")
!             (setq to (point)))
!           (put-text-property from to :data cell)
!           (when mouse-face
!             (put-text-property from (1- to)
!                                'mouse-face mouse-face))   
            (goto-char to))))
  
!       (if (eq cell here-I-am) 
!           (setq offset 'attention))
        (if (and prev-inserted (eq offset 'attention))
!           (setq offset prev-inserted))
        )
  
      (when (reftex-refontify)
***************
*** 351,368 ****
      (goto-char (point-min))
      (let (loc pos)
        (while locations
!       (setq loc (pop locations))
!       (cond
!        ((null loc))
!        ((listp loc)
!         (setq pos (text-property-any (point-min) (point-max) :data loc))
!         (when pos
!           (goto-char pos)
!           (throw 'exit t)))
!        ((integerp loc)
!         (when (<= loc (count-lines (point-min) (point-max)))
!           (goto-line loc)
!           (throw 'exit t)))))
        (goto-char fallback))))
  
  (defvar reftex-last-data nil)
--- 351,368 ----
      (goto-char (point-min))
      (let (loc pos)
        (while locations
!         (setq loc (pop locations))
!         (cond
!          ((null loc))
!          ((listp loc)
!           (setq pos (text-property-any (point-min) (point-max) :data loc))
!           (when pos
!             (goto-char pos) 
!             (throw 'exit t)))
!          ((integerp loc)
!           (when (<= loc (count-lines (point-min) (point-max)))
!             (goto-line loc)
!             (throw 'exit t)))))
        (goto-char fallback))))
  
  (defvar reftex-last-data nil)
***************
*** 370,377 ****
  (defvar reftex-select-marked nil)
  
  (defun reftex-select-item (prompt help-string keymap
!                                 &optional offset
!                                 call-back cb-flag)
  ;; Select an item, using PROMPT. The function returns a key indicating
  ;; an exit status, along with a data structure indicating which item was
  ;; selected.
--- 370,377 ----
  (defvar reftex-select-marked nil)
  
  (defun reftex-select-item (prompt help-string keymap
!                                   &optional offset
!                                   call-back cb-flag)
  ;; Select an item, using PROMPT. The function returns a key indicating
  ;; an exit status, along with a data structure indicating which item was
  ;; selected.
***************
*** 393,428 ****
              (save-window-excursion
                (setq truncate-lines t)
  
!             ;; Find a good starting point
!             (reftex-find-start-point
!              (point-min) offset reftex-last-data reftex-last-line)
                (beginning-of-line 1)
!             (set (make-local-variable 'reftex-last-follow-point) (point))
  
        (unwind-protect
!         (progn
!           (use-local-map keymap)
!           (add-hook 'pre-command-hook 'reftex-select-pre-command-hook nil t)
!           (add-hook 'post-command-hook 'reftex-select-post-command-hook nil t)
!           (princ prompt)
!           (set-marker reftex-recursive-edit-marker (point))
!           ;; XEmacs does not run post-command-hook here
!           (and (featurep 'xemacs) (run-hooks 'post-command-hook))
!           (recursive-edit))
! 
!       (set-marker reftex-recursive-edit-marker nil)
!       (save-excursion
!         (set-buffer selection-buffer)
!         (use-local-map nil)
!         (remove-hook 'pre-command-hook 'reftex-select-pre-command-hook t)
!         (remove-hook 'post-command-hook
!                      'reftex-select-post-command-hook t))
!       ;; Kill the mark overlays
!       (mapcar (lambda (c) (delete-overlay (nth 1 c)))
!               reftex-select-marked)))))
  
      (set (make-local-variable 'reftex-last-line)
!        (+ (count-lines (point-min) (point)) (if (bolp) 1 0)))
      (set (make-local-variable 'reftex-last-data) last-data)
      (reftex-kill-buffer "*RefTeX Help*")
      (setq reftex-callback-fwd (not reftex-callback-fwd)) ;; ;-)))
--- 393,428 ----
              (save-window-excursion
                (setq truncate-lines t)
  
!               ;; Find a good starting point
!               (reftex-find-start-point 
!                (point-min) offset reftex-last-data reftex-last-line)
                (beginning-of-line 1)
!               (set (make-local-variable 'reftex-last-follow-point) (point))
  
        (unwind-protect
!           (progn
!             (use-local-map keymap)
!             (add-hook 'pre-command-hook 'reftex-select-pre-command-hook nil t)
!             (add-hook 'post-command-hook 'reftex-select-post-command-hook nil 
t)
!             (princ prompt)
!             (set-marker reftex-recursive-edit-marker (point))
!             ;; XEmacs does not run post-command-hook here
!             (and (featurep 'xemacs) (run-hooks 'post-command-hook))
!             (recursive-edit))
! 
!         (set-marker reftex-recursive-edit-marker nil)
!         (save-excursion
!           (set-buffer selection-buffer)
!           (use-local-map nil)
!           (remove-hook 'pre-command-hook 'reftex-select-pre-command-hook t)
!           (remove-hook 'post-command-hook 
!                        'reftex-select-post-command-hook t))
!         ;; Kill the mark overlays
!         (mapcar (lambda (c) (delete-overlay (nth 1 c)))
!                 reftex-select-marked)))))
  
      (set (make-local-variable 'reftex-last-line)
!          (+ (count-lines (point-min) (point)) (if (bolp) 1 0)))
      (set (make-local-variable 'reftex-last-data) last-data)
      (reftex-kill-buffer "*RefTeX Help*")
      (setq reftex-callback-fwd (not reftex-callback-fwd)) ;; ;-)))
***************
*** 451,475 ****
    (let (b e)
      (setq data (get-text-property (point) :data))
      (setq last-data (or data last-data))
! 
      (when (and data cb-flag
!              (not (equal reftex-last-follow-point (point))))
        (setq reftex-last-follow-point (point))
!       (funcall call-back data reftex-callback-fwd
!              (not reftex-revisit-to-follow)))
      (if data
!       (setq b (or (previous-single-property-change
!                    (1+ (point)) :data)
!                   (point-min))
!             e (or (next-single-property-change
!                    (point) :data)
!                   (point-max)))
        (setq b (point) e (point)))
      (and (memq reftex-highlight-selection '(cursor both))
!        (reftex-highlight 1 b e))
      (if (or (not (pos-visible-in-window-p b))
!           (not (pos-visible-in-window-p e)))
!       (recenter '(4)))
      (unless (current-message)
        (princ prompt))))
  
--- 451,475 ----
    (let (b e)
      (setq data (get-text-property (point) :data))
      (setq last-data (or data last-data))
!   
      (when (and data cb-flag
!                (not (equal reftex-last-follow-point (point))))
        (setq reftex-last-follow-point (point))
!       (funcall call-back data reftex-callback-fwd 
!                (not reftex-revisit-to-follow)))
      (if data
!         (setq b (or (previous-single-property-change
!                      (1+ (point)) :data)
!                     (point-min))
!               e (or (next-single-property-change
!                      (point) :data)
!                     (point-max)))
        (setq b (point) e (point)))
      (and (memq reftex-highlight-selection '(cursor both))
!          (reftex-highlight 1 b e))
      (if (or (not (pos-visible-in-window-p b))
!             (not (pos-visible-in-window-p e)))
!         (recenter '(4)))
      (unless (current-message)
        (princ prompt))))
  
***************
*** 518,529 ****
    (let (pos)
      (cond
       ((and (local-variable-p 'reftex-last-data (current-buffer))
!          reftex-last-data
!          (setq pos (text-property-any (point-min) (point-max)
!                                       :data reftex-last-data)))
        (goto-char pos))
       ((and (local-variable-p 'reftex-last-line (current-buffer))
!          (integerp reftex-last-line))
        (goto-line reftex-last-line))
       (t (ding)))))
  (defun reftex-select-toggle-follow ()
--- 518,529 ----
    (let (pos)
      (cond
       ((and (local-variable-p 'reftex-last-data (current-buffer))
!            reftex-last-data
!            (setq pos (text-property-any (point-min) (point-max)
!                                         :data reftex-last-data)))
        (goto-char pos))
       ((and (local-variable-p 'reftex-last-line (current-buffer))
!            (integerp reftex-last-line))
        (goto-line reftex-last-line))
       (t (ding)))))
  (defun reftex-select-toggle-follow ()
***************
*** 542,561 ****
    "Toggle the macro used for referencing the label between \\ref and \\vref."
    (interactive)
    (setq refstyle
!       (cond ((string= refstyle "\\ref") "\\fref")
!             ((string= refstyle "\\fref") "\\Fref")
!             (t "\\ref")))
    (force-mode-line-update))
  (defun reftex-select-show-insertion-point ()
    "Show the point from where selection was started in another window."
    (interactive)
    (let ((this-window (selected-window)))
      (unwind-protect
!       (progn
!         (switch-to-buffer-other-window
!          (marker-buffer reftex-select-return-marker))
!         (goto-char (marker-position reftex-select-return-marker))
!         (recenter '(4)))
        (select-window this-window))))
  (defun reftex-select-callback ()
    "Show full context in another window."
--- 542,561 ----
    "Toggle the macro used for referencing the label between \\ref and \\vref."
    (interactive)
    (setq refstyle
!         (cond ((string= refstyle "\\ref") "\\fref")
!               ((string= refstyle "\\fref") "\\Fref")
!               (t "\\ref")))
    (force-mode-line-update))
  (defun reftex-select-show-insertion-point ()
    "Show the point from where selection was started in another window."
    (interactive)
    (let ((this-window (selected-window)))
      (unwind-protect
!         (progn
!           (switch-to-buffer-other-window
!            (marker-buffer reftex-select-return-marker))
!           (goto-char (marker-position reftex-select-return-marker))
!           (recenter '(4)))
        (select-window this-window))))
  (defun reftex-select-callback ()
    "Show full context in another window."
***************
*** 575,590 ****
  (defun reftex-select-read-label ()
    "Use minibuffer to read a label to reference, with completion."
    (interactive)
!   (let ((label (completing-read
!               "Label: " (symbol-value reftex-docstruct-symbol)
!               nil nil reftex-prefix)))
      (unless (or (equal label "") (equal label reftex-prefix))
        (throw 'myexit label))))
  (defun reftex-select-read-cite ()
    "Use minibuffer to read a citation key with completion."
    (interactive)
    (let* ((key (completing-read "Citation key: " found-list))
!        (entry (assoc key found-list)))
      (cond
       ((or (null key) (equal key "")))
       (entry
--- 575,590 ----
  (defun reftex-select-read-label ()
    "Use minibuffer to read a label to reference, with completion."
    (interactive)
!   (let ((label (completing-read 
!                 "Label: " (symbol-value reftex-docstruct-symbol)
!                 nil nil reftex-prefix)))
      (unless (or (equal label "") (equal label reftex-prefix))
        (throw 'myexit label))))
  (defun reftex-select-read-cite ()
    "Use minibuffer to read a citation key with completion."
    (interactive)
    (let* ((key (completing-read "Citation key: " found-list))
!          (entry (assoc key found-list)))
      (cond
       ((or (null key) (equal key "")))
       (entry
***************
*** 597,619 ****
    "Mark the entry."
    (interactive)
    (let* ((data (get-text-property (point) :data))
!        boe eoe ovl)
      (or data (error "No entry to mark at point"))
      (if (assq data reftex-select-marked)
!       (error "Entry is already marked"))
      (setq boe (or (previous-single-property-change (1+ (point)) :data)
!                 (point-min))
!         eoe (or (next-single-property-change (point) :data) (point-max)))
      (setq ovl (make-overlay boe eoe))
      (push (list data ovl separator) reftex-select-marked)
      (overlay-put ovl 'face reftex-select-mark-face)
      (if (featurep 'xemacs)
!       ;; before-string property is broken in Emacs
!       (overlay-put ovl 'before-string
!                    (if separator
!                        (format "*%c%d* " separator
!                                (length reftex-select-marked))
!                      (format "*%d*  " (length reftex-select-marked)))))
      (message "Entry has mark no. %d" (length reftex-select-marked))))
  
  (defun reftex-select-mark-comma ()
--- 597,619 ----
    "Mark the entry."
    (interactive)
    (let* ((data (get-text-property (point) :data))
!          boe eoe ovl)
      (or data (error "No entry to mark at point"))
      (if (assq data reftex-select-marked)
!         (error "Entry is already marked"))
      (setq boe (or (previous-single-property-change (1+ (point)) :data)
!                   (point-min))
!           eoe (or (next-single-property-change (point) :data) (point-max)))
      (setq ovl (make-overlay boe eoe))
      (push (list data ovl separator) reftex-select-marked)
      (overlay-put ovl 'face reftex-select-mark-face)
      (if (featurep 'xemacs)
!         ;; before-string property is broken in Emacs
!         (overlay-put ovl 'before-string
!                      (if separator
!                          (format "*%c%d* " separator
!                                  (length reftex-select-marked))
!                        (format "*%d*  " (length reftex-select-marked)))))
      (message "Entry has mark no. %d" (length reftex-select-marked))))
  
  (defun reftex-select-mark-comma ()
***************
*** 633,657 ****
    "Unmark the entry."
    (interactive)
    (let* ((data (get-text-property (point) :data))
!        (cell (assq data reftex-select-marked))
!        (ovl (nth 1 cell))
!        (cnt 0)
!        sep)
      (unless cell
        (error "No marked entry at point"))
      (and ovl (delete-overlay ovl))
      (setq reftex-select-marked (delq cell reftex-select-marked))
      (if (featurep 'xemacs)
!       ;; before-string property is broken in Emacs
!       (progn
!         (setq cnt (1+ (length reftex-select-marked)))
!         (mapcar (lambda (c)
!                   (setq sep (nth 2 c))
!                   (overlay-put (nth 1 c) 'before-string
!                                (if sep
!                                    (format "*%c%d* " sep (decf cnt))
!                                  (format "*%d*  " (decf cnt)))))
!                 reftex-select-marked)))
      (message "Entry no longer marked")))
  
  (defun reftex-select-help ()
--- 633,657 ----
    "Unmark the entry."
    (interactive)
    (let* ((data (get-text-property (point) :data))
!          (cell (assq data reftex-select-marked))
!          (ovl (nth 1 cell))
!          (cnt 0)
!          sep)
      (unless cell
        (error "No marked entry at point"))
      (and ovl (delete-overlay ovl))
      (setq reftex-select-marked (delq cell reftex-select-marked))
      (if (featurep 'xemacs)
!         ;; before-string property is broken in Emacs
!         (progn
!           (setq cnt (1+ (length reftex-select-marked)))
!           (mapcar (lambda (c)
!                     (setq sep (nth 2 c))
!                     (overlay-put (nth 1 c) 'before-string
!                                  (if sep
!                                      (format "*%c%d* " sep (decf cnt))
!                                    (format "*%d*  " (decf cnt)))))
!                   reftex-select-marked)))
      (message "Entry no longer marked")))
  
  (defun reftex-select-help ()
***************
*** 664,690 ****
  ;; Common bindings in reftex-select-label-map and reftex-select-bib-map
  (let ((map (make-sparse-keymap)))
    (substitute-key-definition
!    'next-line 'reftex-select-next                    map global-map)
    (substitute-key-definition
!    'previous-line 'reftex-select-previous            map global-map)
    (substitute-key-definition
     'keyboard-quit 'reftex-select-keyboard-quit         map global-map)
    (substitute-key-definition
!    'newline 'reftex-select-accept                    map global-map)
  
    (loop for x in
!       '((" "        . reftex-select-callback)
!         ("n"        . reftex-select-next)
!         ([(down)]   . reftex-select-next)
!         ("p"        . reftex-select-previous)
!         ([(up)]     . reftex-select-previous)
!         ("f"        . reftex-select-toggle-follow)
!         ("\C-m"     . reftex-select-accept)
!         ([(return)] . reftex-select-accept)
!         ("q"        . reftex-select-quit)
!         ("."        . reftex-select-show-insertion-point)
!         ("?"        . reftex-select-help))
!       do (define-key map (car x) (cdr x)))
  
    ;; The mouse-2 binding
    (if (featurep 'xemacs)
--- 664,690 ----
  ;; Common bindings in reftex-select-label-map and reftex-select-bib-map
  (let ((map (make-sparse-keymap)))
    (substitute-key-definition
!    'next-line 'reftex-select-next                      map global-map)
    (substitute-key-definition
!    'previous-line 'reftex-select-previous              map global-map)
    (substitute-key-definition
     'keyboard-quit 'reftex-select-keyboard-quit         map global-map)
    (substitute-key-definition
!    'newline 'reftex-select-accept                      map global-map)
  
    (loop for x in
!         '((" "        . reftex-select-callback)
!           ("n"        . reftex-select-next)
!           ([(down)]   . reftex-select-next)
!           ("p"        . reftex-select-previous)
!           ([(up)]     . reftex-select-previous)
!           ("f"        . reftex-select-toggle-follow)
!           ("\C-m"     . reftex-select-accept)
!           ([(return)] . reftex-select-accept) 
!           ("q"        . reftex-select-quit)
!           ("."        . reftex-select-show-insertion-point)
!           ("?"        . reftex-select-help))
!         do (define-key map (car x) (cdr x)))
  
    ;; The mouse-2 binding
    (if (featurep 'xemacs)
***************
*** 693,699 ****
  
    ;; Digit arguments
    (loop for key across "0123456789" do
!       (define-key map (vector (list key)) 'digit-argument))
    (define-key map "-" 'negative-argument)
  
    ;; Make two maps
--- 693,699 ----
  
    ;; Digit arguments
    (loop for key across "0123456789" do
!         (define-key map (vector (list key)) 'digit-argument))
    (define-key map "-" 'negative-argument)
  
    ;; Make two maps
***************
*** 703,742 ****
  ;; Specific bindings in reftex-select-label-map
  (loop for key across "aAcgFlrRstx#%" do
        (define-key reftex-select-label-map (vector (list key))
!       (list 'lambda '()
!             "Press `?' during selection to find out about this key."
!             '(interactive) (list 'throw '(quote myexit) key))))
  
  (loop for x in
        '(("b"        . reftex-select-jump-to-previous)
!       ("z"        . reftex-select-jump)
!       ("v"        . reftex-select-toggle-varioref)
!       ("V"        . reftex-select-toggle-fancyref)
!       ("m"        . reftex-select-mark)
!       ("u"        . reftex-select-unmark)
!       (","        . reftex-select-mark-comma)
!       ("-"        . reftex-select-mark-to)
!       ("+"        . reftex-select-mark-and)
!       ([(tab)]    . reftex-select-read-label)
!       ("\C-i"     . reftex-select-read-label)
!       ("\C-c\C-n" . reftex-select-next-heading)
!       ("\C-c\C-p" . reftex-select-previous-heading))
        do
        (define-key reftex-select-label-map (car x) (cdr x)))
  
  ;; Specific bindings in reftex-select-bib-map
  (loop for key across "grRaA" do
        (define-key reftex-select-bib-map (vector (list key))
!       (list 'lambda '()
!             "Press `?' during selection to find out about this key."
!             '(interactive) (list 'throw '(quote myexit) key))))
  
  (loop for x in
        '(("\C-i"  . reftex-select-read-cite)
!       ([(tab)] . reftex-select-read-cite)
!       ("m"     . reftex-select-mark)
!       ("u"     . reftex-select-unmark))
        do (define-key reftex-select-bib-map (car x) (cdr x)))
  
! 
  ;;; reftex-sel.el ends here
--- 703,743 ----
  ;; Specific bindings in reftex-select-label-map
  (loop for key across "aAcgFlrRstx#%" do
        (define-key reftex-select-label-map (vector (list key))
!         (list 'lambda '() 
!               "Press `?' during selection to find out about this key."
!               '(interactive) (list 'throw '(quote myexit) key))))
  
  (loop for x in
        '(("b"        . reftex-select-jump-to-previous)
!         ("z"        . reftex-select-jump)
!         ("v"        . reftex-select-toggle-varioref)
!         ("V"        . reftex-select-toggle-fancyref)
!         ("m"        . reftex-select-mark)
!         ("u"        . reftex-select-unmark)
!         (","        . reftex-select-mark-comma)
!         ("-"        . reftex-select-mark-to)
!         ("+"        . reftex-select-mark-and)
!         ([(tab)]    . reftex-select-read-label)
!         ("\C-i"     . reftex-select-read-label)
!         ("\C-c\C-n" . reftex-select-next-heading)
!         ("\C-c\C-p" . reftex-select-previous-heading))
        do
        (define-key reftex-select-label-map (car x) (cdr x)))
  
  ;; Specific bindings in reftex-select-bib-map
  (loop for key across "grRaA" do
        (define-key reftex-select-bib-map (vector (list key))
!         (list 'lambda '() 
!               "Press `?' during selection to find out about this key."
!               '(interactive) (list 'throw '(quote myexit) key))))
  
  (loop for x in
        '(("\C-i"  . reftex-select-read-cite)
!         ([(tab)] . reftex-select-read-cite)
!         ("m"     . reftex-select-mark)
!         ("u"     . reftex-select-unmark))
        do (define-key reftex-select-bib-map (car x) (cdr x)))
+   
  
! ;;; arch-tag: 842078ff-0586-4e0b-957e-536e08218464
  ;;; reftex-sel.el ends here




reply via email to

[Prev in Thread] Current Thread [Next in Thread]