1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-28 10:56:36 +00:00

Add a new command `info-display-manual'.

lisp/info.el (info-display-manual): New function.
This commit is contained in:
Eli Zaretskii 2011-04-01 13:10:47 +03:00
parent 63139bfa89
commit 0f0c1f27a9
3 changed files with 33 additions and 0 deletions

View File

@ -676,6 +676,14 @@ binding `log-view-expanded-log-entry-function' to a suitable function.
*** New command `nato-region' converts text to NATO phonetic alphabet.
*** The new command `info-display-manual' will display an Info manual
specified by its name. If that manual is already visited in some Info
buffer within the current session, the command will display that
buffer. Otherwise, it will load the manual and display it. This is
handy if you have many manuals in many Info buffers, and don't
remember the name of the buffer visiting the manual you want to
consult.
* New Modes and Packages in Emacs 24.1

View File

@ -1,3 +1,7 @@
2011-04-01 Eli Zaretskii <eliz@gnu.org>
* info.el (info-display-manual): New function.
2011-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
* loadup.el: Load minibuffer after loaddefs, to use define-minor-mode.

View File

@ -4930,6 +4930,27 @@ type returned by `Info-bookmark-make-record', which see."
(bookmark-default-handler
`("" (buffer . ,buf) . ,(bookmark-get-bookmark-record bmk)))))
;;;###autoload
(defun info-display-manual (manual)
"Go to Info buffer that displays MANUAL, creating it if none already exists."
(interactive "sManual name: ")
(let ((blist (buffer-list))
(manual-re (concat "\\(/\\|\\`\\)" manual "\\(\\.\\|\\'\\)"))
(case-fold-search t)
found)
(dolist (buffer blist)
(with-current-buffer buffer
(when (and (eq major-mode 'Info-mode)
(stringp Info-current-file)
(string-match manual-re Info-current-file))
(setq found buffer
blist nil))))
(if found
(pop-to-buffer found)
(info-initialize)
(info (Info-find-file manual)))))
(provide 'info)
;;; info.el ends here