+2013-03-26 Leo Liu <sdl.web@gmail.com>
+
+ * register.el: Move semantic tag handling back to
+ cedet/semantic/senator.el. (Bug#14052)
+
2013-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
* eshell/em-prompt.el (eshell-emit-prompt): Make sure we can't insert
+2013-03-26 Leo Liu <sdl.web@gmail.com>
+
+ * semantic/senator.el (senator-copy-tag-to-register): Move
+ register handling logic from register.el. (Bug#14052)
+
2013-03-21 Eric Ludlam <zappo@gnu.org>
* semantic.el (navigate-menu): Yank Tag :enable. Make sure
(semantic-fetch-tags)
(let ((ft (semantic-obtain-foreign-tag)))
(when ft
- (set-register register ft)
+ (set-register
+ register (registerv-make
+ ft
+ :insert-func #'semantic-insert-foreign-tag
+ :jump-func (lambda (v)
+ (switch-to-buffer (semantic-tag-buffer v))
+ (goto-char (semantic-tag-start v)))))
(if kill-flag
(kill-region (semantic-tag-start ft)
(semantic-tag-end ft))))))
(eval-when-compile (require 'cl-lib))
-(declare-function semantic-insert-foreign-tag "semantic/tag" (foreign-tag))
-(declare-function semantic-tag-buffer "semantic/tag" (tag))
-(declare-function semantic-tag-start "semantic/tag" (tag))
-
;;; Code:
(cl-defstruct
(error "Register access aborted"))
(find-file (nth 1 val))
(goto-char (nth 2 val)))
- ((and (fboundp 'semantic-foreign-tag-p)
- semantic-mode
- (semantic-foreign-tag-p val))
- (switch-to-buffer (semantic-tag-buffer val))
- (goto-char (semantic-tag-start val)))
(t
(error "Register doesn't contain a buffer position or configuration")))))
(princ val (current-buffer)))
((and (markerp val) (marker-position val))
(princ (marker-position val) (current-buffer)))
- ((and (fboundp 'semantic-foreign-tag-p)
- semantic-mode
- (semantic-foreign-tag-p val))
- (semantic-insert-foreign-tag val))
(t
(error "Register does not contain text"))))
(if (not arg) (exchange-point-and-mark)))