Vim简易教程(2)


Vim简易教程(2)
 
Vim简易教程(1)
http://www.2cto.com/os/201303/193905.html
 
第二课 更快速的编辑
这一回将介绍些上一次没有讲到的基本的操作命令。
快速的移动光标  www.2cto.com  
将光标移动到下一个单词的开始:w 
将光标移动到上一个单词的开始:b
类似的,2w 表示向后移动两个单词。
移动到一行的结尾:$
移动到一行的开始:<Home>
移动到一行的第一个非空白字符:^
(熟悉正则表达式的朋友肯定对 $和^不会陌生。)
向下移动2行自然就是:2$
一行中查找一个字符
从当前位置向后查找第一次出现x的位置,并将光标移过去:fx
从当前位置向前查找第一次出现x的位置,并将光标移过去:Fx
如果没有找到x,不移动光标
类似的还有一对命令t与T。与f和F类似,不过它会停在查找到的字符之前一个字符。
移动光标到指定的行
移动到指定的行n:nG
比如移动到第3行:3G
移动到最后一行:G
显示行号
显示行号::set number
隐藏行号::set nonumber
给出当前光标所在的行、列信息:CTRL-G
翻页
向上滚动半屏文字:CTRL-U
向下滚动半屏文字:CTRL-D
删除文字
前面已经介绍过删除一行:dd
从当前位置删除到当前单词结束,并将后面的空格也删除掉:dw
W命令是将光标移动到下一个单词的开始位置,dw 是将光标移动的过程中路过的那些字符都删掉,当然最后光标移动到的那个位置上的字符不删除。
类似,删除3个单词:3dw 或 d3w
实际上,d命令后面可以跟着任意的光标移动命令,比如 dfi 表示从当前位置一直删到第一次出现i为止。当然,如果当前行没有找到i则上面的命令就什么都不做,因为这时光标没有移动。
重复上一次的命令
重复上一次执行的命令:. (一个句号)
比如上次执行的是 dd,那么. (一个句号) 就等效于 dd。
将两行合并
将当前行与下一行合并为一行:J
替换当前字符
将当前字符替换为x:rx  (replace)
改变大小写
改变当前字符的大小写:~
改变完大小写后将光标向后移动一位。但是是在行内移动,不会到下一行。
录制一段键盘宏操作
我们可以将一系列操作录制成一个宏: q 命令
宏的名字是一个小写字母。下面还是举个例子:
假设我们的文件中有如下几行。
stdio.h
fcntl.h
unistd.h
stdlib.h
我们希望将其编辑为:
#include “stdio.h”
#include ”fcntl.h”
#include ”unistd.h”
#include ”stdlib.h”
首先将光标移动到第一行的开始。
然是输入如下的命令:
qa
i#include “
a”
j
q
这样就录好了一段宏,宏名为a。
之后执行3次这个宏:3@a
 

相关内容

    暂无相关文章