GNU Info

Last update: 2021-12-23 11:03:52 +0800 +0800
Available translations: 日本語 / 中文(简体) / 中文(繁體)

GNU Info is the terminal reader for manuals generated from Texinfo. It is not a pager for a linear text file: an Info file contains named nodes joined by menus, cross-references, and Next, Prev, and Up pointers. An installed manual can be split across several compressed filesystem files, but Info presents it as one manual.

Start with the Manual Tree #

Run info without an argument to open the directory node, the installed manual tree. Run info coreutils or info '(coreutils)Top' to open a named manual and node.

sh
info
info bash
info '(gitman)git-config'

The argument syntax is '(file)node'; quote it so the shell cannot interpret special characters. A missing manual indicates that the package providing its Info files is not installed or its Info directory is not on the search path.

Traverse Nodes rather than Pages #

Use the node structure for targeted reading:

KeyAction
n, p, uFollow the Next, Prev, or Up pointer.
t, dGo to the manual’s Top node or the directory node.
mSelect an item from the current menu.
fFollow a cross-reference.
gGo to a node by name.
lReturn through visited-node history.

n and p follow the node hierarchy, whereas [ and ] move in the manual’s sequential node order. Treat the former as structure navigation and the latter as book-style reading; they can reach different nodes.

Read, Search, and Return #

SPC scrolls forward and may continue to the next node at the end; DEL or Backspace scrolls backward. C-v scrolls forward without leaving the current node. b and e move to the beginning and end of a node.

Use s to search forward and repeat the search with s. i searches the manual’s index, which is often more precise than full-text search for command or option names. l returns through node history after following a cross-reference.

Press H for the reader’s built-in keybinding help and q to quit. Info uses Emacs-style notation: C-x means Ctrl+x and M-x means Meta+x. On terminals that map Alt to Meta, M-x is Alt+x. M-x also runs a command by name, which is useful when a terminal or local configuration changes a binding.

Account for Reader Differences #

The stand-alone info program and Emacs Info expose similar node concepts but can differ in bindings, display, customization, and mouse behavior. A pager such as less scrolls a byte stream; Info retains node links, menus, history, and an index. Use info --help, H, or the installed Info manual to confirm the binding provided by the reader on the current system.

Comments

Read or comment on GitHub (sign-in required to comment)