我应该如何重命名我的当前文件在Vim?
例如:
我正在编辑person.html_erb_spec.rb 我希望它重命名为person.haml_spec.rb 我想继续编辑person.haml_spec.rb
我该如何优雅地做这件事呢?
我应该如何重命名我的当前文件在Vim?
例如:
我正在编辑person.html_erb_spec.rb 我希望它重命名为person.haml_spec.rb 我想继续编辑person.haml_spec.rb
我该如何优雅地做这件事呢?
当前回答
要重命名现有文件而不使用插件,您应该使用命令
:Explore
这个命令允许您浏览文件。目录,删除或重命名它们。然后你应该在资源管理器中导航到必要的文件,而不是键入R命令,这将允许你重命名文件名
其他回答
sav person.haml_spec.rb | call delete(expand('#'))
我建议:从tpope的eunuch(太监)来命名这个。
它还包括一系列其他方便的命令。
Rename命令目前定义如下(检查repo是否有更新!):
command! -bar -nargs=1 -bang -complete=file Rename :
\ let s:file = expand('%:p') |
\ setlocal modified |
\ keepalt saveas<bang> <args> |
\ if s:file !=# expand('%:p') |
\ call delete(s:file) |
\ endif |
\ unlet s:file
我用NERDTree插件来做:
:NERDTreeFind
然后按m
要重命名,您可以在当前节点上选择(m)并更改文件名。也有选项,如删除,复制,移动等…
在编辑时写入文件-:w newname -以创建一个副本。 开始编辑新副本-:e#。 (可选)删除旧副本-:!rm oldname。
在Windows上,可选的第三步略有变化:
(可选)删除旧的Windows副本-:!德尔oldname。
:h rename()是迄今为止最简单、最干净的方法。 就叫它吧 :调用重命名("oldname", "newnane")