一、设置.vimrc( windows下通常为_vimrc)

1、设置vim中tab的缩进

  set ts=4  (注:ts是tabstop的缩写,设TAB宽4个空格)
  set expandtab (注:用4个空格代替一个TAB, 不设置的话就是一个宽为4的TAB)

二、插件

1、Vundle  插件安装器,http://github.com/VundleVim/Vundle.Vim

2、NERDTree  树形目录,https://github.com/scrooloose/nerdtree

3、NERDCommenter  注释插件,https://github.com/scrooloose/nerdcommenter

4、delimitMate  引号、括号等补全,https://github.com/Raimondi/delimitMate  

5、cppcomplete  c/c++代码补全,http://www.vim.org/scripts/script.php?script_id=527

6、taglist  符号列表插件,需同ctags生成的tags一起工作,https://github.com/vim-scripts/taglist.vim

7、AutoComplPop  补全时自动弹出窗口,https://github.com/vim-scripts/AutoComplPop

8、CtrlP  文件查找,https://github.com/kien/ctrlp.vim

9、EasyGrep  全局搜索,https://github.com/dkprice/vim-easygrep

三、使用

1、缩进

  < 或 >  注:一个向左缩进,一个向右缩进

  =    注:自动缩进(默认使用c-indenting或lisp函数来格式化)

  例子:gg=G (gg:回到文本首部,=:缩进, G:文本尾部, 整体意思,全文缩进)

  具体的使用看vim的手册, :help <  或 :help >  或 :help =

2、快速注释/反注释

  注释: ctrl + v 进入块可视化模式, 选择要注释行的第一个字符, I 进入向前插入模式,插入注释符号,如//, 此时再按一下Esc,即完成选中行的注释

  反注释: ctrl + v 进入块可视化模式,选择要删除的注释符,再 x,即可删除所有

  注:使用辅助插件,如:NERD_commenter

参考文章:http://blog.csdn.net/xiajun07061225/article/details/8488210

3、设置窗口大小

  set lines=35 columns=118

  set lines=999 columns=999   "表示全屏

  vim中窗口宽用columns, 高用lines

  参考文章:http://lemoncyb.iteye.com/blog/1615983

4、gvim中设置配置方案

  colorscheme industry

  参考文章:http://lemoncyb.iteye.com/blog/1615983

5、gf 命令

  goto file

  Edit the file whose name is under or after the cursor.

   可以跳转到光标下的文件中,前提是这个文件在搜索路径path中

  详细请参考:help gf, help path

6、宏录制

  q{0-9a-zA-Z}    开始宏录制, help q 查看

q   结束录制

@{0-9a-zA-Z}   播放宏

  例子:

  比如要在以下3行字符串的后面分别加一个分号    

hello, one
hello, two
hello, three

  正常模式下输入 qa, (q表示开始录制, 存放的寄存器名为a)

  正常模式下输入 A (A表示在行尾追加)

  输入;

  正常模式下输入 j  (j表示光标移到下一行)

  q (结束录制)

  播放宏:光标移到第一行, 在正常模式下输入3@a

7、多窗口大小的调整

  resize +2  "高度增加2,使用头号就减少2

  vertical resize +2  “宽度增加2,使用减号就减少2

  使用按键映射则可在配置文件中加入以下配置:

" 调整窗口大小
"nnoremap <C-7> <C-w>+
"nnoremap <C-8> <C-w>-
nnoremap <C-7> :resize +2<CR>
nnoremap <C-8> :resize -2<CR>
nnoremap <C-9> :vertical resize +2<CR>
nnoremap <C-0> :vertical resize -2<CR>

此时Ctrl+7: 表示高度加2,其它的类同

8、Session\View保存加载

  mksession 保存当前会话

  vim -S Session.vim 加载会话

  mkview 1 保存视图1

  :loadview 1 加载视图1

  

  具体的请看:help mksession 及help mkview

9、vim 设置编码

  set fileencodings=ucs-bom,utf-8,cp936
  set fileencoding=utf-8

  具体参见:http://www.cnblogs.com/jaiho/archive/2011/08/24/2056375.html

  或help fileencodings 查看相关说明

  

  

vim 使用、设置笔记的更多相关文章

  1. Vim 配色设置与配色脚本语法

    几个给tag加颜色的插件 https://github.com/octol/vim-cpp-enhanced-highlight:基于tag的c family语法高亮 https://github.c ...

  2. iconv内容,convmv文件名,unix2dos,dos2unix文件格式转换,od/cut/wc/dd/diff/uniq/nice/du等命令,linux文件名乱码,文件名,文件内容,vim编码设置

    1.enconv文件名编码转换,比如要将一个GBK编码的文件转换成UTF-8编码,操作如下 enconv -L zh_CN -x UTF-8 filename enconv -L GB2312 -x  ...

  3. Sublime Text 3设置笔记

    Sublime Text 3设置笔记 Sublime Text 3设置指南 1. 安装package control 下载package control源码安装包,并解压: http://yun.ba ...

  4. vim高亮设置

    vim高亮设置 前提: 查看vim是否完整安装 rpm -qa | grep vim 若完整安装,则会出现如下相关信息 vim-filesystem-7.4.629-5.el6.x86_64 vim- ...

  5. 学习 Vim —— Vimtutor 总结笔记

    Lesson 2 2.1-2.3 删除 [dw] 删除从光标开始处至下一词开始前的部分,光标停在下一词的词首. [de] 删除从光标开始处至词尾的部分. [d$] 删除从光标开始处至行末的部分. 2. ...

  6. vim折叠设置(转载)

    vim折叠设置(转载) set foldmethod=indent "set default foldmethod"zi 打开关闭折叠"zv 查看此行zm 关闭折叠zM ...

  7. vim tab设置为4个空格

    为了vim更好的支持python写代码,修改tab默认4个空格有两种设置方法: 1. vim /etc/vimrc 1 set ts=4 2 set sw=4 2. vim /etc/vimrc 1 ...

  8. Linux:vim环境设置

    vim环境设置 vim的环境设置在/etc/vimrc的这个文件中,不过不建议直接修改该配置文件.但是可以修改~/.vimrc文件,默认是不存在的,要手动创建并写入设置值. set hlsearch ...

  9. vim编码设置

    转载于:http://www.cnblogs.com/freewater/archive/2011/08/26/2154602.html vim 编码方式的设置和所有的流行文本编辑器一样,Vim 可以 ...

  10. vim搜索设置高亮

    vim搜索设置高亮 linux vim打开文档搜索字符串时,设置被搜索到字符串高亮显示. 有两种方法: 1.暂时设置:vim打开文档-->命令行形式输入set hlsearch. 缺点:关闭文档 ...

随机推荐

  1. mac mysql忘记密码解决办法

    http://www.jb51.net/article/87580.htm http://blog.csdn.net/soft2buy/article/details/50223373

  2. Mybatis分页插件-PageHelper的使用

    转载:http://blog.csdn.net/u012728960/article/details/50791343 Mybatis分页插件-PageHelper的使用 怎样配置mybatis这里就 ...

  3. 内核顶层Makefile相关2

    http://www.groad.net/bbs/simple/?f104.html if  函数 if 函数的语法有两种形式: () $(if <condition>, <then ...

  4. Laravel建站04--建立后台文章管理

    路由配置 Route::group(['middleware' => 'auth', 'namespace' => 'Admin', 'prefix' => 'admin'], fu ...

  5. 升级OpenSSL修复高危漏洞Heartbleed

    升级OpenSSL修复高危漏洞Heartbleed 背景:          OpenSSL全称为Secure Socket Layer.是Netscape所研发.利用数据加密(Encryption) ...

  6. API网关如何实现对服务下线实时感知

    上篇文章<Eureka 缓存机制>介绍了Eureka的缓存机制,相信大家对Eureka 有了进一步的了解,本文将详细介绍API网关如何实现服务下线的实时感知. 一.前言 在基于云的微服务应 ...

  7. IOS版App的控件元素定位

    前言 Android版App的控件元素可以通过Android studio自带的工具uiautomatorviewer来协助定位! IOS版App的控件元素可以通过Appium来实现(未实现),或ap ...

  8. Spring AOP和IOC(转载)

    spring 的优点?1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 2.可以使用容易提供的众多服务,如事务管理,消息服务等 3.容器提供单例模式支持 4.容器提供了AOP技术,利用它很容易实 ...

  9. 不为客户连接创建子进程的并发回射服务器( poll实现 )

    前言 在上文中,我使用select函数实现了不为客户连接创建子进程的并发回射服务器( 点此进入 ).但其中有个细节确实有点麻烦,那就是还得设置一个client数组用来标记select监听描述符集中被设 ...

  10. Storage,Memcache,KVDB都是存储服务,如何区分何时用何种服务

    Storage :是SAE为开发者提供的分布式文件存储服务,用来存放用户的持久化存储的文件.用户需要先在在线管理平台创建Domain(相当于一级子目录).    Storage为开发者提供分布式文件存 ...