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. spring 计时器

    spring 计时器 可以这样: http://blog.csdn.net/u010648555/article/details/52162840 也可以使用annotation <!-- 设置 ...

  2. [自己动手改wordpress.1]wordpress的插件User-Access-Manager在新的php版本号里面无法执行的bug.

    近期同事在玩wp, 就顺带一起看了下. 她说插件有个不能用. 是一个叫User Access Manager 的插件 详细表现就是在后台填好相应的roles角色的时候, 点提交就会跳到一个错误的页面 ...

  3. LeetCode OJ 之 Valid Anagram

    题目: Given two strings s and t, write a function to determine if t is an anagram of s. For example, s ...

  4. 【ODPS】阿里云ODPS中带分区的表操作

    1.创建分区表: 分区表有自己的分区列,而分区表则没有. public static void createTableWithPartition(Odps odps, String createTab ...

  5. 深入浅出web服务

    对于没有做过web开发的人来说,web开发涉及到的名词似乎特别多,apache.nginx,cgi,php,http,cookie.session.这一大坨东西究竟是什么,这里我们就从网络的层面去理清 ...

  6. B1231 [Usaco2008 Nov]mixup2 混乱的奶牛 状压dp

    发现是状压dp,但是还是不会...之前都白学了,本蒟蒻怎么这么菜,怎么都学不会啊... 其实我位运算基础太差了,所以状压学的不好. 题干: Description 混乱的奶牛 [Don Piele, ...

  7. Gym - 101981A The 2018 ICPC Asia Nanjing Regional Contest A.Adrien and Austin 简单博弈

    题面 题意:一堆有n个石子,编号从1⋯N排成一列,两个人Adrien 和Austin玩游戏,每次可以取1⋯K个连续编号的石子,Adrien先手,谁不能取了则输 题解:k==1时,显然和n奇偶相关,当k ...

  8. Swagger UI改造 增加 Token验证、显示控制器注释、自定义泛型缓存应用、

    /// <summary> /// Swagger 增加 Token 选项和控制器描述 /// </summary> public class CustomOperationF ...

  9. DCOM 找不到 office word 的解决方法

    1. 在运行里面  输入     comexp.msc -32  2.在“DCOM配置”中,为IIS账号配置操作Word(其他Office对象也一样)的权限. 具体操作:“组件服务(Component ...

  10. java Queue中 remove/poll, add/offer, element/peek区别

    offer,add区别: 一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝. 这时新的 offer 方法就可以起作用了.它不是对调用 add() 方法抛出一个 unche ...