vim插件配置
OS:kali linux
tool:vim
上图:

0x00
需要用到的插件及其下载地址
左边的一栏显示文件目录结构的用到的插件为 NERDTree 下载地址:https://github.com/jistr/vim-nerdtree-tabs
代码自动补全功能是大多数IDE会用到的,神编辑器也不能少 插件名字: snipMate 下载地址:https://github.com/msanders/snipmate.vim
智能提示配合代码补全,可以快速写好代码格式的框架,智能提示的插件名字:neocomplcache 下载地址:https://github.com/Shougo/neocomplcache.vim
当然这些插件不能随意安装,我们需要一个工具帮忙管理插件
pathogen是为了解决每一个插件安装后文件分散到多个目录不好管理而存在的。
同样的附上插件地址:https://github.com/tpope/vim-pathogens
0x01
切换到linux家目录 /root或者/home
0x02
1.mkdir 命令新建文件名为 .vim 的文件夹
2.切换到 .vim 目录新建两个目录,分别命名为:autoload 和 bundle .
autoload目录中放pathogen.vim,然后在配置文件的首行添加如下命令 execute pathogen#infect() (配置文件后面说到)
3.将下载的插件解压,放在bundle目录下
4.同样在家目录新建.vimrc文件(文件,并非文件夹),在其中加入如下内容
1 "缩进量为4空格
2 set tabstop=4
3 set shiftwidth=4
4 "引入插件pathogen使用
5 execute pathogen#infect()
6 call pathogen#helptags()
7 "禁用vi兼容模式
8 set nocompatible
9 "vim的内部编码
10 set encoding=utf-8
11 "vim在与屏幕和键盘交互师傅使用的编码(取决于实际的终端的设定)
12 set termencoding=utf-8
13 "vim打开文件时的尝试使用的编码
14 set fileencodings=utf-8,gbk,gb2312,default,latin1
15 "开启语法高亮功能
16 syntax enable
17 "允许用指定高亮替换方案
18 syntax on
19 "显示行号
20 set nu
21 "括号匹配
22 set showmatch
23 "自动检测文件类型
24 filetype plugin indent on
25 "在缩进和遇到Tab键时使用空格替代
26 set expandtab
27 "根据文件类型设置缩进格式
28 au FileType html,vim,javascript setl shiftwidth=2
29 au FileType html,vim,javascript setl tabstop=2
30 au FileType java,php,pathon setl shiftwidth=4
31 au FileType java,php,pathon setl tabstop=4
32 "启动vim时不要自动折叠代码
33 set foldlevel=100
34 "自动对齐
35 set ai
36 "根据下面的格式对齐
37 set si
38 set smarttab
39 set wrap
40 set lbr
41 set tw=0
42 set foldmethod=syntax
43 "总是显示状态栏
44 set laststatus=2
45 "显示光标当前位置
46 set ruler
47 "高亮显示当前行
48 set cursorline
49 "高亮显示搜索结果
50 set hlsearch
51 "禁止拆行
52 set nowrap
53 "设置快捷键前最,即<Leader>
54 let mapleader=":"
55 "设置快捷键将选中文本块复制到系统剪贴板
56 map <Leader>y "+y
57 "设置快捷键将系统剪贴板内容粘帖到vim
58 map <Leader>p "+p
59 noremap <F9> :!ctags -R<CR>
60 "设置tags文件为当前目录下的tags,默认情况也是
61 "set tags+=./tags
62 "配置文件.vimrc更改后自动重新载入使设置生效
63 autocmd! bufwritepost .vimrc source ~/.vimrc
64 "vim对一些流行的编程语言的语法提供自动完成的功能,但是默认是没有启用。
65 autocmd FileType php set omnifunc=phpcomplete#CompletePHP
66 autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
67 autocmd FileType css set omnifunc=csscomplete#CompleteCSS
68 autocmd FileType java setlocal omnifunc=javacomplete#Complete
69 "粘贴格式化
70 set pastetoggle=<F5>
71 "vim对一些语言实现的格式化命令
72 "在命令模式下直接输入“gg=G”。
73 "使用 c-x c-o 补全的时候,在窗口上方会出现一个新的窗口,补全完之后依然存在。设置关闭
74 set completeopt=longest,menuone
75 "
76 "以下为插件设置参数
77 "
78 "-----------------------------------------------------------------
79 "auto-pairs插件,用于自动补全括号,引号等
80 "
81 "-----------------------------------------------------------------
82 "nerdtree插件,目录树。
83 "设置默认开启
84 autocmd vimenter * NERDTree
85 "打开关闭快捷键
86 map <F3> :NERDTreeToggle<CR>
87 "当只剩下目录树时,自动关闭vim。
88 autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") &&b:NERDTreeType == "primary") | q | endif
89 "
90 "-----------------------------------------------------------------
91 "vim-Markdown插件,实现markdown高亮。
92 "
93 "tagbar插件显示方法属性列表
94 map <silent> <F4> :TagbarToggle<CR>
95 let g:tagbar_width=30
96 let g:tagbar_autofocus=1
97 "
98 "-----------------------------------------------------------------
99 "NERD_commenter.vim 注释代码用的,
100 "[count]<Leader>cc 光标以下count行逐行添加注释(7,cc)
101 "[count]<Leader>cu 光标以下count行逐行取消注释(7,cu)
102 "[count]<Leader>cm 光标以下count行尝试添加块注释(7,cm)
103 "<Leader>cA 在行尾插入 /* */,并且进入插入模式。 这个命令方便写注释。
104 "注:count参数可选,无则默认为选中行或当前行
105 "-----------------------------------------------------------------
106 "snipmate.vim插件,智能代码补全
107 "
108 "-----------------------------------------------------------------
109 "neocomplcache插件,代码提示
110 "代码提示,可用上下箭头选择,选中后用 ctrl + n 补全代码
111 let g:neocomplcache_enable_at_startup = 1 " 终极补全
112 "-----------------------------------------------------------------
113 "vim-syntax-extra插件,函数名高亮
114
115 "-----------------------------------------------------------------
116 let NERDSpaceDelims=1 " 让注释符与语句之间留一个空格
117 let NERDCompactSexyComs=1 " 多行注释时样子更好看
保存,完成
说明:1.文中 .vimrc 配置文件内容参考自:https://www.cnblogs.com/wxw16/p/6259292.html
2.其他的插件可根据自己的需求自行添加,文章开头只给出了部分插件下载地址,详情可参看.vimrc配置
文件内容,然后根据插件名字到github下载即可
vim插件配置的更多相关文章
- 「个人vim插件+配置」
2016.10.4 filetype indent on syntax on set nu ai ci si set sw= ts= set autochdir set backspace= colo ...
- DoxygenToolKit.vim 插件配置
如何才能既享受 Doxygen 的强大功能,同时又避免大量的重复性的注释内容? 解决思路: 让编辑器来替我们写那些格式和内容固定的部分,我们只负责写真正的有效内容. 所以,答案就是:Vim + Dox ...
- vim 插件配置博客记录
本来打算自己写下各种经常使用vim的插件安装方法, 可是搜索了下, 发现别人都写过了, 在写一遍也没有意思, 特此记录. Vim 经常使用命令 http://blog.csdn.net/hittata ...
- vim插件配置(一)
vim代码自动显示提示代码插件:AutoComplPop: 代码(普通变量函数) c/c++代码(类的 . , ->, :: 操作符)的自动补全插件: OmniCppComplete
- 我的vim插件配置
set nocompatible " be iMproved, required filetype off " required " set the runtime pa ...
- 常用VIM插件配置
airline 状态栏美化 除了airline本体还要下airline主题 和打过powerline补丁的字体 常用设置: set laststatus=2 " 总是显示状态栏 set no ...
- vim学习、各类插件配置与安装
vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...
- vim插件和配置
vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...
- vim学习、各类插件配置与安装【转】
转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...
随机推荐
- YOLOv4: Darknet 如何于 Docker 编译,及训练 COCO 子集
YOLO 算法是非常著名的目标检测算法.从其全称 You Only Look Once: Unified, Real-Time Object Detection ,可以看出它的特性: Look Onc ...
- PicGo软件搭配gitee实现图床
1.安装PicGo软件,并配置gitee 1.1安装picGo picGo 安装gitee-uploader 插件 官网下载地址如下:最新版本 可以自行选择版本进行下载,这里我选择了最新的版本进行下载 ...
- AD16
第三集 制作光敏小夜灯的原理图 1.点击G切换栅格的精度 2.元器件放置好之后要先布局在布线 3.布线完成后要检查电路的合理性.对应查一下电阻的个数,位置是不是符合.在原理上大概的估计是否可以. ...
- [记录点滴]授人以渔,从Tensorflow找不到dll扩展到如何排查问题
[记录点滴]授人以渔,从Tensorflow找不到dll扩展到如何排查问题 目录 [记录点滴]授人以渔,从Tensorflow找不到dll扩展到如何排查问题 0x00 摘要 0x01 引言 0x02 ...
- 11.深入k8s:kubelet工作原理及源码分析
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 源码版本是1.19 kubelet信息量是很大的,通过我这一篇文章肯定是讲不全的,大家可 ...
- 4.CountDownLatch-闭锁
- Java Web学习(十二)Tomcat核心
一.引言 其实按道理来说,学习Java web应该在前面的篇幅就写有关tomcat相关的知识点,不过近期看了一些资料,觉得以前仅仅只是知道用tomcat去发布我的项目,一些细节的东西也没有好好总结,这 ...
- MyBatis学习(四)代码生成器MyBatis-Generator
一.简介 前面写过一篇文章介绍了如何使用Mybatis,那么如果我门数据库中有许许多多的表的时候,每张表都手动去写对应的mapper的映射关系,会非常麻烦,那么我们可以使用代码生成器MyBatis-G ...
- Redis学习(四)redis发布订阅
文章更新时间:2020/04/22 一.简介 Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. Redis 客户端可以订阅任意数量的频道. ...
- 一篇带你熟悉ansible-playbook剧本
#playbook介绍 #playbook简单介绍 playbook翻译过来就是剧本,以yml/yaml为后缀结尾的一个文本文件 #playbook组成:分为两部分play(定义主机的角色)和task ...