vim 大小写转换

2015-6-12 杜世伟 Vim

vim 大小写转换
平时在写程序时经常会遇到大小写转换的问题,vim中提供了很多非常方便的大小写转换命令,可以快速的进行字母、单词、任意行的大小写转换,可以和vim的光标移动指令组合使用。

We have commands like "tr", tools like "sed", strong one liners from perl to do the conversions of lowercase UPPERCASE Titlecase . "vi" too provides the same, some of its :ex commands are below.

平时在写程序的过程中会经常遇到大小写转换的问题.我们有命令tr和工具sed,vi有类似的功能:

范例:
 
:1,$ s/.*/\L&/ #整个文件全部转换为小写
:1,$ s/.*/\U&/ #整个文件全部转换为大写
:1,$ s/\<./\u&/g #整个文件中每个单词的首字母大写

:1,$ s/\<./\u&/gc
#带确认提示首字母转成大写,此模式会进行确认信息交互,选择参数有replace with \u& (y/n/a/q/l/^E/^Y)?
#1)y确认转换
#2)n不进行转换
#3)a文件中全部替换
#4)q退出替换模式
#5)l替换第一个然后退出交互
#6)^E/^Y这两个暂未明白

:1,$ s/\<[a-z]/\u&/gc #:1,$ s/\<./\u&/gc #带确认提示首字母转成小写,参数信息同上


vim的光标移动指令组合使用:
~          将光标下的字母改变大小写

3~         将光标位置开始的3个字母改变其大小写

g~~        改变当前行字母的大小写

U          将可视模式下选择的字母全改成大写字母

u          将可视模式下选择的字母全改成小写

gUU        将当前行的字母改成大写

3gUU       将从光标开始到下面3行字母改成大写

guu       将当前行的字母全改成小写

gUw       将光标下的单词改成大写。

guw       将光标下的单词改成小写。

(转)
http://www.unixcl.com/2008/01/lowercase-uppercase-titlecase-vi-way-of.html
http://www.linuxsong.org/2010/09/vim-convert-capitalization/

标签: linux vim sed

Powered by emlog 沪ICP备2023034538号-1