diff options
| -rw-r--r-- | lisp/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/cedet/semantic/senator.el | 20 | ||||
| -rw-r--r-- | lisp/register.el | 13 |
3 files changed, 18 insertions, 20 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 876e48db9fd..6dac08e6c56 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2009-11-15 Chong Yidong <cyd@stupidchicken.com> | ||
| 2 | |||
| 3 | * register.el (jump-to-register, insert-register): Handle Semantic | ||
| 4 | tags. From commented-out advice in semantic/senator.el. | ||
| 5 | |||
| 1 | 2009-11-15 Dan Nicolaescu <dann@ics.uci.edu> | 6 | 2009-11-15 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 7 | ||
| 3 | * vc.el (vc-log-show-limit): New variable. | 8 | * vc.el (vc-log-show-limit): New variable. |
diff --git a/lisp/cedet/semantic/senator.el b/lisp/cedet/semantic/senator.el index 522b655c208..d9dda249957 100644 --- a/lisp/cedet/semantic/senator.el +++ b/lisp/cedet/semantic/senator.el | |||
| @@ -857,26 +857,6 @@ Use a senator search function when semantic isearch mode is enabled." | |||
| 857 | ;; [(control ?,)] | 857 | ;; [(control ?,)] |
| 858 | ;; 'senator-isearch-toggle-semantic-mode) | 858 | ;; 'senator-isearch-toggle-semantic-mode) |
| 859 | 859 | ||
| 860 | ;; (defadvice insert-register (around senator activate) | ||
| 861 | ;; "Insert contents of register REGISTER as a tag. | ||
| 862 | ;; If senator is not active, use the original mechanism." | ||
| 863 | ;; (let ((val (get-register (ad-get-arg 0)))) | ||
| 864 | ;; (if (and senator-minor-mode (interactive-p) | ||
| 865 | ;; (semantic-foreign-tag-p val)) | ||
| 866 | ;; (semantic-insert-foreign-tag val) | ||
| 867 | ;; ad-do-it))) | ||
| 868 | |||
| 869 | ;; (defadvice jump-to-register (around senator activate) | ||
| 870 | ;; "Insert contents of register REGISTER as a tag. | ||
| 871 | ;; If senator is not active, use the original mechanism." | ||
| 872 | ;; (let ((val (get-register (ad-get-arg 0)))) | ||
| 873 | ;; (if (and senator-minor-mode (interactive-p) | ||
| 874 | ;; (semantic-foreign-tag-p val)) | ||
| 875 | ;; (progn | ||
| 876 | ;; (switch-to-buffer (semantic-tag-buffer val)) | ||
| 877 | ;; (goto-char (semantic-tag-start val))) | ||
| 878 | ;; ad-do-it))) | ||
| 879 | |||
| 880 | (provide 'semantic/senator) | 860 | (provide 'semantic/senator) |
| 881 | 861 | ||
| 882 | ;; Local variables: | 862 | ;; Local variables: |
diff --git a/lisp/register.el b/lisp/register.el index 4144bba7d0b..2800fd96ee3 100644 --- a/lisp/register.el +++ b/lisp/register.el | |||
| @@ -28,6 +28,10 @@ | |||
| 28 | ;; pieces of buffer state to named variables. The entry points are | 28 | ;; pieces of buffer state to named variables. The entry points are |
| 29 | ;; documented in the Emacs user's manual. | 29 | ;; documented in the Emacs user's manual. |
| 30 | 30 | ||
| 31 | (declare-function semantic-insert-foreign-tag "semantic/tag" (foreign-tag)) | ||
| 32 | (declare-function semantic-tag-buffer "semantic/tag" (tag)) | ||
| 33 | (declare-function semantic-tag-start "semantic/tag" (tag)) | ||
| 34 | |||
| 31 | ;;; Global key bindings | 35 | ;;; Global key bindings |
| 32 | 36 | ||
| 33 | (define-key ctl-x-r-map "\C-@" 'point-to-register) | 37 | (define-key ctl-x-r-map "\C-@" 'point-to-register) |
| @@ -135,6 +139,11 @@ delete any existing frames that the frame configuration doesn't mention. | |||
| 135 | (error "Register access aborted")) | 139 | (error "Register access aborted")) |
| 136 | (find-file (nth 1 val)) | 140 | (find-file (nth 1 val)) |
| 137 | (goto-char (nth 2 val))) | 141 | (goto-char (nth 2 val))) |
| 142 | ((and (fboundp 'semantic-foreign-tag-p) | ||
| 143 | semantic-mode | ||
| 144 | (semantic-foreign-tag-p val)) | ||
| 145 | (switch-to-buffer (semantic-tag-buffer val)) | ||
| 146 | (goto-char (semantic-tag-start val))) | ||
| 138 | (t | 147 | (t |
| 139 | (error "Register doesn't contain a buffer position or configuration"))))) | 148 | (error "Register doesn't contain a buffer position or configuration"))))) |
| 140 | 149 | ||
| @@ -284,6 +293,10 @@ Interactively, second arg is non-nil if prefix arg is supplied." | |||
| 284 | (princ val (current-buffer))) | 293 | (princ val (current-buffer))) |
| 285 | ((and (markerp val) (marker-position val)) | 294 | ((and (markerp val) (marker-position val)) |
| 286 | (princ (marker-position val) (current-buffer))) | 295 | (princ (marker-position val) (current-buffer))) |
| 296 | ((and (fboundp 'semantic-foreign-tag-p) | ||
| 297 | semantic-mode | ||
| 298 | (semantic-foreign-tag-p val)) | ||
| 299 | (semantic-insert-foreign-tag val)) | ||
| 287 | (t | 300 | (t |
| 288 | (error "Register does not contain text")))) | 301 | (error "Register does not contain text")))) |
| 289 | (if (not arg) (exchange-point-and-mark))) | 302 | (if (not arg) (exchange-point-and-mark))) |