个结果 :cp(正常模式下使用命令) 上一个结果 :cw(正常模式下使用命令) 重新打开搜索结果窗口
多文件编辑
vim f1 f2 …… fn(在shell下使用命令) 打开多个文件. :e 文件名(正常模式下使用命令) 在vim中打开新文件. :ls(正常模式下使用命令) 所有打开文件列表. :bn(正常模式下使用命令) 到下一个文件. :bp(正常模式下使用命令) 到上一个文件. :b# 或 ctrl-6(正常模式下使用命令) 到最近的前一个文件. set autowriteall(写入配置文件.vimrc中) 如果讨厌每次打开新文件,vim喋喋不休的要求你保存,那么可以设置自动保存.
多窗口编辑 :sp 文件名(正常模式下使用命令) 横向拆分窗口(多行窗口). :vsp 文件名(正常模式下使用命令) 纵向拆分窗口(多列窗口). ctrl-w h(正常模式下使用命令) 将光标移动到左一个窗口. ctrl-w j(正常模式下使用命令) 将光标移动到下一个窗口. ctrl-w k(正常模式下使用命令) 将光标移动到上一个窗口. ctrl-w l(正常模式下使用命令) 将光标移动到右一个窗口. ctrl-w (正常模式下使用命令) 当前窗口尺寸变大. ctrl-w -(正常模式下使用命令) 当前窗口尺寸变小.
拥有帝国一切,皆有可能。欢迎访问phome.net ctrl-w o(正常模式下使用命令) 只显示当前窗口.
函数列表 taglist.vim(插件) 列表插件. let Tlist_Use_Right_Window = 1(写入配置文件.vimrc中) 如果希望列表在右侧显示,则加入这个配置,默认是左侧. :Tlist(正常模式下使用命令) 显示函数列表. d(在taglist窗口下使用) 从列表中删除文件. (在taglist窗口下使用) 展开文件. -(在taglist窗口下使用) 折叠文件. =(在taglist窗口下使用) 折叠所有文件. x(在taglist窗口下使用) 显示或隐藏正常窗口.
文件列表 NERD_tree.vim(插件) 横向拆分窗口(多行窗口). let NERDTreeWinPos = ''right''(写入配置文件.vimrc中) 如果希望文件树在右侧显示,则加入这个配置,默认是左侧. :NERDTree(正常模式下使用命令) 显示文件列表.
函数跳转 ctags(软件,需要另外安装) 生成多种语言tag文件的软件. Ctags –R *.c(在shell下使用命令) 生成当前路径所有.c文件的tag,-R代表递归. :ta 标记 或 [g] ctrl-] 列举标签(多个标签)或者跳转到标签(单个标签). ctrl-t 返回上一级. :tags 列出标签栈.
语法错误 :make(正常模式下使用命令) 执行外部make命令,并且显示所有的编译警告和错误,并且可以在vim中定位. :cl 列举结果 :cc(正常模式下使用命令) 当前结果 :cn(正常模式下使用命令) 下一个结果 :cp(正常模式下使用命令) 上一个结果 :cw(正常模式下使用命令) 重新打开搜索结果窗口
二进制文件查看 (鉴于有同学理解出现分歧 将二进制查看更新为二进制文件查看)
:范围!xxd(正常模式下使用命令) 把指定范围的部分转化为二进制文件阅读方式.
拥有帝国一切,皆有可能。欢迎访问phome.net :范围!xxd -r(正常模式下使用命令) 把指定范围的部分转回字符阅读方式.
字符集的编码 let &termencoding=&encoding set fileencodings=utf-8,gbk,cp936(写入配置文件.vimrc中) 加入多种字符编码支持. :set fileencoding(正常模式下使用命令) 设定文件字符编码.
补充
ctrl-p(插入模式下使用命令) 跳出补全菜单. ctrl-n(在跳出补全菜单后) 下一个结果. ctrl-p(在跳出补全菜单后) 上一个结果. ctrl-y(在跳出补全菜单后) 选择当前结果. ctrl-x ctrl-f(插入模式下使用命令) 文件名补全. ctrl-x ctrl-i(插入模式下使用命令) 包含的头文件. ctrl-x ctrl-](插入模式下使用命令) ctags(将在下文中介绍)符号补全. ctrl-x ctrl-o(插入模式下使用命令) omni补全,需要设置omnifunc变量.
vim其 |