Linux 帮助文档 - 第二部分:Info

欢迎再次来到“Linux 帮助文档”系列的第二部分。在这篇博文中,我将讨论如何使用 Info 来获取 Linux 的帮助文档。在我之前的文章中,我介绍了 Info 的由来,但以防您错过了,我将再次给您一个快速的介绍。Gnu Info 由自由软件基金会创建,根据我的经验,所有 Gnu 的软件都使用它作为其“man”页面的版本。Info 可能包含比 Man 页面更多的信息,有时甚至包含比您真正需要的更多的信息。Info 的优点在于它是一个超文本标记实用程序。这使得通过嵌入在 emacs 中的超链接进行导航比简单地使用箭头键导航信息容易得多。虽然 Man 使用 Less 实用程序来控制显示,但 info 实用程序本身就是为显示 Info 页面而设计的。对于那些熟悉 emacs 的人来说,布局看起来可能相同,并且一些基本导航也相同。但这正是这两个应用程序可能不同的地方。如果您正在使用 Info 应用程序,那么您的命令将与在 Emacs 中查看 info 文件时不同。本文是关于在 info 内部阅读 Info 页面的。

布局和导航

好吧,我不会撒谎,emacs 中的导航让我头晕目眩。对于某些人来说,这可能是自然而然的事情,但对于我们这些一生都使用 vi 的人来说,“老狗学不会新把戏”这句老话在弄清楚所有 emacs 的技巧和窍门时真的击中要害。如果有人真的浏览过 gnu.org 网站上关于 Texinfo 手册的内容,您就会明白我在说什么。关于如何使用 Texinfo 的文档长达 36 页,比在 Less 中导航 Man 页面要长得多。就布局而言,章节被分解为 Info 认为的“节点”,所以如果您在这里看到对节点的引用,那就是我在说的内容。如前所述,info 文档是用超文本编写的,这使得导航比 Man 页面更容易。当您第一次执行“info <name>”时,您将看到您正在查找的主题的索引。现在在您开始过度换气之前,将 Info 布局想象成一棵树(顶层节点),各种分支从树上延伸出来(各个节点)。分支只是指向主“分支”。

在我超前之前,让我先解释一下主窗口。

在窗口底部的是所谓的模式行。模式行只是描述您在上面看到的内容,包括关于文件、节点、行数、压缩信息等的信息。以下是一些模式行的示例和解释

 zz-Info: (festival.info.gz)Top, 58 lines --Top-- Subfile
festival.info-1.gz-

*zz=压缩文件,Info=使用 Info 进行导航,festival.info.gz=名称
压缩文件,58 行=节点中的行数,festival.info-1.gz=子文件
包含更多信息

zz-Info: (screen.info.gz)Commands, 27 lines --All-- Subfile: screen.info-1.gz

*zz=压缩文件,Info=使用 Info,screen.info.gz=压缩文件的名称,
27 行=节点中的行数,screen.info-1.gz=子文件包含更多
信息

这可能对某些人有用,特别是如果您想获取 info 文件以进行进一步分析。当您第一次打开文档时,在文档顶部您将看到类似这样的内容:File: festival.info, Node: Top, Up: (dir)。File 是 festival.info,Node 是 Top,Up 是主目录。

这处理了 Info 的布局部分,如果您希望进一步探索,还有许多更高级的布局部分,例如移动窗口和文本、回显区域等等。但由于这只是使用 Info 获取信息的基本指南,因此我不会在这里介绍。但是,如果您确实想要关于此的更多信息,您的一些基本 emacs 命令在 Info 中也同样有效,因此如果您熟悉 emacs
您在使用 info 页面进行窗口操作时不会有问题

导航怎么样?如果您知道如何在 vim 或 emacs 中导航,那么这将是小菜一碟。我没有深入研究导航的高级主题是有原因的。高级主题包括窗口操作、操作窗口、在窗口中移动文本等等。

下面是一个表格,概述了您的基本导航。字符“C”是您的 Ctrl 键,而“M”代表 Meta。对于某些人来说,Meta 是 Alt 键,而对于某些人来说,它是 Esc 键。因此,如果键绑定需要“C-n”,则意味着按住 Ctrl 键并按下字母 n。

下一行:                    C-n 或 <向下> 箭头键
上一行:               C-p 或 <向上> 箭头键
行首:        C-a 或 <Home> 键
行尾:                   C-e 或 <End> 键
向前 1 个字符:    C-f 或 <向右> 箭头键
向后 1 个字符:    C-b 或 <向左> 箭头键
向前 1 个单词:           M-f 或 C-<向右> 箭头键
向后 1 个单词:        M-b 或 C-<向左> 箭头键
节点开头:      M-<
节点结尾:                M->
当前节点结尾:    e 退出 q

选择节点
下一个节点:               n
上一个节点:        p
向上一个节点:               u
上次查看的节点:  l
顶层节点:                 t
目录节点:      d
第一个节点:              <
最后一个节点:               >
全局下一个节点:    ]
全局上一个节点:    [

从这个表格中您可以看到,Man 导航和 Info 导航都可以使用箭头键进行导航,但随后添加了用于在节点周围移动的命令。但请记住,正在使用超文本语言,并且 Info 页面中的信息比 Man 页面中的信息多得多。因此,必须有一种方法来导航复杂的索引迷宫。

搜索 Info 页面

既然您已经弄清楚了如何在 Info 页面中导航,那么现在是时候找到您正在寻找的内容了。就像 Man 一样,您可以从命令行执行 apropos 搜索,以使用以下命令搜索所有 Info 文件的每个索引中的关键字:info --apropos=string,或 info -x string。这将列出字符串出现的所有实例。现在,当您实际进入冗长的 Info 页面并且需要查找信息时,您该怎么办?好吧,有一个命令可以做到!

向前搜索:                           s(字符串) 或 /(字符串)
向后搜索:                       ?(字符串)
区分大小写搜索:                S(字符串)
搜索中的下一个单词:                   n
下一个单词(区分大小写):         N
交互式向前搜索:    C-s(字符串)
交互式向后搜索: C-r(字符串)
索引搜索:                                i(字符串)

下一个索引搜索:                        ,

如您所见,一些搜索关键字就像 vim 命令一样,因此如果您熟悉 Vim,这应该很容易。在 #linuxjournal 中,一些比我更精通 emacs 的有资源的人给了我搜索 Info 的一个秘诀。我承认,如果您看不出来,我是一个 emacs 新手,因为我的整个 Linux 职业生涯都在 vi 中度过。因此,不用说,当涉及到学习新的和有趣的东西时,我会接受任何和每一个提示。Daddoo 指出,他通过执行以下操作跳转到 info 页面中的命名节点

1. m - 调出菜单项 (info 特有)

2. 输入您要查找的内容的首字母,例如 “ex”

3. 按 Tab 键 1 或 2 次以在 Info 中搜索您要查找的节点,然后选择节点以查看页面

对于你们这些资深的 emacs 用户来说,这可能看起来微不足道,但这最终成为一个非常棒且简单的命令。以前我只是用箭头键向下移动到我要查找的内容,然后按 Enter 键调出节点。啊,生活中的简单乐趣。

结论

好了,这就是关于使用 Man/Info 从 Linux 获取帮助的两部分系列的结尾。如您所见,这些实用程序中的每一个都有其优点和缺点。如果我是个赌徒,我会认为越来越多的帮助页面将被包含在 Info 页面中,因为它包含的信息比典型的 Man 页面更多,最终 manpages 将是指向 Info 的指针。我是否认为这种情况会在短期内发生?我表示怀疑,因为我对 Man 页面来说是一个脾气暴躁的老家伙。我确实意识到,当那一天到来时,我需要大量时间来适应 Info 和 emacs。

加载 Disqus 评论