Function: Info-mode
Info-mode is an autoloaded, interactive and byte-compiled function
defined in info.el.gz.
Signature
(Info-mode)
Documentation
Info mode provides commands for browsing through the Info documentation tree.
Documentation in Info is divided into "nodes", each of which discusses one topic and contains references to other nodes which discuss related topics. Info has commands to follow the references and show you other nodes.
h (Info-help) Invoke the Info tutorial.
q (quit-window) Quit Info: reselect previously selected buffer.
Selecting other nodes:
<mouse-2> (Info-mouse-follow-nearest-node)
Follow a node reference you click on.
This works with menu items, cross references, and
the "next", "previous" and "up", depending on where you click.
RET (Info-follow-nearest-node) Follow a node reference near point, like <mouse-2> (Info-mouse-follow-nearest-node).
n (Info-next) Move to the "next" node of this node.
p (Info-prev) Move to the "previous" node of this node.
^ (Info-up) Move "up" from this node.
m (Info-menu) Pick menu item specified by name (or abbreviation).
Picking a menu item causes another node to be selected.
d (Info-directory) Go to the Info directory node.
< (Info-top-node) Go to the Top node of this file.
> (Info-final-node) Go to the final node in this file.
[ (Info-backward-node) Go backward one node, considering all nodes as forming one sequence.
] (Info-forward-node) Go forward one node, considering all nodes as forming one sequence.
TAB (Info-next-reference) Move cursor to next cross-reference or menu item.
C-M-i (Info-prev-reference) Move cursor to previous cross-reference or menu item.
f (Info-follow-reference) Follow a cross reference. Reads name of reference.
l (Info-history-back) Move back in history to the last node you were at.
r (Info-history-forward) Move forward in history to the node you returned from after using l (Info-history-back).
L (Info-history) Go to menu of visited nodes.
T (Info-toc) Go to table of contents of the current Info file.
Moving within a node:
SPC (Info-scroll-up) Normally, scroll forward a full screen.
Once you scroll far enough in a node that its menu appears on the
screen but after point, the next scroll moves into its first
subnode. When after all menu items (or if there is no menu),
move up to the parent node.
DEL (Info-scroll-down) Normally, scroll backward. If the beginning of the buffer is
already visible, try to go to the previous menu entry, or up
if there is none.
b (beginning-of-buffer) Go to beginning of node.
e (end-of-buffer) Go to end of node.
Advanced commands:
s (Info-search) Search through this Info file for specified regexp,
and select the node in which the next occurrence is found.
S (Info-search-case-sensitively) Search through this Info file for specified regexp case-sensitively.
C-s (isearch-forward), C-M-s (isearch-forward-regexp) Use Isearch to search through multiple Info nodes.
i (Info-index) Search for a topic in this manual's Index and go to index entry.
, (Info-index-next) (comma) Move to the next match from a previous i (Info-index) command.
I (Info-virtual-index) Look for a string and display the index node with results.
M-x info-apropos (info-apropos) Look for a string in the indices of all manuals.
g (Info-goto-node) Move to node specified by name.
You may include a filename as well, as (FILENAME)NODENAME.
1 .. 9 Pick first ... ninth item in node's menu.
Every third * is highlighted to help pick the right number.
c (Info-copy-current-node-name) Put name of current Info node in the kill ring.
M-n (clone-buffer) Select a new cloned Info buffer in another window.
C-u (universal-argument) C-h i (info) Move to new Info file with completion.
C-u (universal-argument) N C-h i (info) Select Info buffer with prefix number in the name *info*<N>.
In addition to any hooks its parent mode special-mode might have run,
this mode runs the hook Info-mode-hook, as the final or penultimate
step during initialization.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/info.el.gz
;; Autoload cookie needed by desktop.el
;;;###autoload
(define-derived-mode Info-mode special-mode "Info"
"Info mode provides commands for browsing through the Info documentation tree.
Documentation in Info is divided into \"nodes\", each of which discusses
one topic and contains references to other nodes which discuss related
topics. Info has commands to follow the references and show you other nodes.
\\<Info-mode-map>\
\\[Info-help] Invoke the Info tutorial.
\\[quit-window] Quit Info: reselect previously selected buffer.
Selecting other nodes:
\\[Info-mouse-follow-nearest-node]
Follow a node reference you click on.
This works with menu items, cross references, and
the \"next\", \"previous\" and \"up\", depending on where you click.
\\[Info-follow-nearest-node] Follow a node reference near point, like \\[Info-mouse-follow-nearest-node].
\\[Info-next] Move to the \"next\" node of this node.
\\[Info-prev] Move to the \"previous\" node of this node.
\\[Info-up] Move \"up\" from this node.
\\[Info-menu] Pick menu item specified by name (or abbreviation).
Picking a menu item causes another node to be selected.
\\[Info-directory] Go to the Info directory node.
\\[Info-top-node] Go to the Top node of this file.
\\[Info-final-node] Go to the final node in this file.
\\[Info-backward-node] Go backward one node, considering all nodes as forming one sequence.
\\[Info-forward-node] Go forward one node, considering all nodes as forming one sequence.
\\[Info-next-reference] Move cursor to next cross-reference or menu item.
\\[Info-prev-reference] Move cursor to previous cross-reference or menu item.
\\[Info-follow-reference] Follow a cross reference. Reads name of reference.
\\[Info-history-back] Move back in history to the last node you were at.
\\[Info-history-forward] Move forward in history to the node you returned from after using \\[Info-history-back].
\\[Info-history] Go to menu of visited nodes.
\\[Info-toc] Go to table of contents of the current Info file.
Moving within a node:
\\[Info-scroll-up] Normally, scroll forward a full screen.
Once you scroll far enough in a node that its menu appears on the
screen but after point, the next scroll moves into its first
subnode. When after all menu items (or if there is no menu),
move up to the parent node.
\\[Info-scroll-down] Normally, scroll backward. If the beginning of the buffer is
already visible, try to go to the previous menu entry, or up
if there is none.
\\[beginning-of-buffer] Go to beginning of node.
\\[end-of-buffer] Go to end of node.
Advanced commands:
\\[Info-search] Search through this Info file for specified regexp,
and select the node in which the next occurrence is found.
\\[Info-search-case-sensitively] Search through this Info file for specified regexp case-sensitively.
\\[isearch-forward], \\[isearch-forward-regexp] Use Isearch to search through multiple Info nodes.
\\[Info-index] Search for a topic in this manual's Index and go to index entry.
\\[Info-index-next] (comma) Move to the next match from a previous \\<Info-mode-map>\\[Info-index] command.
\\[Info-virtual-index] Look for a string and display the index node with results.
\\[info-apropos] Look for a string in the indices of all manuals.
\\[Info-goto-node] Move to node specified by name.
You may include a filename as well, as (FILENAME)NODENAME.
1 .. 9 Pick first ... ninth item in node's menu.
Every third `*' is highlighted to help pick the right number.
\\[Info-copy-current-node-name] Put name of current Info node in the kill ring.
\\[clone-buffer] Select a new cloned Info buffer in another window.
\\[universal-argument] \\[info] Move to new Info file with completion.
\\[universal-argument] N \\[info] Select Info buffer with prefix number in the name *info*<N>."
:syntax-table Info-mode-syntax-table
:abbrev-table text-mode-abbrev-table
(setq tab-width 8)
(add-hook 'activate-menubar-hook 'Info-menu-update nil t)
(setq case-fold-search t)
(setq buffer-read-only t)
(setq Info-tag-table-marker (make-marker))
(unless (or (display-multi-font-p)
(and (coding-system-equal
(coding-system-base (terminal-coding-system))
'utf-8)
;; The Linux console has limited character
;; repertoire even when its encoding is UTF-8.
(not (equal (tty-type) "linux"))))
(dolist (elt info-symbols-and-replacements)
(let ((ch (car elt))
(repl (cdr elt)))
(or (char-displayable-p ch)
(aset (or buffer-display-table
(setq buffer-display-table (make-display-table)))
ch (vconcat (mapcar (lambda (c)
(make-glyph-code c 'homoglyph))
repl)))))))
(if Info-use-header-line ; do not override global header lines
(setq header-line-format
'(:eval (get-text-property (point-min) 'header-line))))
(setq-local tool-bar-map info-tool-bar-map)
;; This is for the sake of the invisible text we use handling titles.
(setq-local line-move-ignore-invisible t)
(setq-local desktop-save-buffer 'Info-desktop-buffer-misc-data)
(setq-local widen-automatically nil)
(add-hook 'kill-buffer-hook 'Info-kill-buffer nil t)
(add-hook 'clone-buffer-hook 'Info-clone-buffer nil t)
(add-hook 'change-major-mode-hook 'font-lock-defontify nil t)
(add-hook 'isearch-mode-hook 'Info-isearch-start nil t)
(add-hook 'context-menu-functions 'Info-context-menu 5 t)
(when Info-standalone
(add-hook 'quit-window-hook 'save-buffers-kill-emacs nil t))
(setq-local isearch-search-fun-function #'Info-isearch-search)
(setq-local isearch-wrap-function #'Info-isearch-wrap)
(setq-local isearch-push-state-function #'Info-isearch-push-state)
(setq-local isearch-filter-predicate #'Info-isearch-filter)
(setq-local revert-buffer-function #'Info-revert-buffer-function)
(setq-local font-lock-defaults '(Info-mode-font-lock-keywords t t))
(Info-set-mode-line)
(setq-local bookmark-make-record-function #'Info-bookmark-make-record)
(unless search-default-mode
(isearch-fold-quotes-mode)))