VIM常用命令
2013-12-04 20:43
330 查看
1 ctags: 命令
ctags -R *(sh): 对当前目录下所有文件执行同步tag操作,最终会在目录下生成一个tags文件,保存着各个tag的信息
ctrl+](vim): 转到当前光标所在位置变量所在文件
ctrl+p: 可以根据ctags生成的标志,进行自动补全
ctrl+t: 返回到上一个标志
g+]: 显示所有该tag
:set tags=tags
2 Tlist Win快捷键:
x: zoom
u: update
-: 折叠
+: 打开折叠
*: 打开所有折叠
=: 折叠所有
[[: 跳到前一个文件
]]: 跳到后一个文件
q: 关闭taglist窗口
3 NERDTree 快捷键:
A: zoom
K: go to root
qq: exit
F4: run or exit
s: 以vertical方式在新窗口打开当前光标所在文件.
u: 去上一层文件夹c
o: 在当前光标位置添加bookmark
cd: 切换CWD到选定的文件夹
r: 更新选中文件夹文件列表
C: 切换文件夹root到选中文件夹
m: 显示菜单, 这个菜单可以执行复制,黏贴,剪贴文件夹和文件的操作.
4 vim内置命令:
ctrl+ww: 在多个窗口间切换
ctrl+v: 进入列可视模式,可以选择局部内容,然后使用正则表达式进行替换
shift+v: 进入行可视模式
ctrl+n: 扫描当前tag,生成快速补全列表
ctrl+6: 跳到打开的上一个文件
ctrl+shift+6: 同上,应该方向和上面快捷键相反.
=: 格式对齐
4.1 复制黏贴
yy: 复制当前光标所在行
yw: 拷贝当前光标下的单词
p: 将上次复制的内容黏贴到光标所在下一行
4.2 删除
dd: 删除光标所在行
dw: 删除光标所在处的单词
D: 删除光标后改行部分
4.3 窗口管理
ctrl + -: 缩小窗口,整体,包括文字
ctrl + +: 这个需要按住shift, 这个放大窗口,包括文字
4.3 移动命令:
h: 左
k: 上
j: 下
l: 右
ctrl+f: 向前,下一页
ctrl+b: 向后,上一页
w: 跳到下一个自首,按标点或单词分割
W: 跳到下一个字首, 长跳,如end-of-line被认为一个字
e: 跳到下一个字尾
E: 跳到下一个字尾,长条
b: 跳到上一个字
B: 跳到上一个字,长跳
^: 跳到当前行第一个字符
$: 跳到当前行最后一个字符
gg: 文件第一行
gd: 跳到光标所在变量的声明处
%: 跳到当前括号匹配的括号处,如{跳到}
fx: 在当前行找x字符,找到则跳转至
tx: 与fx类似,只是跳到x的前一个字符处.
Fx: 与fx方向相反
*: 查找光标所在处单词, 向下查找
#: 和*一样,不过向上查找
ctrl+o: 返回上一个位置,比如通过gD跳转的时候
K: 打开光标所在处函数的man页面。这个功能在编写native程序时比较有用。
4.4 插入
i: 在当前光标所在字符前进行插入
o: 在当前行下一行插入一行,并进入编辑
O: 在当前所在行的的上一行插入一行,并进入编辑模式
4.5 替换
:s/aa/bb/g: 将当前行中的aa都替换为bb
:%s/aa/bb/g: 将当前所在文件的所有aa都替换为bb
:12,22s/aa/bb/g: 将12到22行中包含的aa都替换为bb
:g/^\s*$/d: 删除所有都是空格的行
5 vim配置的插件快捷键:
F3: 调出grep工具
F4: 调出NERDTree,就是文件浏览器
F8: 调出WMToggle,也就是当前文件中的Tags列表
F3: 调用grep命令进行搜索
F1: 调用VIM的帮助
ca: 调用日历
ss: :w<cr> 保存
qq: :q<cr> 退出
qa: :qa<cr> 全部退出
5. 格式化代码命令
=: 自动格式化
:set expandtab/et: 设置将tab自动转换为空格
:set noexpandtab/noet: 不将tab转换为空格
:set tabstop/ts: 设置tab的位置
:retab: 将文件中所有的tab都转换为空格
:set shiftwidth/sw: 自动缩进时插入的空格数
:set smartab/sta: 在行首按tab会插入shiftwidth个空格
有道笔记连接: http://note.youdao.com/share/?id=5c87401c0ada964c3893bba8657261db&type=note
ctags -R *(sh): 对当前目录下所有文件执行同步tag操作,最终会在目录下生成一个tags文件,保存着各个tag的信息
ctrl+](vim): 转到当前光标所在位置变量所在文件
ctrl+p: 可以根据ctags生成的标志,进行自动补全
ctrl+t: 返回到上一个标志
g+]: 显示所有该tag
:set tags=tags
2 Tlist Win快捷键:
x: zoom
u: update
-: 折叠
+: 打开折叠
*: 打开所有折叠
=: 折叠所有
[[: 跳到前一个文件
]]: 跳到后一个文件
q: 关闭taglist窗口
3 NERDTree 快捷键:
A: zoom
K: go to root
qq: exit
F4: run or exit
s: 以vertical方式在新窗口打开当前光标所在文件.
u: 去上一层文件夹c
o: 在当前光标位置添加bookmark
cd: 切换CWD到选定的文件夹
r: 更新选中文件夹文件列表
C: 切换文件夹root到选中文件夹
m: 显示菜单, 这个菜单可以执行复制,黏贴,剪贴文件夹和文件的操作.
4 vim内置命令:
ctrl+ww: 在多个窗口间切换
ctrl+v: 进入列可视模式,可以选择局部内容,然后使用正则表达式进行替换
shift+v: 进入行可视模式
ctrl+n: 扫描当前tag,生成快速补全列表
ctrl+6: 跳到打开的上一个文件
ctrl+shift+6: 同上,应该方向和上面快捷键相反.
=: 格式对齐
4.1 复制黏贴
yy: 复制当前光标所在行
yw: 拷贝当前光标下的单词
p: 将上次复制的内容黏贴到光标所在下一行
4.2 删除
dd: 删除光标所在行
dw: 删除光标所在处的单词
D: 删除光标后改行部分
4.3 窗口管理
ctrl + -: 缩小窗口,整体,包括文字
ctrl + +: 这个需要按住shift, 这个放大窗口,包括文字
4.3 移动命令:
h: 左
k: 上
j: 下
l: 右
ctrl+f: 向前,下一页
ctrl+b: 向后,上一页
w: 跳到下一个自首,按标点或单词分割
W: 跳到下一个字首, 长跳,如end-of-line被认为一个字
e: 跳到下一个字尾
E: 跳到下一个字尾,长条
b: 跳到上一个字
B: 跳到上一个字,长跳
^: 跳到当前行第一个字符
$: 跳到当前行最后一个字符
gg: 文件第一行
gd: 跳到光标所在变量的声明处
%: 跳到当前括号匹配的括号处,如{跳到}
fx: 在当前行找x字符,找到则跳转至
tx: 与fx类似,只是跳到x的前一个字符处.
Fx: 与fx方向相反
*: 查找光标所在处单词, 向下查找
#: 和*一样,不过向上查找
ctrl+o: 返回上一个位置,比如通过gD跳转的时候
K: 打开光标所在处函数的man页面。这个功能在编写native程序时比较有用。
4.4 插入
i: 在当前光标所在字符前进行插入
o: 在当前行下一行插入一行,并进入编辑
O: 在当前所在行的的上一行插入一行,并进入编辑模式
4.5 替换
:s/aa/bb/g: 将当前行中的aa都替换为bb
:%s/aa/bb/g: 将当前所在文件的所有aa都替换为bb
:12,22s/aa/bb/g: 将12到22行中包含的aa都替换为bb
:g/^\s*$/d: 删除所有都是空格的行
5 vim配置的插件快捷键:
F3: 调出grep工具
F4: 调出NERDTree,就是文件浏览器
F8: 调出WMToggle,也就是当前文件中的Tags列表
F3: 调用grep命令进行搜索
F1: 调用VIM的帮助
ca: 调用日历
ss: :w<cr> 保存
qq: :q<cr> 退出
qa: :qa<cr> 全部退出
5. 格式化代码命令
=: 自动格式化
:set expandtab/et: 设置将tab自动转换为空格
:set noexpandtab/noet: 不将tab转换为空格
:set tabstop/ts: 设置tab的位置
:retab: 将文件中所有的tab都转换为空格
:set shiftwidth/sw: 自动缩进时插入的空格数
:set smartab/sta: 在行首按tab会插入shiftwidth个空格
有道笔记连接: http://note.youdao.com/share/?id=5c87401c0ada964c3893bba8657261db&type=note