以自然阅读顺序浏览 Emacs/Unix 信息
Navigating Emacs/Unix info in natural reading order
Emacs/Unix info
是一个很好的文档结构,这种格式有重要的信息。
导航是使用树形导航完成的,例如 up
、next-on-same-level
a.s.o。
这意味着如果不观察树结构和 "natural next" 节点所在的位置(向上一层,然后是下一层,从上一节转到下一章介绍...)
或者有没有一个function/key总是会把我带到下一个节点去阅读?我认为这将是树的预序遍历。
有一个交互式 Elisp 功能:
(Info-next-preorder)
(默认情况下未绑定到键)这样做:
Go to the next subnode or the next node, or go up a level.
也许这个问题属于 (emacs)
...
稍稍探索一下 Emacs 菜单就会发现 Info->Forward Node
运行 Info-forward-node
,这似乎完全符合要求。默认绑定到]
:
Go forward one node, considering all nodes as forming one sequence.
类似地 Info-backward-node
也存在并绑定到 [
。
我不知道 所建议的 Info-next-preorder
的区别,因为关于这两个函数的文档是有限的。
你描述的行为似乎正是我通过使用得到的行为
space 栏在信息中移动。 info-scroll-up(绑定到 space)的文档说
Scroll one screenful forward in Info, considering all nodes as one
sequence. 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, unless ‘Info-scroll-prefer-subnodes’ is nil.
When you scroll past the end of a node, that goes to the next node if
‘Info-scroll-prefer-subnodes’ is non-nil and to the first subnode
otherwise; if this node has no successor, it moves to the parent
node’s successor, and so on. If ‘Info-scroll-prefer-subnodes’ is
non-nil and point is inside the menu of a node, it moves to subnode
indicated by the following menu item. (That case won’t normally
result from this command, but can happen in other ways.)
@TimX 提供了答案:使用 SPC
(或 DEL
,用于向后)。
此外,如果您使用 Icicles,那么您可以只对 与您的完成输入匹配的节点执行相同的操作 for g
(命令Info-goto-node
):按书本顺序在这些节点之间移动。
默认情况下,候选节点补全是按字母顺序排列的,这样便于识别,但通常不适合循环。
但是,无论何时您使用一个接受您的输入并完成的命令,Icicles 都可以让您以各种方式快速对完成候选进行排序(使用 C-,
)。
对于 g
,Info 中可能的排序顺序之一是 in book order
。只需使用 C-,
并选择候选 in book order
即可更改为此顺序。
您也可以获得此行为 ,而无需 使用 C-,
更改排序顺序,对于您想要按书本顺序导航节点的特定情况,和将它们限制在本书其余部分中的节点,即那些跟在当前节点之后的节点。对于这个用例,只需提供一个否定前缀 arg:C-- g
。 (本例中第一个候选节点为..
,即向上父节点。)
(要在作为完成候选的节点之间循环,只需在完成期间重复使用 C-down
。要乱序访问任何特定节点 完成时,用down
循环到*Completions*
,然后用C-RET
来选择它 - 或者只使用 C-mouse-2
在 *Completions*
中选择它。)
Emacs/Unix info
是一个很好的文档结构,这种格式有重要的信息。
导航是使用树形导航完成的,例如 up
、next-on-same-level
a.s.o。
这意味着如果不观察树结构和 "natural next" 节点所在的位置(向上一层,然后是下一层,从上一节转到下一章介绍...)
或者有没有一个function/key总是会把我带到下一个节点去阅读?我认为这将是树的预序遍历。
有一个交互式 Elisp 功能:
(Info-next-preorder)
(默认情况下未绑定到键)这样做:
Go to the next subnode or the next node, or go up a level.
也许这个问题属于 (emacs)
...
稍稍探索一下 Emacs 菜单就会发现 Info->Forward Node
运行 Info-forward-node
,这似乎完全符合要求。默认绑定到]
:
Go forward one node, considering all nodes as forming one sequence.
类似地 Info-backward-node
也存在并绑定到 [
。
我不知道 Info-next-preorder
的区别,因为关于这两个函数的文档是有限的。
你描述的行为似乎正是我通过使用得到的行为 space 栏在信息中移动。 info-scroll-up(绑定到 space)的文档说
Scroll one screenful forward in Info, considering all nodes as one sequence. 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, unless ‘Info-scroll-prefer-subnodes’ is nil.
When you scroll past the end of a node, that goes to the next node if ‘Info-scroll-prefer-subnodes’ is non-nil and to the first subnode otherwise; if this node has no successor, it moves to the parent node’s successor, and so on. If ‘Info-scroll-prefer-subnodes’ is non-nil and point is inside the menu of a node, it moves to subnode indicated by the following menu item. (That case won’t normally result from this command, but can happen in other ways.)
@TimX 提供了答案:使用 SPC
(或 DEL
,用于向后)。
此外,如果您使用 Icicles,那么您可以只对 与您的完成输入匹配的节点执行相同的操作 for g
(命令Info-goto-node
):按书本顺序在这些节点之间移动。
默认情况下,候选节点补全是按字母顺序排列的,这样便于识别,但通常不适合循环。
但是,无论何时您使用一个接受您的输入并完成的命令,Icicles 都可以让您以各种方式快速对完成候选进行排序(使用 C-,
)。
对于 g
,Info 中可能的排序顺序之一是 in book order
。只需使用 C-,
并选择候选 in book order
即可更改为此顺序。
您也可以获得此行为 ,而无需 使用 C-,
更改排序顺序,对于您想要按书本顺序导航节点的特定情况,和将它们限制在本书其余部分中的节点,即那些跟在当前节点之后的节点。对于这个用例,只需提供一个否定前缀 arg:C-- g
。 (本例中第一个候选节点为..
,即向上父节点。)
(要在作为完成候选的节点之间循环,只需在完成期间重复使用 C-down
。要乱序访问任何特定节点 完成时,用down
循环到*Completions*
,然后用C-RET
来选择它 - 或者只使用 C-mouse-2
在 *Completions*
中选择它。)