[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r100616: Fix revert-buffer functional
From: |
Juri Linkov |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r100616: Fix revert-buffer functionality of Help mode and Info. |
Date: |
Thu, 17 Jun 2010 23:56:17 +0300 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 100616
committer: Juri Linkov <address@hidden>
branch nick: trunk
timestamp: Thu 2010-06-17 23:56:17 +0300
message:
Fix revert-buffer functionality of Help mode and Info.
* lisp/help-mode.el (help-mode): Set buffer-local variable
revert-buffer-function to help-mode-revert-buffer.
(help-mode-revert-buffer): New function.
* lisp/info.el (Info-revert-find-node): Check for major-mode Info-mode
before popping to "*info*" (like in other Info functions).
Keep buffer-name in old-buffer-name. Keep Info-history-forward in
old-history-forward. Pop to old-buffer-name or "*info*" to
recreate the killed buffer. Set Info-history-forward from
old-history-forward.
(Info-breadcrumbs-depth): Add :group and :version.
modified:
lisp/ChangeLog
lisp/help-mode.el
lisp/info.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2010-06-17 16:41:13 +0000
+++ b/lisp/ChangeLog 2010-06-17 20:56:17 +0000
@@ -1,3 +1,17 @@
+2010-06-17 Juri Linkov <address@hidden>
+
+ * help-mode.el (help-mode): Set buffer-local variable
+ revert-buffer-function to help-mode-revert-buffer.
+ (help-mode-revert-buffer): New function.
+
+ * info.el (Info-revert-find-node): Check for major-mode Info-mode
+ before popping to "*info*" (like in other Info functions).
+ Keep buffer-name in old-buffer-name. Keep Info-history-forward in
+ old-history-forward. Pop to old-buffer-name or "*info*" to
+ recreate the killed buffer. Set Info-history-forward from
+ old-history-forward.
+ (Info-breadcrumbs-depth): Add :group and :version.
+
2010-06-17 Dan Nicolaescu <address@hidden>
* emacs-lisp/package.el (package-menu-mode-map): Add a menu.
=== modified file 'lisp/help-mode.el'
--- a/lisp/help-mode.el 2010-05-20 23:54:55 +0000
+++ b/lisp/help-mode.el 2010-06-17 20:56:17 +0000
@@ -272,6 +272,9 @@
(with-current-buffer buffer
(bury-buffer))))
+ (set (make-local-variable 'revert-buffer-function)
+ 'help-mode-revert-buffer)
+
(run-mode-hooks 'help-mode-hook))
;;;###autoload
@@ -783,6 +786,17 @@
(fboundp sym) (facep sym))
(help-do-xref pos #'help-xref-interned (list sym)))))
+(defun help-mode-revert-buffer (ignore-auto noconfirm)
+ (when (or noconfirm (yes-or-no-p "Revert help buffer? "))
+ (let ((pos (point))
+ (item help-xref-stack-item)
+ ;; Pretend there is no current item to add to the history.
+ (help-xref-stack-item nil)
+ ;; Use the current buffer.
+ (help-xref-following t))
+ (apply (car item) (cdr item))
+ (goto-char pos))))
+
(defun help-insert-string (string)
"Insert STRING to the help buffer and install xref info for it.
This function can be used to restore the old contents of the help buffer
=== modified file 'lisp/info.el'
--- a/lisp/info.el 2010-05-10 19:07:22 +0000
+++ b/lisp/info.el 2010-06-17 20:56:17 +0000
@@ -238,7 +238,9 @@
(defcustom Info-breadcrumbs-depth 4
"Depth of breadcrumbs to display.
0 means do not display breadcrumbs."
- :type 'integer)
+ :version "23.1"
+ :type 'integer
+ :group 'info)
(defcustom Info-search-whitespace-regexp "\\s-+"
"If non-nil, regular expression to match a sequence of whitespace chars.
@@ -800,17 +802,22 @@
"Go to an Info node FILENAME and NODENAME, re-reading disk contents.
When *info* is already displaying FILENAME and NODENAME, the window position
is preserved, if possible."
- (pop-to-buffer "*info*")
+ (or (eq major-mode 'Info-mode) (pop-to-buffer "*info*"))
(let ((old-filename Info-current-file)
(old-nodename Info-current-node)
+ (old-buffer-name (buffer-name))
(pcolumn (current-column))
(pline (count-lines (point-min) (line-beginning-position)))
(wline (count-lines (point-min) (window-start)))
+ (old-history-forward Info-history-forward)
(old-history Info-history)
(new-history (and Info-current-file
(list Info-current-file Info-current-node (point)))))
(kill-buffer (current-buffer))
+ (pop-to-buffer (or old-buffer-name "*info*"))
+ (Info-mode)
(Info-find-node filename nodename)
+ (setq Info-history-forward old-history-forward)
(setq Info-history old-history)
(if (and (equal old-filename Info-current-file)
(equal old-nodename Info-current-node))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r100616: Fix revert-buffer functionality of Help mode and Info.,
Juri Linkov <=