大多数人说Vim是最伟大的编辑器。但是有没有办法像sublime一样快速地重命名变量。范例:
function f($items) { $items; .... $items; }
字符串在崇高中:1.转到项目变量1.点击center +d 2次1.重命名变量在Vim中:1.搜索/items
ruarlubt1#
有几个解决方案:
转到items,然后点击:
items
*Ncgn{new name}<Esc>
字符串然后你可以.通过其余的文件。
.
我写了插件,简化了这个流程sad.vim,简化了上面的:
siw{new name}<Esc>
型然后你可以通过.遍历其他的事件。
通过vi{选择函数体,然后调用:
vi{
:'<,'>s/items/{new name}/g
型
如果你的语言有支持重命名的语言服务器,那么你可以使用Vim的众多LS客户端之一,并使用那里的支持。
3pvhb19x2#
关键是:在Vim中,向目标改变点的移动是在不接触鼠标的情况下发生的,它也可以通过ssh会话通过终端来实现,这是使用sublime无法实现的。你也应该考虑这一点。我有以下Map:
:nnoremap c* *<C-o>cgn
字符串一旦你找到了变量,只需输入c*,然后是新的名称,ESC和点。对于那些谁不明白上述命令,内置的帮助系统将是你的朋友,使用它弄清楚什么*,<C-o>,c,gn都分别做,然后合并你的理解。
*
<C-o>
c
gn
2条答案
按热度按时间ruarlubt1#
有几个解决方案:
更改命令
转到
items
,然后点击:字符串
然后你可以
.
通过其余的文件。插件
我写了插件,简化了这个流程sad.vim,简化了上面的:
型
然后你可以通过
.
遍历其他的事件。替换
通过
vi{
选择函数体,然后调用:型
语言服务器
如果你的语言有支持重命名的语言服务器,那么你可以使用Vim的众多LS客户端之一,并使用那里的支持。
3pvhb19x2#
关键是:在Vim中,向目标改变点的移动是在不接触鼠标的情况下发生的,它也可以通过ssh会话通过终端来实现,这是使用sublime无法实现的。你也应该考虑这一点。我有以下Map:
字符串
一旦你找到了变量,只需输入c*,然后是新的名称,ESC和点。
对于那些谁不明白上述命令,内置的帮助系统将是你的朋友,使用它弄清楚什么
*
,<C-o>
,c
,gn
都分别做,然后合并你的理解。