请教一下 什么让你放弃 vim 改用 neovim - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chy373180
V2EX    Vim

请教一下 什么让你放弃 vim 改用 neovim

  •  
  •   chy373180 2016-05-05 11:12:52 +08:00 29844 次点击
    这是一个创建于 3451 天前的主题,其中的信息可能已经有所发展或是发生改变。

    除了 vim 本身的代码重构, api 优化,还有什么改进, 这些对我们的使用体验有什么提升

    42 条回复    2023-01-18 11:05:54 +08:00
    coolair
        1
    coolair  
       2016-05-05 11:15:27 +08:00 via Android
    没听过 neovim
    TankyWoo
        2
    TankyWoo  
       2016-05-05 11:16:50 +08:00
    前些日子试了下,没能感受出实际差距,并且 vim 最近的 release 更新都很给力。

    希望有懂的小伙伴能对比讲解下差异性。
    BigPa
        3
    BigPa  
       2016-05-05 11:30:34 +08:00 via iPhone   1
    因为 ycm ,从 neovim 退回到了 vim
    chy373180
        4
    chy373180  
    OP
       2016-05-05 11:39:04 +08:00
    @BigPa neovim 不能用 ycm 么 好吧 那就这点来说 压根不能换到 neovim 。。。
    hei1000
        5
    hei1000  
       2016-05-05 11:46:30 +08:00 via Android
    neovim 还处于初期开发阶段呢, 1.0 出来了再说
    FrankFang128
        6
    FrankFang128  
       2016-05-05 12:26:48 +08:00 via Android
    复制粘贴
    Droplete 完爆其它自动补全
    EchoWhale
        7
    EchoWhale  
       2016-05-05 12:28:53 +08:00 via Android
    装了 5 分钟,然后卸了
    mind3x
        8
    mind3x  
       2016-05-05 12:34:26 +08:00
    最开始是因为这是个 codebase 清理版的 vim
    后来发现已经自带了 golang , json 之类的 syntax ,就继续用了
    congeec
        9
    congeec  
       2016-05-05 12:35:23 +08:00   1
    neovim 主要来说对开发者友好
    等着吧, neovim 不会让你放弃 vim , neovim 的插件会让你放弃 vim
    Ge4Los
        10
    Ge4Los  
       2016-05-05 12:37:23 +08:00
    据说速度快,目前还没体验出来。
    而且已经有一大波支持 neovim 异步特性的插件。
    SpicyCat
        11
    SpicyCat  
       2016-05-05 12:43:08 +08:00
    neovim 才几年,哪那么容易替换 vim 。
    这不是第一次有项目声称要替换 vim ,不过我还是比较看好 neovim 的,因为开发者中有我喜欢的 vim 插件作者。
    markx
        12
    markx  
       2016-05-05 12:44:13 +08:00
    我倒是没有觉得 neovim 有什么特别好的地方, 不过那个 true color 支持还挺好的。

    另外 @chy373180 neovim 用 ycm 完全没问题。 不知道他为什么要那样说来误导人。
    chemzqm
        13
    chemzqm  
       2016-05-05 13:06:13 +08:00   4
    neovim 已经很稳定了,我用了几个月,发现过几个问题,提交给社区基本都很快处理了。
    neovim 的主要优势:
    异步插件,例如 neomake , 还有我做的 redismru.vim ,可以避免同步的卡顿
    内置 terminal ,完全不再需要 tmux (需要一些配置或者写插件)
    支持 meta key mapping ,可以让你拥有更多的快捷键,例如我在 iterm 把 s 映射为 s ,然后配置 vim 映射 s 到 :wa, 就可以 s 保存文件了。
    支持 true color , 让你的终端 vim 跟 gvim 一样的好看
    自持鼠标事件(终端 vim 不支持 terminal 鼠标事件),包括点击滑动,触摸板也能轻松操作
    支持 messagepack 接口异步通讯,可以使用其它语言与 neovim 进行通讯。

    使用 neovim 没必要说是放弃 vim ,我使用 neovim 打开包含很多 data-url 这种长字符串 css 文件时会很卡,这时候我就用 vim 去编辑。 如果是长期使用 macvim/gvim 这种,不太使用终端的开发,切换成本还是不低的。
    Numbcoder
        14
    Numbcoder  
       2016-05-05 13:06:27 +08:00
    @FrankFang128 Droplete 是什么,搜不到?
    anying
        15
    anying  
       2016-05-05 13:11:10 +08:00 via Android
    @Numbcoder 应该说的是 deoplete
    n6DD1A640
        16
    n6DD1A640  
       2016-05-05 13:13:36 +08:00
    很少在终端用 vim 很不习惯。。如果有 GUI 可以试下。
    Ge4Los
        17
    Ge4Los  
       2016-05-05 13:17:21 +08:00
    @Numbcoder 他写错了,是 deoplete ,异步补全插件。
    wsdjeg01
        18
    wsdjeg01  
       2016-05-05 13:38:57 +08:00 via Android   1
    https://github.com/Neovim-cn/Neovim-cn.gitgub.io/blob/master/translation/vim_diff.md
    这是官方 diff 文件,我做的翻译。
    另外 neovim 和 vim 的区别在于, neovim 比较容易接受新的特性。
    主要让我放弃 vim 是很好的异步补全插件 deoplete.nvim ,更好的多线程插件管理工具 dein.vim . 更加容易理解的 job control 模式,更加合理的测试框架,更好的 8bit 通讯模式, buildedin terminal.以及 rplugin 支持
    morefreeze
        19
    morefreeze  
       2016-05-05 13:52:38 +08:00
    装了一晚上,也是删了。因为懒。一本正经的理由是:
    一是不想再折腾一遍了,因为有些插件放 neovim 不兼容,要改
    二是 shell 那功能然后用 ctrl-z 也能解决
    Testalias
        20
    Testalias  
       2016-05-05 14:02:59 +08:00
    歪个楼,你们有谁认真读过 Vim 的代码没?我觉得很难读懂。
    timothyye
        21
    timothyye  
       2016-05-05 14:03:09 +08:00
    用了一下 neovim ,发现有些插件不兼容,于是又换回 vim 了……
    Havee
        22
    Havee  
       2016-05-05 14:24:45 +08:00
    什么时候 centos/debian 等发行版内置 neovim 的时候,再来讨论吧
    这货也就运维用的溜
    theJian
        23
    theJian  
       2016-05-05 16:01:22 +08:00
    一直在关注, 从未打算用
    BigPa
        24
    BigPa  
       2016-05-05 16:11:25 +08:00
    @chy373180 不是不能用,是会严重拖慢启动速度(启动要 3 秒)
    yuuko
        25
    yuuko  
       2016-05-05 17:39:35 +08:00
    @chemzqm 同样的配置,你用 vim 打开不卡么?以前我 vim 打开一个压缩成一句的 js 文件的时候,直接卡得动一下,等几秒
    yuuko
        26
    yuuko  
       2016-05-05 17:41:12 +08:00
    换到 neovim 日常开发使用几个月了
    fy
        27
    fy  
       2016-05-05 18:05:17 +08:00
    @chy373180 - - 说起来 ycm 卡的要死……我用来写 python ,在自己辣鸡 vps 上试了一下 报警了
    thinker3
        28
    thinker3  
       2016-05-05 18:09:50 +08:00
    @chemzqm 不能复制路径,命令模式自动完成区分大小写
    htfy96
        29
    htfy96  
       2016-05-05 18:17:20 +08:00 via Android
    用 nvim 半年了,捐了 5 刀。插件不兼容多半是用的插件太老了已经失去维护了,或者已经有 nvim 版替代了,还有 neovim 有一项专门的任务就是确保和 ycm 的兼容
    Reficul
        30
    Reficul  
       2016-05-05 20:20:17 +08:00   1
    @Testalias
    据说是这样的,所以主要维护者就是作者本人。

    内核恐慌里有一期这么说的,要是作者出现意外, VIM 项目就很难维护了。
    ensonmj
        31
    ensonmj  
       2016-05-05 21:00:59 +08:00
    @chemzqm tmux 最主要的作用不是分屏,是 ssh 断线恢复,这点上来说 nvim 取代不了
    7jmS8834H50s975y
        32
    7jmS8834H50s975y  
       2016-05-05 21:12:33 +08:00
    @ensonmj Cross session cache 应该不是很难.
    tracyone
        33
    tracyone  
       2016-05-05 21:15:14 +08:00 via iPhone
    并没有放弃,但也偶尔用 neovim .YCM 在 neovim 可以用啊
    chemzqm
        34
    chemzqm  
       2016-05-06 10:00:25 +08:00
    @ensonmj 确实,不过我都是 key 登录的,查看 log 也是直接用脚本命令 tail ,不太需要 ssh 断线重连

    @yuuko 会,但是我配置了 vim 下禁用一些插件,所以好些。你说的这种单行 js 文件卡是因为 vim 一直以来语法高亮的正则都不是很高效,推荐打开方式是 `vim -U none 文件名`
    yuuko
        35
    yuuko  
       2016-05-06 12:01:14 +08:00
    @chemzqm mac 下的终端还是没有 Ubuntu 下的 gnome 终端给力啊,同样的配置, mac 的 neovim 明显没有 Ubuntu 下的效率高,对比就是同样一个文件打开, mac 下面上下移动明显感觉比 Ubuntu 慢很多,这是这一个月 mac 下用 neovim 的感受,如果没在 Ubuntu 下用过可能不会有这种感觉
    chemzqm
        36
    chemzqm  
       2016-05-06 18:53:13 +08:00
    @yuuko neovim 打开大一点的 ruby 文件光标移动会很慢,但是 js 的不会慢,用 macvim 打开也不会慢,不过我很少用方向键,所以还好。
    7jmS8834H50s975y
        37
    7jmS8834H50s975y  
       2016-05-07 10:53:12 +08:00 via Android
    wsdjeg: I see this patch two years ago.but why vim do not merge this feature?I do not see any disadvantages

    Shougo: It has been on the todo list in 3 years ago. It is the Vim disadvantage...

    that is why I use neovim instead of vim
    7jmS8834H50s975y
        38
    7jmS8834H50s975y  
       2016-05-08 00:16:24 +08:00
    我已经默认开始使用 neomake 了,虽然我的 syntastic fork 版本 也支持 gradle maven, 但是 明显的 neomake 要快很多哦.
    KentY
        39
    KentY  
       2016-05-13 21:40:34 +08:00
    如果我 10+年用下来的 vim 配置, 自己写的脚本插件, 别人的插件 换到 neovim 都可以立马用, 那我就换...

    neovim 有很多特性还是很吸引人的. 上面都说了, 就不赘述了.
    timothyye
        40
    timothyye  
       2016-05-23 12:17:14 +08:00
    @chy373180 我最近刚切换到 neovim , YCM 是没问题的
    hbliu
        41
    hbliu  
       2018-03-06 23:50:21 +08:00
    1. VIM 的配置 Neovim 基本是完全兼容的;
    2. 可以用 `Alt` 做快捷键映射;
    3. Neovim 内置 terminal 的支持, 可以借此实现很多高级的功能, 如直接在 vim 窗口中实现类似 IDE 中的调试功能: http://hiberabyss.github.io/2018/02/28/neovim-gdb-integration/
    gowk
        42
    gowk  
       2023-01-18 11:05:54 +08:00 via iPhone
    @congeec 牛逼啊老哥,预言帝
    关于     帮助文档     自助推广系统     博客     API   FAQ     Solana     5411 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 37ms UTC 08:29 PVG 16:29 LAX 01:29 JFK 04:29
    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