加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

在Vim中更改变量名

发布时间:2020-12-15 16:46:11 所属栏目:安全 来源:网络整理
导读:我试图通过vim读取很多c / perl代码,其中包含许多单字母变量名。 这将是很好的有一些命令,这可以帮助我更改变量的名称更有意义的时候,我在读取代码的过程,以便我可以阅读其余的更快。 在vim中有一些命令可以让我很快做到这一点。 我不认为regexes会工作c
我试图通过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。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读