全世界最好的编辑器VIM之Windows配置(gvim)[未测试]

全世界最好的编辑器VIM之Windows配置(gvim),vundle插件管理,NERDTree插件,ctrlp插件,vim-nerdtree-tabs插件等 。vim原本就是很强大,很方便的编辑器,再加上这些杀手级的插件,那就真的无敌了linux

官方网站:http://www.vim.orggit

平时习惯在linux上面使用vim,可是在windows下面,总感受没有找到比vim好用的编辑器,因此,决定在windows下也安装一个vim  , ^^ go…github

先放一张我本身的vim配置效果图,简单而美丽vim

20160615112140

 

一、安装GVIM

A、下载 GVIMwindows

B、运行下载的安装程序,并按照说明一步一步正确安装便可
我这里安装的路径是 C:\Program Files (x86)\Vim\curl

QQ图片20160615095324

桌面图标:编辑器

20160615095507

二、安装vim插件管理工具vundle

注意:安装vundle前提须要先安装 git 和 配置curl工具

(1)、安装git客户端:msysgit

msysgit只是提供了git的核心功能,并且是基于命令行的字体

A、下载 msysgit网站

B、运行下载的安装程序,并安装说明一步一步正确安装便可,须要注意的一点就是PATH环境选择界面;
注意:在 adjusting your PATH environment (调整PATH环境)界面,咱们选择第二个 run git from the windows command prompt ;如图

20160615100453

C、安装完成,打开cmd 命令提示符,运行命令( git –version )检查git 版本号
20160615100716

D、msysgit 的安装路径是 C:\Program Files (x86)\Git (个人安装路径)

20160615101212

(2)、配置 curl

在windows下安装curl与msysgit结合很是简单,只须要在git的cmd目录建立文件curl.cmd便可
路径:C:\Program Files\Git\cmd\curl.cmd ,文件内容以下

 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
@ rem Do not use "echo off" to not affect any child calls .
@setlocal
 
@ rem Get the abolute path to the parent directory , which is assumed to be the
@ rem Git installation root .
@ for /F "delims=" % %I in ( "%~dp0.." ) do @ set git_install_root = % % ~fI
@ set PATH = % git_install_root % \ bin ; % git_install_root % \ mingw \ bin ; % git_install_root % \ mingw64 \ bin ; % PATH %
@ rem ! ! ! ! ! ! ! For 64bit msysgit , replace 'mingw' above with 'mingw64' ! ! ! ! ! ! !
 
@ if not exist "%HOME%" @ set HOME = % HOMEDRIVE % % HOMEPATH %
@ if not exist "%HOME%" @ set HOME = % USERPROFILE %
 
@ curl . exe % *

打开cmd 命令提示符,运行命令( curl –version )检查curl 版本号

20160615101605

好了,咱们开始安装 vundle 了,也很简单

(2)、安装Vundle   (Vundle on Windows)

A、打开cmd 命令提示符,只要运行一条命令便可,咱们将vundle安装到 C:\Program Files (x86)\Vim\vimfiles 目录,目录以下:

 
 
 
 
 
 
1
git clone https : //github.com/gmarik/Vundle.vim.git C:\Program Files (x86)\Vim\vimfiles\bundle\Vundle.vim

20160615101910

B、添加一个gvim目录的 环境变量 $VIM ,步骤 :个人电脑->属性->高级系统设置->高级->环境变量->新建 ;如图

20160615103128

C、在vim启动设定文件_vimrc添加 bundle的配置 ,vim的启动设定文件 _vimrc (在linux文件名是 .vimrc , 在windows下面是 _vimrc);这里直接配置一个全局的 _vimrc 文件,路径:C:\Program Files (x86)\Vim\_vimrc  , 添加以下内容

 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
"插件管理
set rtp+=$VIM\vimfiles\bundle\Vundle.vim\
call vundle#begin()
" let Vundle manage Vundle , required
Plugin 'VundleVim/Vundle.vim'
" my bundle plugin
 
call vundle #end()
filetype plugin indent on

在Github vim-scripts 用户下的repos,只须要写出repos名称
在Github其余用户下的repos, 须要写出”用户名/repos名”
不在Github上的插件,须要写出git全路径

D、Bundle 插件管理器使用

相关命令
安装插件:BundleInstall
更新插件:BundleUpdate
清除再也不使用的插件:BundleClean
列出全部插件:BundleList
查找插件:BundleSearch

例如安装插件
打开一个gvim, 运行:BundleInstall 或者在命令行运行 vim +BundleInstall +qall
安装完成后插件就能用了

20160615105239

三、VIM之文件管理插件NERDTree 和 共享插件vim-nerdtree-tabs

A、安装和基本用法

经过vim插件管理工具Vundle安装NERDTree和vim-nerdtree-tabs就很简单,只须要将插件路径添加到bundle的配置便可,添加两行

Plugin ‘scrooloose/nerdtree’
Plugin ‘jistr/vim-nerdtree-tabs’

NERDTree和vim-nerdtree-tabs的 github路径能够自行查询一下

配置以下

 
 
 
 
 
 
1
2
3
4
5
6
7
8
"插件管理
set rtp += $ VIM \ vimfiles \ bundle \ Vundle . vim \
call vundle #begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'scrooloose/nerdtree'
Plugin 'jistr/vim-nerdtree-tabs'
 
call vundle #end()

打开一个gvim, 运行 :BundleInstall 便可

 

NERDTree的一些基本操做快捷键

 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
? : 快速帮助文档
o : 打开一个目录或者打开文件,建立的是buffer,也能够用来打开书签
go : 打开一个文件,可是光标仍然留在NERDTree,建立的是buffer
t : 打开一个文件,建立的是Tab,对书签一样生效
T : 打开一个文件,可是光标仍然留在NERDTree,建立的是Tab,对书签一样生效
i : 水平分割建立文件的窗口,建立的是 buffer
gi : 水平分割建立文件的窗口,可是光标仍然留在NERDTree
s : 垂直分割建立文件的窗口,建立的是 buffer
gs : 和gi,go相似
x : 收起当前打开的目录
X : 收起全部打开的目录
e : 以文件管理的方式打开选中的目录
D : 删除书签
P : 大写,跳转到当前根路径
p : 小写,跳转到光标所在的上一级路径
K : 跳转到第一个子路径
J : 跳转到最后一个子路径
< C - j >< C - k > : 在同级目录和文件间移动,忽略子目录和子文件
C : 将根路径设置为光标所在的目录
u : 设置上级目录为根路径
U : 设置上级目录为跟路径,可是维持原来目录打开的状态
r : 刷新光标所在的目录
R : 刷新当前根路径
I : 显示或者不显示隐藏文件
f : 打开和关闭文件过滤器
q : 关闭NERDTree
A : 全屏显示NERDTree,或者关闭全屏

B、在vim启动设定文件_vimrc添加NERDTree的配置

 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
" 关闭NERDTree快捷键
map <leader>t :NERDTreeToggle<CR>
" 显示行号
let NERDTreeShowLineNumbers = 1
let NERDTreeAutoCenter = 1
" 是否显示隐藏文件
let NERDTreeShowHidden=1
" 设置宽度
let NERDTreeWinSize = 21
" 在终端启动vim时,共享NERDTree
let g:nerdtree_tabs_open_on_console_startup=1
" 忽略一下文件的显示
let NERDTreeIgnore = [ '\.pyc' , '\~$' , '\.swp' ]
" 显示书签列表
let NERDTreeShowBookmarks = 1

 

四、VIM之搜索定位打开文件插件CtrlP

A、安装和基本用法

安装跟NERDTree和vim-nerdtree-tabs插件安装方法同样,只须要添加一行  Plugin ‘kien/ctrlp.vim’ 便可,完整以下

 
 
 
 
 
 
1
2
3
4
5
6
7
8
"插件管理
set rtp += $ VIM \ vimfiles \ bundle \ Vundle . vim \
call vundle #begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'scrooloose/nerdtree'
Plugin 'jistr/vim-nerdtree-tabs'
Plugin 'kien/ctrlp.vim'
call vundle #end()

打开一个gvim, 运行 :BundleInstall 便可

ctrlp的 github路径能够自行查询一下

在网上找到 ctrlp 的一个gif 文件,以下

ctrlp-vim-demo

最后,附上个人_vimrc 完整配置,我只安装了这三个插件

5 、我本身的 _vimrc 完整配置,可参考

 

 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
set nocompatible
source $ VIMRUNTIME / vimrc_example .vim
"source $VIMRUNTIME/mswin.vim
" behave mswin
 
set diffexpr = MyDiff ( )
function MyDiff ( )
   let opt = '-a --binary '
   if & diffopt = ~ 'icase' | let opt = opt . '-i ' | endif
   if & diffopt = ~ 'iwhite' | let opt = opt . '-b ' | endif
   let arg1 = v : fname_in
   if arg1 = ~ ' ' | let arg1 = '"' . arg1 . '"' | endif
   let arg2 = v : fname_new
   if arg2 = ~ ' ' | let arg2 = '"' . arg2 . '"' | endif
   let arg3 = v : fname_out
   if arg3 = ~ ' ' | let arg3 = '"' . arg3 . '"' | endif
   let eq = ''
   if $ VIMRUNTIME = ~ ' '
     if & sh = ~ '\<cmd'
       let cmd = '""' . $VIMRUNTIME . '\diff"'
       let eq = '"'
     else
       let cmd = substitute ( $ VIMRUNTIME , ' ' , '" ' , '' ) . '\diff"'
     endif
   else
     let cmd = $VIMRUNTIME . '\diff'
   endif
   silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
 
 
"设置文件的代码形式 utf8
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,chinese,cp936
 
"vim的菜单乱码解决
source $ VIMRUNTIME / delmenu . vim
source $ VIMRUNTIME / menu .vim
 
"vim提示信息乱码的解决
language messages zh_CN.utf-8
 
filetype on
filetype plugin indent on
" colorscheme evening "配色方案
colorscheme desert
set helplang=cn "设置中文帮助
set history = 500 "保留历史记录
set guifont=Monaco:h10 "设置字体为Monaco,大小 10
set tabstop = 4 "设置tab的跳数
set expandtab
set backspace=2 "设置退格键可用
"set nu! "设置显示行号
set wrap "设置自动换行
" set nowrap "设置不自动换行
set linebreak "整词换行,与自动换行搭配使用
"set list "显示制表符
set autochdir "自动设置当前目录为正在编辑的目录
set hidden "自动隐藏没有保存的缓冲区,切换buffer时不给出保存当前buffer的提示
set scrolloff = 5 "在光标接近底端或顶端时,自动下滚或上滚
" Toggle Menu and Toolbar "隐藏菜单栏和工具栏
" set guioptions -=m
"set guioptions-=T
set showtabline=2 "设置显是显示标签栏
set autoread "设置当文件在外部被修改,自动更新该文件
set mouse=a "设置在任何模式下鼠标均可用
set nobackup "设置不生成备份文件
" set go = "不要图形按钮
set guioptions-=T           " 隐藏工具栏
"set guioptions-=m           " 隐藏菜单栏
 
"===========================
"查找 /替换相关的设置
"===========================
set hlsearch "高亮显示查找结果
set incsearch "增量查找
 
" === === === === === === === === ===
"状态栏的设置
" === === === === === === === === ===
set statusline = [ % F ] % y % r % m % * %= [ Line : % l / % L , Column : % c ] [ % p % % ] "显示文件名:总行数,总的字符数
set ruler "在编辑过程当中,在右下角显示光标位置的状态行
 
"===========================
"代码设置
"===========================
syntax enable "打开语法高亮
syntax on "打开语法高亮
set showmatch "设置匹配模式,至关于括号匹配
set smartindent "智能对齐
" set shiftwidth = 4 "换行时,交错使用4个空格
set autoindent "设置自动对齐
set ai ! "设置自动缩进
" set cursorcolumn "启用光标列
set cursorline "启用光标行
set guicursor += a :blinkon0 "设置光标不闪烁
set fdm=indent "
 
 
"插件管理
set rtp+=$VIM\vimfiles\bundle\Vundle.vim\
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'scrooloose/nerdtree'
Plugin 'jistr/vim-nerdtree-tabs'
"Plugin 'Xuyuanp/nerdtree-git-plugin'
Plugin 'kien/ctrlp.vim'
Plugin 'eshion/vim-sync'
call vundle #end()
 
" 关闭NERDTree快捷键
map <leader>t :NERDTreeToggle<CR>
" 显示行号
let NERDTreeShowLineNumbers = 1
let NERDTreeAutoCenter = 1
" 是否显示隐藏文件
let NERDTreeShowHidden=1
" 设置宽度
let NERDTreeWinSize = 21
" 在终端启动vim时,共享NERDTree
let g:nerdtree_tabs_open_on_console_startup=1
" 忽略一下文件的显示
let NERDTreeIgnore = [ '\.pyc' , '\~$' , '\.swp' ]
" 显示书签列表
let NERDTreeShowBookmarks = 1

遇到几个错误的地方及方法 提示一下

“设置文件的代码形式 utf8
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,chinese,cp936

“vim的菜单乱码解决
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

“vim提示信息乱码的解决 language messages zh_CN.utf-8

相关文章
相关标签/搜索