Debian squeeze安装vim自动补全插件snipMate.绝对可用

之前apt-get install 安装了vim 和vim-gtk 等等,在win下的snipMate代码补全是可以用的,在debian下就不能用了。

百思不得其解,换了很多方法,网上讲的云里雾里的,终于现在给我鼓捣出来了,特分享一下心得,


首先关于 vim的环境变量,大家需要有个了解,请移往下面的链接阅读片刻

http://blog.csdn.net/rainysia/article/details/7661288


因为我进debian后习惯性的进入root  ,我的VIM的各个路径分别在

/etc/vim   这里面是VIM的配置文件,分别有 vimrc gvimrc vimrc.tiny 3个文件,权限和组都为 root root 

/usr/share/vim   这个是VIM的主程序所在  分别有

                                   addons/                        vim的组件目录

                                   gvimrc                            一个符号链接,指向了上面的/etc/vim/gvimrc

                                   registry/                       

                                   vim72/                           vim的主要程序所在 里面包含了/doc /plugin等等这些目录

                                   vimcurrent/                   是vim72/的符号链接

                                   vimfiles/                        一个符号链接,指向了上面的/etc/vim/

                                   vimrc                             一个符号链接,指向了上面的/etc/vim/vimrc

                                   vimrc.tiny                      同上,指向/etc/vim/vimrc.tiny

(符号链接,修改后直接影响原文件)

然后在#root/ 下 有一个 .viminfo 文件是记录vim操作的,  大家可以 su - 进入管理员后 cd / 进入 #~ ,然后ls -la 可以看见这个文件

在/home/rainysia/  也有一个.viminfo 是记录的用户rainysia的vim操作的,直接打开终端后,$cd ~然后ls -la也可以看见这个文件

列出上面两个文件是为了诠释 管理员的~目录 和 用户的~目录 是不同的一个目录,都存在很多相同的文件


现在下载snipMate

http://www.vim.org/scripts/script.php?script_id=2540

比如我们下载到/home/rainysia/里面,  详细路径为 /home/rainysia/snipMate.zip

打开终端,$

$cd ~            进入用户的~/

$mkdir .vim

$touch .vimrc

第一个是创建.vim目录,第二个是创建.vimrc,我的vimrc的配置文件是在/etc/vim/vimrc这个地方,这个有什么用? 这个是用户的.vimrc配置,说白了,就是可以追加用户的vim配置,(特别注意,如果你的/etc/vim/vimrc 文件里面有函数,那么就不要复制你的/etc/vim/vimrc 这个配置文件为 $~/.vimrc ,因为函数重复会报错,不管是不是用的软链接,都要报错,所以这里,你只需要定义你的函数在/etc/vim/vimrc就行了)

这里我们是新建的一个干净的.vimrc文件


我先进入root

$su -

输入密码,进入root

#cd /etc/vim

#gnome-open ./     打开当前目录/etc/vim

用gvim打开vimrc

我在第一行定义了环境变量

let $VIMRUNTIME="/usr/share/vim/vim72"
set runtimepath=/usr/share/vim/vim72,~/.vim,~/.vim/after

在vim里面的可视界面 输入命令 (按ESC退出插入模式后的界面)

:echo $VIM

:echo $VIMRUNTIME

:scriptname

分别显示

/usr/share/vim/

/usr/share/vim/vim72

第二个是加载的脚本名,可以看到这里面是没有加载上/snipMate的插件的,因为这个是管理员root。而那个snipMate规定了必须在$~/.vim里面


下面回到终端,exit退出root 进入用户终端$

$cd ~ 

$gvim .vimrc

用用户的权限编辑 $~/.vimrc 这个文件, $~/.vimrc 这个文件实际路径为 /home/rainysia/.vimrc  我的用户名是rainysia

前面说了,用户的.vimrc文件是增加或者修改vim在用户权限下的配置的,所以这里我们加上三行

set runtimepath=/usr/share/vim/vim72,~/.vim,~/.vim/after
let g:snippets_dir='/home/rainysia/.vim/snippets'
filetype plugin on

第一个行的意思是设置runtimepath的路径,第二行的意思是让snipMate的代码扩展组件定义为这个详细路径,第三个是打开载入文件 类型插件

保存退出

:wq!

回到下载的snipMate   我放在/home/rainysia/snipMate.zip

进入终端$~:

~$:cd /

/$:cp /home/rainysia/snipMate.zip /home/rainysia/.vim/

/$:cd ~

~$:cd .vim/

~/.vim$:unzip snipMate.zip

解压snipMate在当前目录 要是.vim目录已经存在了提示你覆盖什么的,选All

然后直接打开的vim全部退出

在用户界面随便新建一个文件(权限是用户 不是root)

然后随便输入一个 比如init main 然后按下tab 

成功了。 代码自动补全为

int int main(int argc, const char *argv[])
{

return 0;
}

这样子debian下的gvim也可以用上snipMate了。类似的,ubuntu的用户,如果装不了,可以参考下。


解决这个插件装不上的几个思路

1: 环境变量

2:snipMate文件只能放在~/.vim$ 下,不能放在官方的说的不严谨的 ~下。 ~包含 # 和 $

3:定义let g:snippets_dir='/home/rainysia/.vim/snippets'  这个绝对路径 /home/后跟的我的用户名,你可以改成你的

4:多google 英文相关的关键词,不要中文。


附上snipmate的配置文件修改说明

一:是修改变量 在vimrc里面,增加 

let g:snips_author = 'rainysia'

类似的,你可以定义其它的,这个会影响到在snippets里面的各种文件类型的author输出.你也可以直接修改

二:修改snippets里面的_.snippets文件,增加全局的变量 比如我加了3个,date,time,week代码如下

snippet date
`strftime("%Y-%m-%d")`
snippet time
`strftime("%Y-%m-%d %H:%M:%S")`
snippet week
`strftime("%A")`

三:修改具体类型的.直接到对应的类型文件里面修改既可.修改完记得全部退出后再打开才生效.

四:可以配合zencoding使用.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值