算法停电:
- 问题:找到匹配的文件
- 问题:堆叠/缓冲匹配
- 将光标移动到堆栈的下一个文件,从而移动到匹配的位置
- 重复步骤2
我之前用过的东西来解决这个问题。
Vi/m: (下面的代码在 ubuntu 服务器上运行,可能由系统管理员配置,但无法在本地运行)
:grep -r "[^|]*|[^|]*|[^|]*|.*" *
<edit something>
:cn
<edit something>
:cn
<damn forgot it>
:bn
<forward and so on>
emacs: M-x grep Enter
然后拥有grep -r "[^|]*|[^|]*|[^|]*|.*" *
,但现在却是神秘的。如何进行快速分层编辑?
贝壳风格:然后我曾经用一些 grep-xargs-something-things-vi 创建了一个狂野的单行,但我开始闻到重新发明轮子的味道。
很抱歉 vim/emacs 并置,但我不在乎你使用哪个工具,使用最方便的(xargs/emacs/vi/m 只是示例)。
答案1
M-xgrep
在 Emacs 中,然后我可以使用常用的按键用于跟踪代表找到的匹配项的链接,以及用于在缓冲区之间来回切换(或用于我想要的任何内容)的常用通用 Emacs 键。
人们还可以学习跳到下一场比赛的专用键。
立即跳转到下一个找到的匹配项的“专用”键很容易记住:它是M-g n(G哦到n分机) (或C-x `) 为next-error
.是一个比仅仅用于;next-error
更通用的命令。grep
来自帮助(每C-h k M-g n):
[它]通常使用最近开始的编译、grep 或发生缓冲区。
(事实上,首先我是为了 LaTeX“编译”而学习的。)
更多与我的 Emacs 中的键绑定的常规“转到”命令(按照M-g C-h):
全局绑定始于M-g: 键绑定 --- -------- M-g ESC 前缀命令 M-g ggoto-line
M-g nnext-error
M-g pprevious-error
M-g M-ggoto-line
M-g M-nnext-error
M-g M-pprevious-error