1. 家目录创建.vimrc文件

  set nu    # 设置行号

  set tabstop=4  # tab制表符缩进

  set autoindent  # 自动缩进

  set showmatch  # 括号匹配高亮

  execute pathogen#infect()  # # # # # #
  
syntax on           这三行是pathogen vim插件管理器配置

  filetype plugin indent on   # # # # # #

  colorscheme evening  # 颜色样式

  set laststatus=2    # 显示状态栏
  set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ [%{(&fenc==\"\"?&enc:&fenc).(&bomb?\",BOM\":\"\")}]\ %c:%l/%L%)    # 状态栏显示格式 

  map <F2> :NERDTreeToggle<CR>  # nerdtree 目录树,快捷键绑定,比如按F2可以打开或关闭目录列表

  let NERDTreeWinSize=20  # 设置nerdtree 目录树宽度

  let NERDTreeShowHidden=1  # 设置显示隐藏文件

  let NERDTreeIgnore=['\.pyc','\~$','\.swp']   # 设置忽略的文件

  let NERDTreeShowBookmarks=1  # 显示书签列表

  let g:NERDTreeDirArrowExpandable = '▸'  # 设置目录前面的箭头样式

  let g:NERDTreeDirArrowCollapsible = '▾'

  inoremap ' ''<ESC>i    # 设置括号,引号匹配

  inoremap " ""<ESC>i

  inoremap ( ()<ESC>i
  inoremap [ []<ESC>i
  inoremap { {<CR>}<ESC>O

2. 安装pathogen vim 插件管理器

  官方提供的安装方式在https://github.com/tpope/vim-pathogen。会生成~/.vim/autoload/ 和 ~/.vim/bundle目录,每个插件作为一个独立文件夹在bundle目录下

  安装插件: 比如:nerdtree, git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree 然后重启vim,按F12即可查看目录

  删除插件:进入~/.vim/bundle/下删除对应的插件目录即可

  更新插件:进入具体的插件目录,执行 git pull origin

3. vim 在新标签页创建新文件: tabnew  路径/文件名

   在新标签编辑已有文件:tabedit   路径/文件名

   在标签页间切换: tabn 表示下一个标签

   参考:https://www.cnblogs.com/hnrainll/archive/2011/04/29/2032660.html

4. vim多窗口分割及切换退出,参考:http://www.jb51.net/LINUXjishu/118276.html

5. vim 使用tabnew 新建文件后,nerdtree目录树没有自动更新,先切换到目录列表,按shift + r,手动刷新

6. vim在编辑时,需要撤销。先esc退出编辑状态,按u,撤销上次操作。crtl + r可恢复撤销

7. vim 命令行模式下删除一行,按dd。删除一个字符,按X。光标放在删除开始行,输入之后的行号,按dd可删除多行

8. vim 单行,多行复制粘粘,参考:https://blog.csdn.net/achejq/article/details/42148865

9. vim 命令行模式下: 按shift + o,在当前行上面插入空行,并进入插入模式; 按 o 在当前行下面插入空行,并进入插入模式

10. vim 插入模式下: 先按ctrl + o 。之后,按shift + o 在当前行上面插入空行 ; 按o 在当前行下面插入空行

11. phpcomplete代码提示插件,vim7.0已上自带, 我的是8.0 故在/usr/share/vim/vim80/autoload/phpcomplete.vim

  然后.vimrc中配置

  filetype plugin on  # 这句我上面的已经配置了,这块只添加下面那句 
  autocmd FileType php set omnifunc=phpcomplete#CompletePHP

  使用方式:编辑模式输入函数 str_ , 按ctrl + x , 再按ctrl + o 就会展示函数列表可供选择

nerdtree 用法

ctr+w+h 光标移到左侧树形目录,ctrl+w+l 光标移到右侧文件显示窗口。多次摁 ctrl+w,光标自动在左右侧窗口切换

o 打开关闭文件或者目录
t 在标签页中打开
T 在后台标签页中打开
! 执行此文件
p 到上层目录
P 到根目录
K 到第一个节点
J 到最后一个节点
u 打开上层目录
m 显示文件系统菜单(添加、删除、移动操作)
? 帮助
q 关闭

最新文章

  1. Windows 10 开始菜单修改程序
  2. iOS WebView调用JS的一个小坑
  3. 前端性能利器——dynatrace ajax edition
  4. win7,vs2010,asp.net项目中修改外部js文件,在调试时加载的还是旧文件
  5. javaweb实验五
  6. Application MyTest has not been registered. This is either due to a require() error during initialization or failure to call AppRegistry.registerComponent.
  7. Centos是什么
  8. HDU2196 Computer(树形DP)
  9. jgroup 概述--官方文档
  10. bzoj 3143: [Hnoi2013]游走 高斯消元
  11. 10.30 morning
  12. java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法
  13. Ubuntu下删除VMware的方法
  14. hive-issue-inserting-records-to-partitioned-table
  15. BZOJ4964 : 加长的咒语
  16. 基于Xshell使用密钥方式连接远程主机
  17. AC自动机解题记录
  18. MIT提出精细到头发丝的语义分割技术,打造效果惊艳的特效电影
  19. SpringMVC @RequestBody 接收Json数组对象
  20. ChemDraw中如何输入化学式分隔点

热门文章

  1. [Mini Program] 尺寸单位 rpx
  2. spring主要产品
  3. MapReduce:具体解释Shuffle过程
  4. luogu2763 试题库问题 二分匹配
  5. A Reusable Aspect for Memory Profiling
  6. PCB 周期计算采用 SQL 函数调用.net Dll 标量函数 实现
  7. Appium + python - automator定位操作
  8. Docker For MYSQL 8.0 特别注意修复数据库新的验证方式
  9. Django day15 (二) csrf的 跨站请求伪造 与 局部禁用 , 局部使用
  10. Stick ------ 剪枝神题