VimApt - 一个强大和用户友好的 vim 包管理软件 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
howlanderson
V2EX    Vim

VimApt - 一个强大和用户友好的 vim 包管理软件

  •  1
     
  •   howlanderson 2017-05-08 00:28:17 +08:00 5080 次点击
    这是一个创建于 3077 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目主页 : https://www.vimapt.org

    GitHub 地址 : https://github.com/owl-anderson/vimapt

    中文版 README: https://github.com/howl-anderson/vimapt/blob/master/README.zh-Hans.md

    Vimapt

    Vimapt 是一个 Vim 的软件包管理器/软件包管理软件, 其中"vimapt"是"Vim's Advantage Package Tools"的缩写.

    特性

    1. 基于 Web 的软件包仓库
    2. "一个软件包,一个配置文件", 使得 vim 的软件包更易于管理,更容易分享配置和更容易备份
    3. 从软件打包到软件安装的全系列支持工具,让使用者非常容易使用 vimapt

    获取 vimapt

    你可以从 github / bitbucket 上下载

    安装

    Vimpat 提供了自动安装的脚本:

    `curl -sLf http://www.vimapt.org/install.sh | bash` 

    Windows 用户请按照手动安装章节进行安装

    手动安装

    在你开始安装前,你需要确认你的 vim 支持 python 扩展,通过执行vim --version, 你需要观察输出的特性列表中是否有+python或者 +python3, 前者表示支持 python2,后者表示支持 python3. -python或者 -python3 分别表示对上述特性不支持. vimapt 需要 vim 支持 python, 同时你需要记住 vim 对 python 支持的版本情况,因为后续会用到这个信息.

    1. 将 vimapt 的源代码放到.vim目录中. 如果你是从 git 仓库获取的代码, vimapt 的源代码位于src目录.

    2. 备份你的.vimrc文件 (稍后你将用到)

    3. 清除.vimrc内容并添加如下代码:

      source ~/.vim/vimapt/vimapt.vim

    4. 如果你的备份的.vimrc包含有设置信息, 那么请把它移动到这个文件.vim/vimrc/vim.vimrc.

    5. 执行 pip install -r ~/.vim/vimapt/library/requirements.txt 如果你的 vim 支持 python2 或者 pip3 install -r ~/.vim/vimapt/library/requirements.txt 如果你的 vim 支持 python3, 这些命令是为了安装 vimapt 所需的 python 依赖包.

    使用

    vimapt update

    在 vim 终端中, 输入 :VimApt update 并按回车.

    vimapt 将会连接官方仓库,并更新本地软件列表.

    vimapt repolist

    在 vim 终端中, 输入 :VimApt repolist 并按回车.

    vimapt 将会显示一个你可以安装的软件的列表.

    vimapt install

    在 vim 终端中, 输入 :VimApt install xxx 并按回车.

    如果一切正常,你将很快会被提示 xxx 软件包安装成功.

    注意: 这个过程需要你的计算机联网并且 xxx 包在仓库中

    vimapt remove

    在 vim 终端中, 输入 :VimApt remove xxx 并按回车.

    vimapt 将会把 xxx 从你的系统中移除.

    小贴士

    Vimapt 对自动补全的支持非常好. 你可以补全命令和软件包的名字. 请注意 vim 使用 TAB 作为自动补全的触发键.

    自动补全命令

    在 vim 终端中, 输入 :VimApt, 注意最后一个输入字符是空格. 现在你按 Tab / TAB 去自动补全. 就像 shell 中的自动补全一样. 你会轮流看到可能的命令.

    部分命令补全也是支持的. 比如, 你想输入命令 :VimApt install, 在 vim 终端中, 输入 :VimApt inst, 现在你按 Tab / TAB 去自动补全. vimapt 将会自动帮你补全命令至 :VimApt install.

    自动补全软件包名

    几乎所有的 vimapt 命令都支持补全.比如, 你想移除名为 'example-package'的包, 当你输入 :VimApt remove example-, 然后按 TAB / Tab, 如果 vimapt 中安装的包只有一个包名字开头为 example-, vimapt 会自动补全命令 :VimApt remove example-package, 如果有多个包开头是 example-, vimapt 会自动循环显示这些名字.

    教程

    在安装 vimapt 后, 这里将使用安装 nerd-tree 作为案例, 来显示使用 vimapt 的一般流程.

    1. 更新你的 vimapt 仓库.

      使用 :Vimapt update, vimapt 将会自动更新至最新的软件列表.

    2. 安装 nerd-tree

      使用 :Vimapt install nerd-tree, vimapt 将会自动帮你安装该软件. 提示:你可以使用自动补全来加速你的输入.

    3. 重启 vim

      vim 重启之前,插件并不能工作(至少当前版本不行),所以需要重启启动 vim

    4. 使用 nerd-tree

      现在 nerd-tree 已经安装完成, 你可以开始使用了, 通过在普通模式中按键 Ctrl-D, 你可以看见nerd-tree的文件树出现在左侧, 再次按Ctrl-D则消失.

    5. 移除 nerd-tree

      当你不再需要 nerd-tree 了, 你可以使用 :Vimapt remove nerd-tree 来移除这个包. 移除后,你可以使用按键 Ctrl-D 来确定它是否还能工作. 如果一切正常,这个按键应该不会起作用了.

    示例截图

    1. VimApt 安装软件 vimapt_install

    2. VimApt 软件配置文件 vimapt_vimrc

    16 条回复    2017-05-10 13:33:55 +08:00
    fityme
        1
    fityme  
       2017-05-08 00:51:20 +08:00
    贵圈到现在还是连包管理器都没法统一啊前 VIM 用户
    howlanderson
        2
    howlanderson  
    OP
       2017-05-08 00:53:21 +08:00
    @fityme 贵圈一直很乱,敢问大佬现在在什么圈混呢?
    dtfm
        3
    dtfm  
       2017-05-08 01:03:32 +08:00
    @howlanderson #2 肯定不会是前端圈
    howlanderson
        4
    howlanderson  
    OP
       2017-05-08 01:08:18 +08:00
    捂脸笑出眼泪~
    itfanr
        5
    itfanr  
       2017-05-08 08:28:51 +08:00 via Android
    spacevim
    eraserking
        6
    eraserking  
       2017-05-08 10:24:22 +08:00
    Vim 到底有多少包管理?
    shihira
        7
    shihira  
       2017-05-08 11:51:26 +08:00 via Android
    其实前几年 pathogen 感觉几乎要一统江湖了,突然之间 github 异军突起大家都把代码搬到了 github。于是有些插件就开始围绕 github 来管理插件(比如 vim-plug ),结果是再次陷入了混乱。
    ixx
        8
    ixx  
       2017-05-08 13:55:04 +08:00
    vim-plug 用着不错,感觉换是换不完的 习惯了一个就好 ,还好我插件装的不多
    zgqq
        9
    zgqq  
       2017-05-08 13:57:17 +08:00
    vim-plug 够用了
    27
        10
    27  
       2017-05-08 19:54:24 +08:00
    star 一个以表支持
    howlanderson
        11
    howlanderson  
    OP
       2017-05-08 20:13:13 +08:00
    @27 表示感谢!~
    howlanderson
        12
    howlanderson  
    OP
       2017-05-08 20:13:41 +08:00
    @ixx 我回头研究研究这个软件
    howlanderson
        13
    howlanderson  
    OP
       2017-05-08 20:14:09 +08:00
    @shihira 百家争鸣,百花齐放啊
    howlanderson
        14
    howlanderson  
    OP
       2017-05-08 20:14:30 +08:00
    @eraserking 其实~ 我也想知道~
    eraserking
        15
    eraserking  
       2017-05-09 13:55:09 +08:00
    @howlanderson
    vim8 自带的
    Vundle
    Pathogen
    vim-plug
    Neobundle
    Dein
    VAM
    Vimapt

    能想起来的有这些,还有吗……
    howlanderson
        16
    howlanderson  
    OP
       2017-05-10 13:33:55 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     871 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 21:14 PVG 05:14 LAX 14:14 JFK 17:14
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86