`
lxs647
  • 浏览: 523094 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

win7 64 下Vim与Vundle,pathogen的安装【转】

阅读更多

windows安装Vim与Vundle

 

一些有用的插件可以参考:

http://devcharm.com/pages/18-vim-is-your-new-ide
【转自】http://yp.oss.org.cn/blog/show_resource.php?resource_id=1561

工欲善其事,必先利其器。Vim就是这样一把利器,而只有通过不断的锤炼Vim才可以得到更快的开发效率。

Vim安装与设置
Vim 64bit安装

系统环境为Win7 64bit + Vim7.3 64bit。假设安装目录为D:\Vim。

首先下载vim73-x64.zip解压到D:\Vim。运行cmd

cd D:\Vim\vim73
install
输入d执行安装即可。

安装完成后”D:\Vim\_vimrc”就是vim的配置文件了

我们可以首先做一些基础配置

Vim基本配置


设置工作目录为当前编辑文件的目录

set bsdir=buffer
set autochdir
编码设置

set enc=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
语言设置

set langmenu=zh_CN.UTF-8
language message zh_CN.UTF-8
set helplang=cn
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
禁止生成备份文件

set nobackup
搜索忽略大小写

set ignorecase 
搜索逐字符高亮

set incsearch
行内替换

set gdefault
始终显示行号

set nu!
显示光标的坐标

set ruler
设置Tab键的宽度

set shiftwidth=4
set tabstop=4
将Tab键更改为四个空格

set expandtab
这里是为了php的编码规范需求,所以也可以将文件只限定为php生效

autocmd FileType php set expandtab
根据编辑模式更改输入法光标颜色,同时禁用IME自动切换

if has('multi_byte_ime')
hi Cursor guifg=bg guibg=Orange gui=NONE
hi CursorIM guifg=NONE guibg=Skyblue gui=NONE
set iminsert=0 imsearch=0
endif
禁用自动缩进

set noautoindent
与Windows共享剪贴板

set clipboard+=unnamed
编辑vimrc之后,重新加载

autocmd! bufwritepost _vimrc source $VIM/_vimrc
设置配色方案

最后选择一个自己喜欢的配色方案,可以通过

:color 方案名
来切换尝试。如果仍然没有满意的,那么可以去官网下载更多Vim配色方案。下载后放在”D:\Vim\vimfiles\colors”。

然后可以在配置文件中写入

colorscheme 方案名
来指定一套方案作为默认的配色方案。

至此就完成了Vim的基础配置,如果不写代码的话,以上的配置已经足以应付日常需求。

Vim插件


Vim插件管理

Vim最强大之处还是由于有无穷无尽的插件,但是Vim对于插件的管理实在是弱爆了。传统的插件安装就是下载插件后丢到plugin目录下完事。但 是由于插件编写的质量参差,又没有统一的规范,久而久之Vim的插件随着安装数量的增加就会变得难以维护,而插件管理的需求也就应运而生。

目前Vim有数个插件管理方案,比如pathogen, muzuiget,vim-flavor,vundle等等。

经过再三考虑,最终选择了Vundle作为我的Vim插件管理方式。

Vundle基于Git构架,每一个插件都是一个项目的Repository,通过Vundle可以用简单的指令,一键安装/删除/更新所有插件。

Vundle的安装

安装Git

Vundle在Linux非常容易安装,在Windows下首先需要安装Git。

下载msysgit并安装。同时建议安装一个TortoiseGit作为图形界面。

Git安装后将Git的路径加入系统环境变量,win7下Git的路径为

C:\Program Files (x86)\Git\cmd
然后运行cmd,输入

git --version
如果能显示Git版本信息,说明安装成功

git version 1.7.10.msysgit.1
在Win32下还需要建立一个Curl脚本用于Vundle的远程链接。在Git的路径下新建一个空文本文件,改名为curl.cmd,编辑内容为

@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;%PATH%

@if not exist "%HOME%" @set HOME=%HOMEDRIVE%%HOMEPATH%
@if not exist "%HOME%" @set HOME=%USERPROFILE%

@curl.exe %*
保存后在cmd中输入

curl --version
如果可以看到版本信息说明运行成功。

安装Vundle

Git安装完毕后,Clone Vundle到”D:\Vim\vimfiles\bundle下,此时目录结构应该如下

D:\vim
+---vim73
+---vimfiles
    +---bundle
    |   +---vundle
    +---colors
配置Vundle

按照Vundle官方给出的配置,所有通过Vundle安装的插件会被安装到Windows的用户目录下,这里我做了修改,直接安装到Vim目录下更加方便管理

编辑_vimrc加入

filetype off

"此处规定Vundle的路径
set rtp+=$VIM/vimfiles/bundle/vundle/

"此处规定插件的安装路径
call vundle#rc('$VIM/vimfiles/bundle/')

Bundle 'gmarik/vundle'
filetype plugin indent on
通过Vundle安装插件

Vundle安装插件有三种形式,

 

一种是一个从官方移植的Vim Script,只需要在配置中写脚本的名字,比如
Bundle 'neocomplcache'


第二种是指定一个github上的项目名,以作者/项目的形式
Bundle 'gmarik/vundle'


最后还可以指定一个完整的git repos地址
Bundle 'git://git.wincent.com/command-t.git'


将要安装的插件在配置文件中写好,最后执行

:BundleInstall
就可以一键安装了。安装有问题可以按l键查看log。我在第一次安装时出现了“can't resolve proxy 'null' for https”的报警,调查发现是因为git启用了代理的原因,可以运行cmd

git config --global --unset http.proxy
解决。

Vundle常用指令

:BundleList 列出已经安装的插件
:BundleInstall 安装所有配置文件中的插件
:BundleInstall! 更新所有插件
:BundleSearch 搜索插件
:BundleClean! 根据配置文件删除插件
Vim必装插件


语法及高亮

我选择的插件有

Bundle 'JavaScript-syntax'
Bundle 'jQuery'
Bundle 'othree/html5.vim'
Bundle 'groenewege/vim-less'
Bundle 'Markdown'
Bundle 'Markdown-syntax'
Bundle 'php.vim-html-enhanced'
主要支持了JavaScript/jQuery/HTML5/LESS/Markdown

HTML/JS混排缩进改善

Bundle "pangloss/vim-javascript"
代码自动补全

代码自动补全是否优秀是评判一个IDE的重要标准,之前一直在使用ctag+supertab作为自动补全,但是ctag的补全必须借助不断更新tag文件,不够智能。所以在看到了neocomplcache后,毫不犹豫的改用了neocomplcache作为新的Vim自动补全插件。

neocomplcache可以做到:

根据文件类型补全语言内置元素
根据include关系自动寻找上下文补全要素
自动生成缓存,优先从缓存中查找
Bundle 'Shougo/neocomplcache'
另外一个非常有助于提高效率的插件是snipMate,可以根据不同语言自动补全代码段,比如在php下写for+Tab键,就会自动生成这样一段代码

for ($i = 0; $i < count; $i++) {
    // code...
}
注意这里使用的snipMate和neocomplcache都是官方版本的修改版。

Bundle "MarcWeber/vim-addon-mw-utils"
Bundle "tomtom/tlib_vim"
Bundle "snipmate-snippets"
Bundle "garbas/vim-snipmate"
Vim插件配置

安装完上述插件后还需要做一些小的配置

"自定义关联文件类型
au BufNewFile,BufRead *.less set filetype=css
au BufNewFile,BufRead *.phtml set filetype=php
au BufRead,BufNewFile *.js set ft=javascript.jquery

"---NeoComplCache 启动
let g:neocomplcache_enable_at_startup = 1 
编程字体

写代码还需要一个愉快的字体,Consola和Monaco这两种经典的等宽字体可以用做英文字体。中文字体微软雅黑足以胜任,下面是Consola,Monaco以及和微软雅黑的混合字体

Consola
Monaco
YaHei Consolas Hybrid
Yahei Mono
安装字体后自行选择以下的配置

"set guifont=Monaco:h9
"set gfw=YaHei\ Consolas\ Hybrid:h9
"set guifont=Consolas:h12
"set guifont=YaHei\ Consolas\ Hybrid:h12
"set guifont=Yahei\ Mono:h12
自定义指令

常用自定义指令就一条:

nmap mm :%s/\r//g<cr>
用于删除win32下难看的蓝色^M(其实是换行符\r)

 

Vim插件管理利器——Vundle

        以前看过vgod的一篇文章介绍过如何结合Pathogen与git submodule来管理Vim插件。当时觉得非常惊艳,用完后vim的配置目录果真清爽了不少。后来很偶然的发现了一个更强大的Vim插件——Vundle!

    Vundle给我感觉就像是Pathogen和Git的封装,它通过Vim来后台调用Git,从而免去用户直接在命令行操作Git。而Vundle之所以能够使用Git来管理所有的Vim插件,关键就在于Github上的一个vim-scripts帐号,它将vim.org上所有的插件克隆到了Github上。本来这个帐号是为Pathogen建的,结果被Vundle直接拿来用了.除了Github上的仓库,Vundle还支持任意的git仓库。

    Vundle可以通过一个命令安装所有的插件,一个命令给所有的插件升级。而要安装的插件则都写在vim的配置文件里,所以看起来一目了然,更方便管理。Vundle的官方README里面有详细的安装指南,这里简单介绍一下配置过程。

 

首先自然是先去项目主页下载好插件。放到.vim/bundle目录中。可以使用以下命令安装:
$ git clone http://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

然后在自己的配置文件里面加上下面的语句,启用Vundle:
set nocompatible " be iMproved
filetype off " required!
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()

接下来就能在配置文件中指定安装哪些插件了,Vundle支持三种格式,具体见下面的配置:
" 使用Vundle来管理Vundle,这个必须要有。
Bundle 'gmarik/vundle'
"接下来是要安装的插件
"格式1:Github上其他用户的仓库(非vim-scripts账户里的仓库,所以要加Github用户名)
Bundle 'tpope/vim-fugitive'
Bundle 'tpope/vim-rails.git'
"格式2:vim-scripts里面的仓库,直接打仓库名即可。
Bundle 'L9'
Bundle 'FuzzyFinder'
"格式3:非Github的Git仓库
Bundle 'git://vim-latex.git.sourceforge.net/gitroot/vim-latex/vim-latex'

最后在所有Bundle命令后面加上文件类型检测:
filetype plugin indent on

        大功告成,在vim里面输入:BundleInstall命令后Vundle就会自动帮你把所有的插件装好。而:BundleInstall!命令则会自动升级所有插件。

        你也可以使用Vundle手动管理插件,例如一个mytemplates插件,并放到了.vim/myplugin目录中,那么可以在vim的配置文件中加入下面的命令:
set rtp+=~/.vim/myplugin/mytemplates/

这样Vunlde就会自动去myplugin目录中载入mytempaltes插件。

现在,就可以用.vimrc来管理所有的插件了。

 

Vim 插件管理--pathogen

        安装了 pathogen 以后只要在 ~/.vim (注:MS Windows 下貌似是 ~\vimfiles,下同)里建立一个 bundle 目录,然后把所有插件一一放在 ~/.vim/bundle/插件名 下面,就可以使用。

    插件的安装过程与没有 pathogen 时类似,但从安装结束开始,一切的插件管理过程都能得到简化。 试用过某个插件以后需要删除?安装在 bundle 目录里最后把插件的目录一删了之就行了。

    想保持使用某个插件的最新版本?直接从插件的仓库 checkout 一份代码到 bundle 目录,或者别的地方再 symlink 一下就行了。

    想了解一下这个插件的实现方法?有了 pathogen 去那里找插件脚本再也不是问题了。

    pathogen 只有一个单独的脚本,所谓安装就是把它放在你的 ~/.vim/autoload 目录。 如果你有一个类 Unix 环境(Linux, Mac OS X),只需要下面这一条命令:

wget -O ~/.vim/autoload/pathogen.vim           http://www.vim.org/scripts/download_script.php?src _id=12116

 

要启用它,还要在 .vimrc 文件里,

filetype plugin indent on

之前的任何地方,加入下面这句:

call pathogen#runtime_append_all_bundles()

这样就搞定了,把常用的插件都重装在 ~/.vim/bundle 里面吧!

 

个人喜欢直接把插件从仓库里 checkout 出来,以后直接通过版本控制来更新 Vim 插件。

以 NERDTree 这个插件为例,安装起来是这样的:

git clone http://github.com/scrooloose/nerdtree.git path/to/code/nerdtree ln -s path/to/code/nerdtree ~/.vim/bundle/nerdtree

 

更新到最新版本:

cd path/to/code/nerdtree && git pull origin

 

删除该插件:rm -rf ~/.vim/bundle/nerdtree

 

怎么样,有了pathogen,管理 Vim 插件是不是就简单了很多!!

分享到:
评论

相关推荐

    vim-pathogen-master

    在本文中,我们将深入探讨`vim-pathogen`的工作原理、安装步骤以及如何利用它来管理Vim插件。 ### 1. `vim-pathogen`的工作原理 传统的Vim插件管理方式通常涉及将整个插件复制到`~/.vim/plugin`目录下,这会导致...

    Vundle.vim-master.zip

    7. **兼容性**:Vundle 支持多种 Vim 版本,包括 GVim 和 Neovim,并且与其他 Vim 脚本库(如 Pathogen)兼容。 在解压“Vundle.vim-master.zip”后,用户通常需要将解压得到的 `Vundle.vim` 目录移动到 Vim 的 `...

    vim-gocode, Vundle或者 Pathogen的分发包.zip

    vim-gocode, Vundle或者 Pathogen的分发包 gocode所有学分都转到 nsf/代码,然后去。 go 1.2中的所有Vim插件也包括在内。你应该不要使用 fsouza/go或者 jnwhiteh/vim-golang 安装这个插件。 它可能对你的设置产生...

    vim-vundle-config:已淘汰; 迁移到vim-plug-config

    Vundle是Vim的一个早期插件管理器,它允许用户通过Git仓库来安装和管理Vim插件。Vundle的主要功能包括自动下载、更新和加载插件,使得用户可以轻松定制他们的Vim环境。然而,随着时间的推移,Vundle在某些方面显示出...

    centos7离线安装vim

    在没有网络连接的情况下,为CentOS 7系统离线安装Vim是一个常见需求,特别是对于那些运行在隔离环境或服务器上的系统。本教程将详细介绍如何在CentOS 7上进行离线安装Vim。 首先,你需要获得一个包含Vim安装文件的...

    Centos7 下安装VIM编辑器

    CentOS 7 中,默认情况下只安装了 VI 编辑器,而 VIM 编辑器并未安装。这意味着,如果我们尝试使用 `vim test.txt` 命令,系统将提示 `vim command not found`。因此,我们需要安装 VIM 编辑器来满足我们的需求。 ...

    离线安装vim,vim安装及说明.zip

    离线安装Vim是Linux系统用户在没有网络连接时安装软件的一种常见方法,尤其是在服务器环境或者网络条件有限的场合。本教程将详细介绍如何通过提供的离线资源安装Vim编辑器。 Vim(Vi Improved)是一款强大的文本...

    vim8.0.zip --Linux-CentOS7离线安装VIM及相关依赖包

    Linux-CentOS7离线安装VIM及相关依赖包 vim-8.0.zip gpm-libs-1.20.7-6.el7.i686.rpm ncurses-5.9-14.20130511.el7_4.x86_64.rpm ncurses-base-5.9-14.20130511.el7_4.noarch.rpm ncurses-devel-5.9-14.20130511.el7...

    vim完整配置方案,解压可用,包含Vundle taglist.vim vim-airline The-NERD-tree

    amoscykl博主的Vim的终极配置方案,完美的写代码界面! ——.vimrc这篇帖子 ,还有我自己的修改和...YouCompleteMe没有成功,需要的还是要自己摸索,乱码问题 自己搜索vim-airline安装字体 有现成的帖子 我就不重复了

    vim的插件安装,配置教程

    为了管理这些插件,我们需要一个插件管理系统,如Vundle、Pathogen、NeoBundle或 dein.vim。这些工具可以帮助我们轻松安装、更新和卸载插件。 在本教程中,我们将使用Vundle作为示例。首先,你需要确保你的Vim已经...

    pathogen-vim插件管理器

    在Vim的世界里,Pathogen允许用户将每个插件存放在独立的目录下,使得安装新插件或更新现有插件变得异常简单。下面我们将详细探讨Pathogen的工作原理、安装步骤以及如何利用它来管理和维护你的Vim插件。 ### ...

    vim配置包,linux若要使用vim,需要先安装vim包

    对于更高级的使用,Vim有强大的插件管理系统如Vundle、Pathogen或NeoBundle,它们可以帮助你方便地安装和管理第三方插件。例如,安装Vundle可以让你通过简单的命令来安装和管理如YouCompleteMe(代码补全)、...

    ubuntu离线安装vim

    3. `vim-tiny_8.2.1913-1ubuntu3_amd64.deb` 和 `vim-tiny_8.0.1453-1ubuntu1.4_amd64.deb`:这两个是Vim的精简版,只包含基本功能,适用于内存有限的系统。`amd64`表示它们是为64位架构编译的。 4. `vim-common_8.2...

    vim7.2和vimgdb7.2软件安装源码

    在源码目录下,我们需要配置、编译和安装vim。通常,这包括以下步骤: ```bash ./configure --prefix=/usr/local/vim --enable-gui=none --enable-multibyte make sudo make install ``` 这里的`--prefix`参数指定...

    vim离线安装rpm包

    在Linux环境中,有时我们需要在没有网络连接的情况下安装软件,这时离线安装就显得尤为重要。针对“vim离线安装rpm包”这个主题,我们将详细讲解如何在Linux系统中通过rpm命令来实现vim的离线安装,以及相关的重要...

    docker下debian9的vim安装

    支持docker容器,debian9的操作系统下的vim编辑工具 安装顺序: 1. dpkg -i vim-common_7.3.429-2ubuntu2.2_amd64.deb 2. dpkg -i vim-runtime_7.3.429-2ubuntu2.2_all.deb 3. dpkg -i --force-all libgpm2_1.20.4-...

    vim插件CtrlP+NerdTree+EasyMotion+Pathogen+Surround+Visual-Multi

    安装这些插件后,可以通过Vim的`:PluginInstall` 命令(如果你已经使用了像Vundle或NeoBundle这样的插件管理器)或者手动复制到`~/.vim/bundle` 目录来启用它们。然后,根据个人需求调整 `_vimrc` 文件中的设置,以...

Global site tag (gtag.js) - Google Analytics