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插件配置的更多相关文章

  1. 「个人vim插件+配置」

    2016.10.4 filetype indent on syntax on set nu ai ci si set sw= ts= set autochdir set backspace= colo ...

  2. DoxygenToolKit.vim 插件配置

    如何才能既享受 Doxygen 的强大功能,同时又避免大量的重复性的注释内容? 解决思路: 让编辑器来替我们写那些格式和内容固定的部分,我们只负责写真正的有效内容. 所以,答案就是:Vim + Dox ...

  3. vim 插件配置博客记录

    本来打算自己写下各种经常使用vim的插件安装方法, 可是搜索了下, 发现别人都写过了, 在写一遍也没有意思, 特此记录. Vim 经常使用命令 http://blog.csdn.net/hittata ...

  4. vim插件配置(一)

    vim代码自动显示提示代码插件:AutoComplPop:  代码(普通变量函数) c/c++代码(类的 . , ->, :: 操作符)的自动补全插件: OmniCppComplete

  5. 我的vim插件配置

    set nocompatible " be iMproved, required filetype off " required " set the runtime pa ...

  6. 常用VIM插件配置

    airline 状态栏美化 除了airline本体还要下airline主题 和打过powerline补丁的字体 常用设置: set laststatus=2 " 总是显示状态栏 set no ...

  7. vim学习、各类插件配置与安装

    vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...

  8. vim插件和配置

    vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...

  9. vim学习、各类插件配置与安装【转】

    转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...

随机推荐

  1. 【NOIP2015模拟】终章-剑之魂

    背景介绍 古堡,暗鸦,斜阳,和深渊-- 等了三年,我独自一人,终于来到了这里-- "终焉的试炼吗?就在这里吗?"我自言自语道. "终焉的试炼啊!就在这里啊!"我 ...

  2. JVM垃圾回收器前瞻

    垃圾回收器的新发展   GC仍然处于飞速发展之中,目前的默认选项G1 GC在不断的进行改进,很多我们原来认为的缺点,例如串行的Full GC.Card Table扫描的低效等,都已经被大幅改进,例如, ...

  3. Spring使用@Async实现异步

    使用场景 在实际项目中,一个接口如果需要处理很多数据,如果是同步执行,通过网络请求接口可能会出现请求超时.这时候就需要使用异步执行处理了. 使用经验 代码 异步服务类 @Service // Spri ...

  4. xml的复习

    xml的复习 1.概念:可扩展标记语言 2.功能: *存储数据    1.配置文件     2.在网络中传播 3.xml与html区别: xml语法严格,HTML语法松散 xml存储数据,HTML展示 ...

  5. 【机器学习】梯度下降 II

    Gradient Descent 梯度下降 II 关于 Gradient Descent 的直观解释,参考上一篇博客[机器学习]梯度下降 I 本模块介绍几种梯度下降模型.定义符号标记如下: \(\th ...

  6. Linux安装软件总结

    1.安装jdk1.8 1.首先去官网下载jdk https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...

  7. 二分类问题 - 【老鱼学tensorflow2】

    什么是二分类问题? 二分类问题就是最终的结果只有好或坏这样的一个输出. 比如,这是好的,那是坏的.这个就是二分类的问题. 我们以一个电影评论作为例子来进行.我们对某部电影评论的文字内容为好评和差评. ...

  8. 【微服务】 数据库案例理解Spring Security OAuth

    突然被问,你是做技术的怎么不走技术路线呢?是啊~仔细想想至今做了这么多年的技术,研发过的系统&产品五花八门,涉及到的领域各行各业:政府.军队.公安.国安.石油&石化.金融.教育.华为等 ...

  9. Java JVM参数在idea里面配置

    找到你需要配置的启动类选择 接着点击Edit Configurations 在VM options里面配置就完成了

  10. python3-day2

    一.列表,元组的操作 1)定义列表 names = ['Lisi',"Zhangsan",'Eric'] 2)通过下标访问列表中的元素,下标从0开始计数 1 >>> ...