引:玩过vim的同学都应该知道vim配置文件是很蛋疼,深入点玩过vim的同学大概知道vim的配置文件其实建立在vim自己的脚本语言vimscript(viml)上面的。但是vimscript这个语言真心蛋疼啊,没有emacs大法的lisp好用啊艹。所以没办法,那就自己造造轮子,让vimscript好用写咯。
因为用着实在蛋疼,然后自己默默地写了一套类似nodejs里面require()的模块机制出来……对,就是用着蛋疼的vimscript,然后为vimscript写的。
Github: 代码戳这里,求星星
好了,废话不多说,直接先上效果来看看我的vimrc长啥样。
”vimrc
let base_path = fnamemodify(resolve(expand('<sfile>:p')), ':h')
exec 'source ' . resolve(base_path . '/require.vimrc')
let config = Require('config')
let utils = Require('utils')
Require modules
没错我的vimrc就长这样,聪明的你一定看出来了。关键在哪里?Require!然后再看看被Require的 utils 和 moduels 都是啥。
”utils/base.vimrc
call Exports('utils', Require('utils'))
\('file', Require('file'))
\('dict', Require('dict'))
\('man', Require('man'))
”moduels/base.vimrc
Require head
Require bundle
Require hotkeys/base
Require themes
Require type
Require tail
如果你没折腾过Vimscript,你看到这东西一定一点都不激动。因为别的语言中都特么是标配的东西,我这里还需要自己实现。真心泪流满面啊TwT。
Github: 代码戳这里,求星星
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.