GNU bug report logs -
#14052
24.3; [PATCH] Cleanup for register.el
Previous Next
Reported by: Leo Liu <sdl.web <at> gmail.com>
Date: Mon, 25 Mar 2013 15:44:02 UTC
Severity: normal
Tags: patch
Found in version 24.3
Done: Leo Liu <sdl.web <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Tue, 26 Mar 2013 10:54:01 +0800
with message-id <m1d2umlvli.fsf <at> gmail.com>
and subject line Re: bug#14052: 24.3; [PATCH] Cleanup for register.el
has caused the debbugs.gnu.org bug report #14052,
regarding 24.3; [PATCH] Cleanup for register.el
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
14052: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14052
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
I would like to install the following cleanup for register.el.
David, could you help check the change to senator.el? Thanks.
Leo
diff --git a/lisp/cedet/semantic/senator.el b/lisp/cedet/semantic/senator.el
index a79e70a7..157223ff 100644
--- a/lisp/cedet/semantic/senator.el
+++ b/lisp/cedet/semantic/senator.el
@@ -727,7 +727,13 @@ (defun senator-copy-tag-to-register (register &optional kill-flag)
(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))))))
diff --git a/lisp/register.el b/lisp/register.el
index ae2f7cf3..4876c614 100644
--- a/lisp/register.el
+++ b/lisp/register.el
@@ -31,10 +31,6 @@
(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
@@ -174,11 +170,6 @@ (defun jump-to-register (register &optional delete)
(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")))))
@@ -349,10 +340,6 @@ (defun insert-register (register &optional arg)
(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)))
[Message part 3 (message/rfc822, inline)]
Fixed in trunk.
On 2013-03-26 05:15 +0800, David Engster wrote:
> Since which version is registerv-make supported? I couldn't find
> anything in NEWS.
It was added on 26 Jun 2011. I am not sure if it is in 23.4 release but
definitely in 24.x releases.
Thanks.
Leo
This bug report was last modified 12 years and 58 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.