在Vim中更改变量名

前端之家收集整理的这篇文章主要介绍了在Vim中更改变量名前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图通过vim读取很多c / perl代码,其中包含许多单字母变量名。

这将是很好的有一些命令,这可以帮助我更改变量的名称更有意义的时候,我在读取代码的过程,以便我可以阅读其余的更快。
在vim中有一些命令可以让我很快做到这一点。

我不认为regexes会工作cos
1)相同的单字母名称在不同的作用域中可能具有不同的用途
2)相同的字母组合可以是另一个更大的var名称的一部分,或者在一个字符串或注释中..不想修改它们

任何已知的解决方案?

以下是如何重命名在当前作用域{}中定义的变量。

将光标移动到变量用法。按gd。这意味着 – 将光标移动到定义。
现在按[{ – 这将带你到范围开始。
按V – 将打开Visual Line选择。
按% – 将跳到相反的位置,因此将选择整个范围。
按:s / – 替代命令的开始。
< C-R> / – 将插入与变量名匹配的模式(按下gd之前的名称)。
/ newname / gc< CR> – 将启动搜索并更换每个比赛的确认。

现在你必须记录一个宏或甚至更好 – 映射一个键。

这里是最终的映射:

" For local replace
nnoremap gr gd[{V%::s/<C-R>///gc<left><left><left>

" For global replace
nnoremap gR gD:%s/<C-R>///gc<left><left><left>

把它放到你的.vimrc或只是执行。按下gr之后,局部变量将带给你:s命令,你只需要输入new_variable_name,然后按Enter。

猜你在找的Bash相关文章