vim 驼峰法和下划线法标识符互换

来源:互联网 发布:部落战争英雄升级数据 编辑:程序博客网 时间:2024/05/17 01:55

0.背景

不同的系统,不同编程语言有自成一统的标识符命名法。江湖两派:windows为代表的驼峰法和匈牙利命名法以及Unix/Linux的下划线命名法。在移植程序时,为了保持程序命名统一,二者需要相互切换;当程序较大时,命名符号成千上万,那么改代码得不偿失。这时候就要工具大显身手了。
使用vim整理以下方法:

1. 驼峰法转换为下划线

分为两步
第一步
分割单词

:set smartcase:%s/\([^ .*+-]\)\([A-Z].\)/\1_\2/g

第二步
首字母小写

ggguG

说明
0. 必先设定大小写敏感;否则无法区分单词;
1. 这是全局转换,局部将%替换为行号区间;
2. 第一步依据大写字母打头特性分割单词并加上下划线,[^ ] 首字母不加,这里根据需要添加屏蔽的特殊字符;
3. ggguG = gg 光标到文首 gu 大写转小写 G 全文;区间的话:nG gu mG - n,m是行区间;
4. 连续大写字母不适用(连续大写非驼峰)

2. 下划线转换驼峰法

第一步
将下划线转换成大写字母

:%s/_\(\w\)/\=toupper(submatch(1))/gor:%s/_\(\w\)/\u\1/g

第二步
将首字母大写的切换成小写

:%s/^\(\w\)/\L\1/g

方法多多,抛砖引玉吧!

原创粉丝点击