vim常用命令
u 撤销上一次的操作,Undo
U 撤销对当前行的所有修改
CTRL-R Redo
qa 开始录制宏, 保存在寄存器a中, 再按一次q结束录制
@a 播放寄存器a中的宏
@@ 重复播放上一个宏
99@a 播放寄存器a中的宏, 重复99次
=a{ 缩排当前语句块
gg=G 缩排当前文件
CTRL-] 跳转
CTRL-T 跳转返回
CTRL-O 跳转返回起点
gd 局部变量(符号)定义处
gD 全局变量(符号)定义处
gf 调入光标处的文件
/string 向后搜索字符串
?string 向前搜索字符串
n 重复上一次搜索
N 反向重复上一次搜索
:nohlsearch 取消加亮, 缩写:nohl
hjkl 光标移动
^F / PgDn 向后翻页
^B / PgUp 向前翻页
^ 当前行首
$ 当前行尾
0 移动到行首
H 移动到屏幕上第一个可见行
L 移动到屏幕上末一个可见行
M 移动到屏幕中间的行
+ / <cr> 移动到下一行首的非空字符
- 移动到上一行
{ 上一个空行
} 下一个空行
J 连接两行,下一行上提
ma 标记当前行位置, 记录在寄存器a中
`a 返回寄存器a所标记的行(书签)
. 重复上一个命令
23G 定位到23行
G 文件尾
% 括号配对
fx 在当前行向后查找下一个字符
Fx 在当前行向前查找下一个字符
; 重复前一个 f 或 F 命令.
:s/from/to/ 查找和替换
:s/from/to/g 查找和替换
:%s/from/to/g 查找和替换
:map <F2> dd 定义F2的功能
i 进入插入模式,在当前字符前插入
a 在当前字符后开始插入
A 在行尾插入
o 在当前行后插入一行,并进入插入模式
O 在当前行前插入一行,并进入插入模式
:w [name] 保存到文件
:q 退出
:q! 放弃保存退出
:wq [name] 保存并退出
:e name 编辑新文件
:r name 把一个文件读入到当前中间中
:e! name 放弃修改,编辑新文件
rx 将当前光标处的字符替换成字符x
x / Delete 删除光标处的字符
dw 删除一个词
dd 删除一行
3dd 删除三行
D 删除到行尾
d$ 删除到行尾
dG 删除到文件尾
dgg 删除到文件头
yy 复制当前行到内部寄存器
Y 复制到行尾
yw 复制一个词
y2w 复制两个词
ye 复制一个词
y$ 复制到行尾
p 粘贴内部寄存器内容到当前行
“*yy 复制当前行到系统剪贴板
“*p 粘贴系统剪贴板到当前行
~ 改变当前光标下字符的大小写
* 搜索当前光标下的单词
:set tabstop=4
:set shiftwidth=4
:set cindent
:set foldmethod=indent
:set foldcolumn=4
:set foldlevel=3
zf 创建折叠块
zo 打开折叠块, zO
zc 关闭折叠块, zC
zr 打开多层折叠块
zm 关闭多层折叠块
zR 打开全部折叠块
zM 关闭全部折叠块
zd 删除
zD
zn 禁用折叠块
zN 启用折叠块
zi 在zn 和 zN之间来回切换
:set nowrap
:set lines=50
:set columns=88
:winpos 290 3
:map <F8> =a{
:map <C-F8> gg=G
:set nobackup 不产生备份文件
:set expandtab 制表符换成空格
:echo 10 + 5 * 2
:set path+=/usr/*/include 指定头文件检索目录
[I 标识符检索
[D 检索#define定义的符号
>> 增加缩进
<< 减少缩进
>a{ 整块增加缩进, 包括{和}
>af 整块增加缩进
cw 删除当前词,并进入编辑状态
ce 删除当前词,并进入编辑状态
cc 擦掉当前行,并进入编辑状态
c$ 擦除到行尾,并进入编辑状态
xp 交换两个字符的位置
=a{ 重新格式化当前块(C语言)
gg=G 重新格式化当前文件(不太好用,有些情况不能处理)
qa 开始录制宏,记录在变量a中,共有26个变量,按q停止录制
@a 播放宏
CTRL+] 跳转到当前光标所在单词对应的主题
CTRL+T 回到前一个位置
CTRL+O 回到前一个位置
dw 删除一个词
dd 删除一行
3dd 删除三行
/string 字符串搜索
?string<cr> 同 “/”, 向前查找
n 重复上一个 “/” 或 “?” 命令
^F or PgDn 向后翻页
^B or PgUp 向前翻页
$ 光标移动到当前行尾
nG 移动光标到第n行
% 括号配对
x or Delete 删除一个字符
G 光标移动到文件最后一行
i 进入插入模式,在当前字符前插入
a 在当前字符后开始插入
A 在行尾插入
o 在当前行后插入一行,并进入插入模式
O 在当前行前插入一行,并进入插入模式
fx 在当前行向后查找下一个字符
Fx 在当前行向前查找下一个字符
; 重复前一个 f 或 F 命令.
+ or <cr> 移动到下一行首的非空字符
- 移动到上一行
0 移动到行首
H 移动到屏幕上第一个可见行
L 移动到屏幕上末一个可见行
M 移动到屏幕中间的行
J 连接两行,下一行上提
rx 将当前光标处的字符替换成字符 x.
. 重复前一个命令
‘x 光标移动到标记x处
mx 在当前行做个标记,x可以是任何小写字母
/string 搜索
?string 反向搜索
n 重复上次搜索
N 重复上次搜索,反方向
:w [name] 保存到文件
:q 退出
:q! 放弃保存退出
:wq [name] 保存并退出
:e name 编辑新文件
:r name 把一个文件读入到当前中间中
:e! name 放弃修改,编辑新文件
| anyShare分享到: | |
| |

恩,相当不错。
这有一个不错的东东
http://blog.csdn.net/wooin/archive/2007/10/31/1858917.aspx