V 友们真的使用了 Vim-YCM 吗(300 多 M,好夸张)? 感觉它怎么样? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wentian
V2EX    Vim

V 友们真的使用了 Vim-YCM 吗(300 多 M,好夸张)? 感觉它怎么样?

  •  
  •   wentian 2016-02-23 15:12:22 +08:00 10749 次点击
    这是一个创建于 3587 天前的主题,其中的信息可能已经有所发展或是发生改变。
    对于一个「经常写 Python/Ruby/Shell,很少写 C++/C 」的人来说,安装 YCM 真的合适?
    55 条回复    2016-05-13 12:27:44 +08:00
    SpicyCat
        1
    SpicyCat  
       2016-02-23 15:30:38 +08:00
    没配成功 YCM ,目前用的是 neocomplete
    winkar
        2
    winkar  
       2016-02-23 15:54:58 +08:00
    YCM 对 python 很友好, 对 shell 作用不大(唯一的作用大概是补全路径), 对 ruby 略有用处(一些 snippet).
    congeec
        3
    congeec  
       2016-02-23 16:03:09 +08:00
    不写 C-family 语言的话,不建议用 ycm

    @winkar jedi, neocomplete, ultisnips
    Tink
        4
    Tink  
    PRO
       2016-02-23 16:07:21 +08:00
    chmlai
        5
    chmlai  
       2016-02-23 16:07:29 +08:00
    挺好用的
    xxm459259
        6
    xxm459259  
       2016-02-23 16:18:56 +08:00
    我觉得显然不合适
    chenxytw
        7
    chenxytw  
       2016-02-23 16:22:53 +08:00
    写 Python 呀,当然要用 Pycharm 呀
    chenxytw
        8
    chenxytw  
       2016-02-23 16:24:33 +08:00
    @chenxytw 不过如果是服务器的话...那还是可以用 YCM 的。。。
    anochop
        9
    anochop  
       2016-02-23 16:24:47 +08:00
    功能强大,但是实在太卡了,还是放弃了
    a591826944
        10
    a591826944  
       2016-02-23 16:26:34 +08:00
    挺好用的啊。。。我用他提示 go 。。。
    codecrash
        11
    codecrash  
       2016-02-23 16:29:14 +08:00
    异常好用,c 系列,还可以配合 eclim 写 java
    ck89119
        12
    ck89119  
       2016-02-23 16:30:42 +08:00
    很好用,不卡
    RisingV
        13
    RisingV  
       2016-02-23 16:32:18 +08:00
    感觉有很多改善余地
    没其他更好选择了,机器配置好点,不感觉卡
    codecrash
        14
    codecrash  
       2016-02-23 16:36:05 +08:00
    ubuntu 包含了 YCM,可以直接 apt-get install
    chy373180
        15
    chy373180  
       2016-02-23 16:44:42 +08:00
    感觉良好
    wentian
        16
    wentian  
    OP
       2016-02-23 16:46:03 +08:00
    @codecrash 能用 apt-get 是最好了, 自己编译费时费力还出错(有时),
    还需要安装其他依赖吗(搜索了一下,ask-ubuntu 上说要 t 推荐安装一个 vim-addon-manager)
    ( http://askubuntu.com/questions/541737/how-to-use-vim-youcompleteme)
    tokki
        17
    tokki  
       2016-02-23 16:47:25 +08:00
    mac 很容易装 速度也不慢 倒是真没发现有 300m 这么大。。。
    FrankFang128
        18
    FrankFang128  
       2016-02-23 16:48:52 +08:00   1
    300m 还不如 IDEA
    billion
        19
    billion  
       2016-02-23 16:49:54 +08:00
    我使用的是 vim-jedi,也很好用。
    xnotepad
        20
    xnotepad  
       2016-02-23 16:55:45 +08:00
    挺好用的, unix-like 比较好配, windows 一直没成功。
    yxzblue
        21
    yxzblue  
       2016-02-23 16:58:37 +08:00
    @FrankFang128 好像是的~~~
    bookit
        22
    bookit  
       2016-02-23 16:59:23 +08:00
    补全最强大的还是 visual assist x

    其他平台上的软件没有能与之相比的
    JadeV
        23
    JadeV  
       2016-02-23 18:05:08 +08:00
    每次打开 vim 的时候都会先卡 5-10s ,之后全程没问题。。笔记本换了固态之后就再也不卡了
    xuboying
        24
    xuboying  
       2016-02-23 19:01:36 +08:00 via Android
    Jedi 最近支持 pep484 了,爽的飞起
    wentian
        25
    wentian  
    OP
       2016-02-23 19:17:12 +08:00
    @xuboying 对 Python 基本够用了
    jiazhoulvke
        26
    jiazhoulvke  
       2016-02-23 19:24:25 +08:00
    拿版本库和二进制文件比我真是无语了。怎么不说 linux 内核的版本库都上 G 了呢?编译以后也就几十 M 而已。
    wentian
        27
    wentian  
    OP
       2016-02-23 19:29:14 +08:00
    @jiazhoulvke 大可不必如此动怒
    另外,「用 Linux 只使用一个编译的内核?」
    alexsunxl
        28
    alexsunxl  
       2016-02-23 19:38:37 +08:00
    接贴子提问。 ycm 怎么整合 php 的补全呢。最近才开始用 vim , ycm 刚装没多久。
    Owenjia
        29
    Owenjia  
       2016-02-23 19:57:21 +08:00
    写 Python 3 的话最好还是不要用 YCM 了,记得自动补全出来的是 Python 2 的。
    forsigner
        30
    forsigner  
       2016-02-23 20:13:04 +08:00
    YCM 必须要的啊,用起来很爽,我是前端
    codesun
        31
    codesun  
       2016-02-23 21:46:32 +08:00
    自动标注语法错误的功能还是很实用的,只不过资源占用有点大,而且有时候不太稳定。
    xuyuheng0905
        32
    xuyuheng0905  
       2016-02-23 22:03:37 +08:00
    python 用 py-mode , python 它爸就是用这个。个人 YCM 配置起来略麻烦。。。,尤其是 Windows 下。
    jciba5n4y6u
        33
    jciba5n4y6u  
       2016-02-23 22:10:58 +08:00
    蛋疼,折腾过,太复杂。感觉太累啊,搞不懂的东西用起来始终不放心
    Magnus1k
        34
    Magnus1k  
       2016-02-23 23:08:01 +08:00 via iPhone
    @bookit 价格也是
    kevinyoung
        35
    kevinyoung  
       2016-02-23 23:40:47 +08:00
    neocomplete 和 ycm 都用过,主要写 python 和 c++,说下感受

    neocomplete 非常好配置,但补全起来觉得很傻,感觉就是个正则引擎,所以只能做一些关键词不全,想补全 python 类的 attributes 和 methods 就没办法了, c++的情况类似。

    ycm 配置确实麻烦,我一度没搞成过。那几百兆的东西主要是后端分析代码的,并不只是简单的正则匹配,理论上能给出 IDE 的使用体验,实际用起来也确实不错,比 neocomplete 强出几条街,尤其是写 c++我觉得不错。 python 的补全体验个人觉得没有做到极致,可能跟 python 动态语言的特性有关,至少肯定没法跟 ide 比,会卡,很多时候补不出来。

    所以如果 lz 只是写动态语言的话觉得没必要专门去折腾 ycm ,反正到最后还是要靠自己去写。如果要写 c++的话那建议再折腾也要上 ycm 。
    MCVector
        36
    MCVector  
       2016-02-24 00:16:01 +08:00
    写 C++ 项目很好用。特别是自己写 CMakeLists.txt 的时候,可以用脚本生成 config file.
    jiazhoulvke
        37
    jiazhoulvke  
       2016-02-24 00:16:58 +08:00
    @wentian 我没动怒啊。拿 linux 内核举例是想说明拿 ycm 的源码和编译好的成品比是不科学的,实际上一个编译好的 ycm 的动态链接库也就一两兆,那些源码大部分都可以删掉。
    ycm 的补全绝对是 vim 所有插件中最好最快的。
    Owenjia
        38
    Owenjia  
       2016-02-24 01:15:42 +08:00 via Android
    @kevinyoung neocomplete 可以和 jedi-vim 配合的,记得之前 YCM 在写 py3 的时候会自动补全 py2 的属性方法,大概是 vim 的什么机制限制导致的。
    blacksu
        39
    blacksu  
       2016-02-24 03:02:11 +08:00
    YCM 太卡,而且没配成功。用 jedi 写 python 足够
    jsfaint
        40
    jsfaint  
       2016-02-24 07:27:23 +08:00 via Android   1
    通用补全用 neocomplete
    Python 用 jedi-vim
    Javascript 用 tern-for-vim
    c-family 用 clang_complete ,备选有 vim-marching 和 vim-clang
    vim 补全用 necovim ( neocomplete 的插件)
    头文件补全用 neoinclude ( neocomplete 的插件)

    ycm 确实很不错,不过太重了,而且 windows 版不好编译

    最近 vim 多了一个 channel 和 jobcontrol 的 patch ,等完成了以上插件估计性能还能提升
    firebroo
        41
    firebroo  
       2016-02-24 08:00:08 +08:00 via Android
    在用,还行。
    wbanng
        42
    wbanng  
       2016-02-24 08:24:47 +08:00
    以前写 C 用 clang_complete ,后来换成 YCM ,补全更方便、智能些,就是编译和配置麻烦。
    不过 YCM 一旦配好后,写 C 用起来还是很舒服的
    jsfaint
        43
    jsfaint  
       2016-02-24 08:41:21 +08:00
    asxalex
        44
    asxalex  
       2016-02-24 09:12:57 +08:00
    写 C 好用呀
    xiaket
        45
    xiaket  
       2016-02-24 09:19:25 +08:00
    [xiaket@dirac ~/.vim/bundle/YouCompleteMe]du -sh .
    83M .
    wlsnx
        46
    wlsnx  
       2016-02-24 09:50:56 +08:00
    很好用
    linux40
        47
    linux40  
       2016-02-24 09:59:54 +08:00 via Android
    编辑器上想补全 c++的话,当编译器升级的时候都需要自己手动改目录吧,不如用 ide 呢。
    caiych
        48
    caiych  
       2016-02-24 11:59:44 +08:00
    1 YCM 补全 Python 挺弱的
    2 用起来卡的可以试试一直用一个 vim 不关上, YCM 缓存在 vim 退出的时候就失效了。
    merito
        49
    merito  
       2016-02-24 12:42:15 +08:00
    @Owenjia 现在不会了。 YCM 现在对 jedi 封装了一层,使用 jediHTTP 来判断补全 python 的版本,然后返回 JSON
    marchtea
        50
    marchtea  
       2016-02-24 13:10:37 +08:00
    用.
    小工程问题不大,写 c/c++很舒服.
    大工程卡的跟翔一样.尤其是,机器性能不好的时候..
    所以我现在都用 xcode+xvim 了..
    wklken
        51
    wklken  
       2016-02-24 13:38:17 +08:00
    一直在用, 写 python, 固态硬盘, 没感觉卡:)
    装起来是麻烦了些, 但是物有所值
    lixiaohan
        52
    lixiaohan  
       2016-02-24 15:08:15 +08:00
    @wklken 我也是 用来写 Python , 固态硬盘没觉得卡,装起来 耗时点 ,不过 如果你嫌麻烦 不如直接 pycharm 异步搞定
    theJian
        53
    theJian  
       2016-02-24 18:09:31 +08:00
    好用,啥也不说
    bookit
        54
    bookit  
       2016-02-24 18:36:03 +08:00
    @Magnus1k 我买的正版。。还有 viemu 也不错
    ashfinal
        55
    ashfinal  
       2016-05-13 12:27:44 +08:00
    Vim-YCM python 补全也用的是 jedi ,所以不必装这巨无霸。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2580 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 12:59 PVG 20:59 LAX 04:59 JFK 07:59
    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