5

In emacs C-h i opens the built-in help. One can then navigate through the different so-called nodes and learn everything. I could not learn one thing though; how can I search the manual?

As an example, say I want to find all the nodes that contains the word agenda in them - can I do it somehow?

4 Answers 4

4

You can also use M-x emacs-index-search to search for some keywords in the Emacs manual's index.

3

Just press the key s:

s searches Info documents

The commands which move between and inside nodes allow you to read the entire manual or its large portions. But what if you need to find some information in the manual as fast as you can, and you don't know or don't remember in what node to look for it? This need arises when you use a manual as a reference, or when it is impractical to read the entire manual before you start using the programs it describes.

Info has powerful searching facilities that let you find things quickly. You can search either the manual text or its indices.

The s command allows you to search a whole Info file for a string. It switches to the next node if and when that is necessary. You type s followed by the string to search for, terminated by RET. To search for the same string again, just s followed by RET will do. The file's nodes are scanned in the order they are in the file, which has no necessary relationship to the order that they may be in the tree structure of menus and ‘next’ pointers. But normally the two orders are not very different. In any case, you can always look at the mode line to find out what node you have reached, if the header is not visible (this can happen, because s puts your cursor at the occurrence of the string, not at the beginning of the node).

Instead of using s in Emacs Info and in the stand-alone Info, you can use an incremental search started with C-s or C-r. It can search through multiple Info nodes. See Incremental Search. In Emacs, you can disable this behavior by setting the variable Info-isearch-search to nil (see Emacs Info Variables).

http://www.gnu.org/software/emacs/manual/html_node/info/Search-Text.html#Search-Text

More info:

http://www.gnu.org/software/emacs/manual/html_node/info/Advanced.html#Advanced

2
  • 3
    it seems like s doesn't work when I'm in the top-most level of info (where I see a long list of modes). So the question remains, how to search for something, while not knowing where it is actually defined.
    – Dror
    Oct 27, 2013 at 15:46
  • 1
    You should at least know if it is in the emacs manual or the org manual, etc. If you don't then you can use C-h F (note the capital F) for commands and it jumps right to the relevant info page. Try it with forward-char for example.
    – Tom
    Oct 27, 2013 at 16:10
0

You can use i to search the index of the manual, with tab completion.

You can also use interactive search, C-s. It starts by searching in the current node, but if you type a search term and hit C-s again, it will search for that text in subsequent nodes as well.

0

Info search does not search node names per se. It will only find node-name matches if the same search string matches the title of the node or something else in the node text. The title is typically, but not always, the same as the node name. But searching this way typically means hitting zillions of other search hits throughout the manual.

Info command g (Info-goto-node) can help, because it matches only node names. But it can help here only if it provides substring or regexp matching. Ido mode will at least give you substring matching. But you can do better with Icicles.

Icicles command icicle-Info-goto-node (g in Info when in Icicle mode) gives you matching directly against node names, or node content, or both. It is a multi-command, so you can visit multiple nodes in the same command invocation. Here is more info about this.

(And yes, you must first choose a manual to search.)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .