我很长一段时间以来一直混合使用emacs
和vi
( )。vim
他们每个人都有自己的优势。我解析类似编译过程的错误输出并获取行号和列号,但我只能用来emacs
直接转到行号和列号:
emacs +15:25 myfile.xml
我vi
只有行号(根据手册页)
vi +15 myfile.xml
有一个选项可以将光标定位在模式(vi +/pattern myfile.xml
)上,但我从未使用过。但这对我没有帮助,因为该模式并不总是文件中第一次出现。
我如何开始vi
才能使其转到文件第 15 行第 25 列?我可以用-c
选项做一些事情吗?
答案1
您可以使用:
vi '+normal 15G25|' myfile.xml
答案2
随着文件行插件,您可以简单地将行和列附加到文件名,无论是在调用 Vim 时还是在内部使用以下命令:edit
:
vim myfile.xml:15:25
答案3
只是为了好玩,它-c 'normal 14j24l'
会让你在第 15 行字符 25
答案4
值得注意:
-c command
启动时运行给定的 ex 命令。vi 只允许有一个 -c 选项; Vim 最多接受 10 个。+command
仍然支持此选项的旧形式 。
使用时具有+command
相同的单一限制。ex command
vi
也仅限+/pattern
于一个带有 的命令vi
。
( 取自vim 和 ex 编辑器)