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 关闭

Vim配置持续记录的更多相关文章

  1. VIM配置相关记录

    把一直使用中的vim配置做个GIT入库管理,也把之前积累在机器上的文档,做个汇总. https://github.com/wujuguang/kyvim 1. 安装完整版vim vi和vim的区别?在 ...

  2. 我的vim配置记录

    一 总体介绍 配置路径,/etc/vim/vimrc,这个是系统的vim配置,假设一台PC多个用户使用,每一个用户的习惯不同的话,能够使用不同的配置.在用户文件夹下新建一个.vimrc的文件就能够了. ...

  3. mac系统终端的color scheme配置和vim配置

    一.配置终端 solarized http://ethanschoonover.com/solarized 简单配置脚本: #!/bin/sh git clone git://github.com/a ...

  4. Vim配置及使用技巧

    要说Linux下比较好用的文本编辑器,我推荐vim(当然很多人都用emacs,可我没用过),用vim也有一年左右,有些心得体会想与诸位分享.在我的学习过程中,借鉴了不少优秀的博客,其中有csdn大神n ...

  5. VIM配置示例

    以下是我习惯的vim配置,做个记录~_~ " 文件编码 set fileencoding=utf- set encoding=utf- set termencoding=utf- " ...

  6. kali2.0安装及使用笔记(附带vim配置,长期更新)

    作者:陈栋权 时间:16/08/19 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明, 且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 如有特别用途,请与我联系邮 ...

  7. 转载:Vim 配置入门

    转载:Vim 配置入门 原文地址:http://www.ruanyifeng.com/blog/2018/09/vimrc.html 作者: 阮一峰 Vim 是最重要的编辑器之一,主要有下面几个优点. ...

  8. vim配置轻量级IDE

    安装VIM 安装YouCompleteMe的时候, 需要VIM的版本比较高, 一般一些Linux长期支持版的Vim包就比较老, 所以可能需要编译安装. 卸载之前系统中安装的版本: CentOS/Fed ...

  9. LNMP-Nginx配置不记录静态文件、过期时间

    用户访问web网站,通常日志文件会记录很多web站点上的一些静态文件信息,如果长期不处理,日志文件会越来越大,占用的系统资源也越大,此时就需要我们配置不记录静态文件和过期时间,减少日志文件记录过多不必 ...

随机推荐

  1. 3D数学读书笔记——多坐标系和向量基础

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24662453 第一个知识点 ...

  2. 详略。。设计模式1——单例。。。。studying

    设计模式1--单例 解决:保证了一个类在内存中仅仅能有一个对象. 怎么做才干保证这个对象是唯一的呢? 思路: 1.假设其它程序可以任意用new创建该类对象,那么就无法控制个数.因此,不让其它程序用ne ...

  3. Fiddler手机抓包工具设置过滤域名

    需求:我想用fiddler抓包只抓test.sis.1course.cn; pre.schoolis.cn; sistest02.schoolis.cn;这几个域名下的请求 设置步骤:https:// ...

  4. DotNetBar.Bar作为容器使用的方法及Text更新原理

    DotNetBar.Bar作为容器使用的方法及Text更新原理                          老帅    一.容器用法   控件DevComponents.DotNetBar.Ba ...

  5. redis client 2.0.0 pipeline 的list的rpop bug

    描写叙述: redis client 2.0.0 pipeline 的list的rpop 存在严重bug,rpop list的时候,假设list已经为空的时候,rpop出来的Response依旧不为n ...

  6. 【字符串处理】AC自动机知识点&代码

    代码: #include<iostream> #include<vector> #include<cstdio> #include<queue> #in ...

  7. 【字符串处理】关于KMP算法输出的是什么&代码

    输入: ABCDABTBD_TISABCDABCABCDABC q为当前nxt处理的模版文本串下标: k为“失配时去哪里”,详情请看注释. --------------我是求完nxt的分界线----- ...

  8. Spring+Mybatis之登录功能demo

    其实工作之后就没有用过Spring+Mybatis的框架了,因为公司有一个自己开发的框架,讲道理,其实这个与Spring+Mybatis整合很是神似.当然性能上还是比不上Spring+Mybatis所 ...

  9. Framebuffer 机制【转】

    本文转载自:http://blog.csdn.net/paul_liao/article/details/7706477 Framebuffer Framebuffer是Linux系统为显示设备提供的 ...

  10. thinkphp session db配置

    这篇文章主要介绍了ThinkPHP实现将SESSION存入MYSQL的方法,需要的朋友可以参考下   本文以实例讲解了ThinkPHP实现将SESSION存入MYSQL的方法,所采用的运行环境是Thi ...