vim 有望实现基于 socket 的 channel 机制实现异步通信

2016-02-14 14:49:13 +08:00
 chemzqm

文档: https://github.com/vim/vim/blob/cbebd4879cc78e670d79b2c57dc33d7b911c962a/runtime/doc/channel.txt
目前还是草案阶段
vim-dev 讨论主题: https://groups.google.com/forum/#!topic/vim_dev/qtw5LdCrHJQ

几年前 vim 收到过 1 个补丁, 实现类似 js 的 setTimeout/setInterval 机制支持异步,但是大概考虑到性能以及代码复杂度的影响,那个补丁最后也没被接受,希望这次的不会黄掉🙂

大致谈谈这个机制会对我们有什么影响:

5335 次点击
所在节点    Vim
16 条回复
wizardoz
2016-02-14 15:07:18 +08:00
有什么用?
chemzqm
2016-02-14 15:17:22 +08:00
@wizardoz 更简单的代码,更好的用户体验
binarylu
2016-02-14 15:20:07 +08:00
期待
taobeier
2016-02-14 15:28:33 +08:00
期待.
wh0ami
2016-02-14 16:10:16 +08:00
neovim 做的怎么样了?
yuuko
2016-02-14 16:30:43 +08:00
期待(๑˙ー˙๑)
chenggiant
2016-02-14 16:45:24 +08:00
期待!
jdlau
2016-02-14 17:05:02 +08:00
期待
htfy96
2016-02-14 17:35:10 +08:00
neovim 和 vim 的分裂从此开始?
chemzqm
2016-02-14 17:42:01 +08:00
@wh0ami 一直在做吧,之前在 reddit 有人说越来越多开发者切换到 neovim 了,主要大概是得益于它的 job-control 能让更强大的插件表现更好。如果你用命令行 vim 可以很容易切过去,我是因为习惯 macvim ,而 neovim 的 mac 版差太多所以没换。
chemzqm
2016-02-14 17:54:20 +08:00
@htfy96 不一定吧,只要 api 没冲突, neovim 可以继续使用 vim 做为内核。
不过有一点, neovim 的 job-control 实现经常被人诟病,也有人说它那种实现是伪异步(纯属道听途说),但是 vim 原生支持的 job-control 表现上应该会好写,所以可以预见将来会有更多、功能更强的插件使用原生的 job-control 实现。
xuboying
2016-02-14 23:43:18 +08:00
emacs 是个操作系统了, vim 有往这个方向的趋势么?
techmoe
2016-02-15 08:02:31 +08:00
越来越神了。。
haoc
2016-02-18 09:09:31 +08:00
vim 还是保守一些。新功能都有 neovim 来是实现吧!
wsdjeg01
2016-05-05 13:46:56 +08:00
@chemzqm 也就是说目前 vim 的 job 特性要更加好?但是我看 shougo 等都觉得 neovim 的更加合理,我自己也是这么觉得的,我写过一个 job 测试,感觉还是 neovim 的更加简洁
skywind3000
2016-10-26 04:13:53 +08:00
如果你们使用 Vim8.0 或者 NeoVim ,你们可以试试: http://github.com/skywind3000/asyncrun.vim 更好的代替 dispatch ,异步 git push, 异步编译,异步调试,比 dispatch 好很多的用户体验,如果这些还不足以打动你,可以看这个视频: https://raw.githubusercontent.com/skywind3000/asyncrun.vim/master/doc/screenshot.gif

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/256429

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX