一条命令即可将 Vim 配置为功能强大的 C/C++ IDE - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
HmyBmny
V2EX    分享创造

一条命令即可将 Vim 配置为功能强大的 C/C++ IDE

  •  
  •   HmyBmny 2016-09-17 10:00:41 +08:00 8803 次点击
    这是一个创建于 3316 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一条命令即可将 Vim 配置为功能强大的 C/C++ IDE 。包括安装不太方便的 YouCompleteMe 插件也是自动安装,并且会自动从官网下载最新版本的 libclang,然后编译 YouCompleteMe 插件需要的 ycm_core library ,同时也有一些非常方便的快捷键设置。

    地址: https://github.com/HmyBmny/vimrc

    支持所有 Linux 平台, Mac 没试过,如果想用来开发 pythonGo 或者其它的语言,只需要找到相应的 Vim 插件并将仓库名加到 .vimrc 文件即可。

    开发 python 只需将下面的代码添加到 .vimrc 文件

     `klen/python-mode` 

    在终端运行 vim :PlugInstall +qall 安装插件后配置完成。

    开发 Go 只需将下面的代码添加到 .vimrc 文件

    `fatih/vim-go` 

    在终端运行 vim :PlugInstall +qall 安装插件后配置完成。

    第 1 条附言    2016-09-19 10:03:56 +08:00
    添加插件

    Plug 'klen/python-mode'


    Plug 'fatih/vim-go'
    8 条回复    2016-09-19 10:01:34 +08:00
    douglas1997
        1
    douglas1997  
       2016-09-17 12:43:13 +08:00 via iPhone
    不知能不能成功。怎么测试呢。还要打包备份。唉。回去试试先
    tyzZ001
        2
    tyzZ001  
       2016-09-17 13:26:32 +08:00
    mark
    HmyBmny
        3
    HmyBmny  
    OP
       2016-09-17 14:45:17 +08:00
    @douglas1997 你只需要把你之前的配置文件改下名字就行了,比如 .vim 改为 .vim_tmp 之类的,如果不行你再把名字改回来,而且安装是不会有什么问题的,最多就是自动安装 YouCompleteMe 过程中需要 gcc g++ cmake 之类的你没安装, YouCompleteMe 插件有点大,如果几 k 每秒的网速那会很难等的。除了 README 中提到的快捷键外各个插件也还有其它的快捷键,推荐你去看官方文档, 如果需求不是很大的话 README 中给出的基本够用。
    douglas1997
        4
    douglas1997  
       2016-09-17 22:12:32 +08:00
    @HmyBmny 好的谢谢这么详尽的回答。我之前就是 youcompleteme 实在安装成功不了就放弃了。
    iCyMind
        5
    iCyMind  
       2016-09-18 14:47:47 +08:00 via Android
    和 spf13 等成熟的 vim 配置相比,有什么特点吗?
    HmyBmny
        6
    HmyBmny  
    OP
       2016-09-18 15:46:17 +08:00
    @iCyMind 很高兴能够回答你的问题。首先 spf13-vim 文档写得非常好,配置也很全面,我想作者的本意是能兼顾使用不同开发语言的开发者都能够使用,而且他主要的目标对象应该是那些不能自己配置或者觉得自己配置嫌麻烦的;对于长期使用 `vim` 的同学来说,肯定会根据自己的习惯加入一些个性化的配置。假如你是一个新手,当你面对 .vimrc .vimrc.bundles .vimrc.before 时,你知道你的自定义配合需要加到哪个文件?当你删除或者增加插件时你该修改哪个文件?我个人觉得 spf13-vim 不太适合新手使用,至少不适合新手长期使用。

    下面说说 https://github.com/HmyBmny/vimrc 的特点吧:

    1. 一键安装,包括 YouCompleteMe 插件,并且会自动从官网下载最新版本的 libclang (官方推荐),并不会使用系统自带的,由于配置的是 C/C++ IDE ,所以默认 --clang-completer ,当然你也可以选择 --all 或者其它,前提是需要你能看懂 .vimrc 文件。

    2. 按需加载插件,比如 Plug 'suan/vim-instant-markdown', { 'for': 'markdown' } ,只有打开 markdown 文件是才会加载插件,打开其它文件时不加载,又比如 Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' } ,打开 vim 时插件是不会加载的,只有在你输入 : 'NERDTreeToggle 命令时该插件才会加载;所以你你可以通过设置后可以让 vim 不加载不必要的插件,这是不是加快了 vim 的启动速度?

    3. 默认插件少,除了必要的插件外,其它的插件需要用户自己去安装,比如 AutoClose 之类的插件都没装,因为有些可能更喜欢 UltiSnips 代码片段来实现 AutoClose 的功能。

    4. 除了基本的上下左右之类的键外,你只需记住 README 中给出的快捷键就基本够用。

    5. 大牛可以选择无视。

    总的来说我更喜欢简洁一点的东西,配置太多用不上也是徒劳。
    wikinee
        7
    wikinee  
       2016-09-18 17:09:29 +08:00
    这两天用了 echofunc
    HmyBmny
        8
    HmyBmny  
    OP
       2016-09-19 10:01:34 +08:00
    @wikinee 你可以把 Plug ‘ mbbill/echofunc ’ 加到 .vimrc 中,运行 vim :PlugInstall +qall 就行了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4004 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 05:26 PVG 13:26 LAX 22:26 JFK 01:26
    Do have faith in what you're doing.
    ubao msn 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