我已经开始使用Vim来开发Perl脚本,并开始发现它非常强大。
我喜欢的一件事是能够同时打开多个文件:
vi main.pl maintenance.pl
然后在他们之间跳来跳去
:n
:prev
然后查看哪个文件是打开的:
:args
要添加一个文件,我可以说:
:n test.pl
我希望它会被添加到我的文件列表中,但相反,它会清除我当前的文件列表,当我输入:args时,我只有test.pl打开。
那么我如何在我的args列表中添加和删除文件?
我已经开始使用Vim来开发Perl脚本,并开始发现它非常强大。
我喜欢的一件事是能够同时打开多个文件:
vi main.pl maintenance.pl
然后在他们之间跳来跳去
:n
:prev
然后查看哪个文件是打开的:
:args
要添加一个文件,我可以说:
:n test.pl
我希望它会被添加到我的文件列表中,但相反,它会清除我当前的文件列表,当我输入:args时,我只有test.pl打开。
那么我如何在我的args列表中添加和删除文件?
当前回答
您可能希望使用Vim全局标记。
通过这种方式,您可以快速地在文件之间来回切换,甚至跳转到文件中标记的位置。此外,关键命令也很短: C会带我找到我正在处理的代码, T把我带到了我正在使用的单元测试。
当你改变位置时,重置标记也很快: mC标记新的代码点, mT标志着新的测试点。
其他回答
我认为您在查看已打开的文件列表时可能使用了错误的命令。
尝试执行一个:ls来查看你已经打开的文件列表,你会看到:
1 %a "./checkin.pl" line 1
2 # "./grabakamailogs.pl" line 1
3 "./grabwmlogs.pl" line 0
etc.
然后,您可以通过引用列出的数字来浏览文件,例如: b: 3
或者你可以通过输入数字,但使用sb而不是b来分割屏幕。
作为旁白,%表示当前可见的文件,#表示备用文件。
您可以通过按Ctrl Shift 6在这两个文件之间轻松切换
编辑:像:ls,你可以使用:reg来查看你的寄存器的当前内容,包括0-9寄存器,其中包含你已经删除的内容。如果您想重新使用以前删除的文本,这尤其有用。
我建议使用插件
书树
这里是github链接的说明。
书树
我使用vim-plug作为插件管理器,但你也可以使用Vundle。
我来-plug
冯德尔
Vim(但不是原始的Vi!)有制表符,我发现(在许多情况下)比缓冲区更好。你可以说:table [filename]在新选项卡中打开一个文件。标签之间的循环是通过点击标签或组合键[n]gt和gt来完成的。graphic Vim甚至有图形标签。
我使用缓冲区命令-:bn(下一个缓冲区),:bp(上一个缓冲区):buffers(列表打开缓冲区):b<n>(打开缓冲区n):bd(删除缓冲区)。:e <filename>将打开一个新的缓冲区。
你可以在你的.bashrc文件中添加vim和vim -p的别名:
alias vim="vim -p"
这将导致在选项卡中从shell打开多个文件,而不必随后在vim中调用:tab ball。