[块操作模式]
进入块操作模式:Unix下按Ctrl+V,Windows下按Ctrl+Q
选择需要编辑的行,按 I 进入编辑模式,按 ESC 编辑完成
[大小写]
gu, gU = 大小写转换
guw|gue = 转化某个单词
gu5w、gu5e = 转换5个单词
gU0 = 从光标所在位置到行首,都变为大写
gU$ = 从光标所在位置到行尾,都变为大写
ggguG = 分作三段gg gu G
gg = 光标到文件第一个字符
gu = 把选定范围全部小写
G = 到文件结束
[寄存器]
数字寄存器:寄存器"0存着上一次复制操作所复制的文本。寄存器"1到"9分别保存着你最近删除的文本。
字母寄存器:字母寄存器只有在用户指定时才被使用。
当我们使用大写的寄存器进行复制或删除文本时,寄存器原来的内容会被保留,刚删除或复制的内容则附加到原来内容的后面。
其他寄存器
"" = 无名寄存器。保存最近一次复制或删除的文本。就是p命令默认使用的寄存器。
"- = 短删除寄存器。刚删除的文本并不一定被送到数字寄存器,如果删除的文本不含换行符则文本被送至这个寄存器。
": ". "% "# = 只读寄存器。它们分别用来保存最近一次在命令行窗口使用的命令、最近一次插入的文本、当前编辑的文件名、当前的替代文件名。
"= = 表达式寄存器。
"* "+ "~ = 选择与拖放的寄存器。在Windows中这几个寄存器就是剪贴板。在Linux中它们也是剪贴板,但这几个寄存器是有所区别的。
"_ = 黑洞寄存器。如果不希望删除或复制的操作影响数字寄存器的话就使用这个寄存器。
"/ = 搜索式样寄存器。保存上一次搜索所使用的式样。注意这也包括了s命令中所使用的搜索式样。
获取文件中的函数申明和对应的行号,并重定向到寄存器
:redir @a
:echo "function list"
:g/^function.*$/echo getline(".")."\t\t".line(".")
:redir END