
三个月前,我们发布了 v0.6.0 这个版本,随着 v0.7.0 的发布,让我们看看到底发生了哪些变化?
兼容性改变:
加入 clever-f 这个插件,并且默认启用,恢复了 f、F 等按键功能。原先的 unite 和 denite 的前缀键已删除。 #1460
默认禁用所有语言模块,开发者可根据自己实际开发的语言开启相应模块,甚至可以设定项目专属配置,即在编辑 java 项目时自动载入 java 模块,在编辑 python 项目时自动载入 python 模块,我相信每个程序员会用到的应该不止一种编程语言。
大幅度降低默认插件数量,原先版本200+插件,目前版本默认只有51,后续可能还会减少。
引入以下五种模块,用户可以根据自己喜好以及环境选择其中一个,这五个模块我做个适当的优化,在快捷键上基本达到了一致,详细可以阅读下这个 issue
默认禁用git,VersionControl模块,如果需要的话,自行在用户配置中载入。
移除大部分以 Leader 为前缀的快捷键,个人认为 Leader 这个按键应该是给用户自己去定义的,不建议占用太多,SpaceVim 中自定义了一个前缀键 SPC(空格键),实现方式可以阅读我在 reddit 发的一个教程:How to define custom leader in vim?
改进 tools 这个模块,并且默认禁用,该模块主要是提供了一些 vim 命令 #1507。
新特性
Iedit 模式 #1258
SpaceVim 内置了一种特殊的模式,Iedit 模式,这种模式提供了多光标支持,不同于已有插件的实现,该模式支持两种状态 :iedit-Normal 和 iedit-Insert。默认情况下 多光标输入时,iedit-normal 模式状态栏时是红色,而 iedit-insert 模式时是绿色。

高亮光标函数 #1394
SpaceVim 支持高亮当前光标函数,并且启动一个特殊模式,在该模式下可以快捷地切换高亮区域(方法内、屏幕内、整个文件内),并且可以快速在高亮函数间跳转、切换高亮状态(高亮、取消高亮),并且可以根据已选择的位置计入 iedit 模式。

实现内置工程管理,自动改变工程目录,并可以快速在多个工程之间切换,快速关闭整个工程。 #1245
自动根据 package.json 文件判定 javascript 项目工程目录 #1437
实现了窗口管理快捷键导航,默认是 normal 模式下的 s 按键,visual 模式的 s 键没有修改,可以正常使用 #1214
新的模块:
除了前面提到的五个模糊查找的模块,最新版中还加入了以下模块:
lang#csharp 模块 #1433
cscope 模块 #1220
dart 模块 #1207
重写了内置插件管理器 #1446
关于版本控制单独做了两个模块,git 模块针对一些 git 专有功能,VersionControl 模块主要实现了一些版本控制软件兼容的功能,此外还有状态栏拓展 #1470
功能改进:
Add icon to welcome page(startify) #1389
Add help description for windows key bindings. #1244
Add help description for unite key bindings #1248
Add help description for other key bindings #1241
Add prompt for quit buffer. #1359
Add visual selection support #1291
Add lsp support for dart #1222
Add a new plugin into javascript layer #1270
Add preview func #1425
Add vim-pydocstring #1299
Add option for config filetype icon #1289
Add SpaceVim theme #1255
Add version api #1215
Add new interesting banners #1208
Change into more frequented used shortcuts #1230
Update icons #1240
Improve if_python check in SpaceVim #1236
HOTFIX: Fix ambiguous description in killing buffer #1226
Improve checker layer #1223
Update version api #1219
Improve flygrep #1426
Disable cursor error info #1424
Improve Ocaml layer #1387
Improve github layer #1377
Improve ocmal/c/unite/denite/ctrlp layer #1369
Revert "Fix language client config" #1282
Option to use local eslint #1257
Use compatible api for execute() #1353
Update Core #1457
Improve core config #1455
Remove default layer #1454
Default layers #1452
Better default #1438
Improve lint status in statusline #1416
Improve javascript layer #1415
update file head #1407
Supporting eex in the elixir layer #1404
Map [SPC]is to Unite ultisnips while using Ultisnips engine #1399
doc fix #1356
Use nested autocmd for quite vimfiler #1342
Replace mode for flygrep #1340
Improve cmd #1339
Update install script for chinese users #1338
wget isn't installed on all systems by default (like mine). Use curl … #1335
Filter #1325
tools:add VimCalc plugin #1316
Hotfix in windows 7 #1315
Improve searching tools #1314
Reformart as in install.cmd #1310
Colors #1308
Plugin manager #1307
Improve install.cmd #1297
New Plugin UI #1294
close terminal buffer just like a regular buffer #1429
Bug 修复:
Fix #1505 #1509
Fix 1485 #1508
Fix #1489 #1506
Fix typo in install script #1497
Fix Gabirel/Hack-SpaceVim#36 #1485
Fix statusline issue #1466
Fix buffer API #1451
Fix indentline #1447
fix layers html table #1443
fix several spelling errors #1442
Fix github layer #1420
Fix c layer #1413
fix close current buffer prompt #1401
Fix runner for python #1396
fix zz mapping does not respect scrolloff value. #1391
fix deoplete python complete #1388
Fix typos in lang#c layer #1375
Fix fly grep #1373
Fix deoplete support #1371
Fix ruby format #1368
Fix checkers layer #1364
Fix a Neomake issue #1352
Fix windows id #1347
Fix statusline for vimcalc #1324
Fix warning message #1321
Fix a typo #1318
Fix main.css #1313
Fix an issue of Vimfiler #1303
Fix edit url in website #1300
Fix website 404 #1293
Fix #1266 #1292
Fix project manager #1288
Fix Iedit mode cursor #1284
Fix #1277 #1279
Fix language client config #1265
Fix neovim crashs #1264
Fix info icon #1253
Fix libclang path #1246
Fix markdown layer #1235
Fix #1143 #1224
Fix 'defined' typos in plugin help #1217
文档及 wiki 更新:
Relicense #1406
Add cn wiki for gitee #1343
Update chinese quick guide #1337
Add key bindings development doc #1221
Add CODEOWNERS #1302
Add html layer doc #1295
Add faq for update plugins #1428
Add OCaml layer documentation #1386
Add job api document #1344
Add disqus #1329
Add github/page check #1304
Add reddit Sidebar #1273
Edit because jshell was introduced with java9. #1481
Website improvement #1312
Update development workflow #1311
Update translator #1351
Update readme #1350
Update cn/development.md #1349
Update Chinese doc #1348
Update READMEzhcn.md #1262
Update doc #1256
Update doc for vim-diff #1254
Update doc for vim_diff #1274
Update website (2) #1272
Update website #1271
Update website #1305
Update chinese document #1331
Improve javascript #1421
Improve json layer #1419
Update achievements #1323
Update development rules #1298
Update features #1363
translate documentation.md #1361
Update quick start guide #1417
Activating Open Collective #1474
Banner #1440
Update sponsors #1432
Use Multiple issue and pull request templates #1431
Update readme #1423
Automatically generate Wiki from ci #1309
Improve readme #1463
Update Readme #1459
引用来自“gzwxn”的评论
不错不错。然而 vim 还是自己明白每一个配置项都做了什么比较好,不然万一出了啥问题,那就捉瞎了。
引用来自“YanbinQ”的评论
每个人需要的插件不尽相同,所以必须清楚自己的每一个插件是干什么用的,以及是否真正需要它,所以我都是从空 Vim 开始配置,把 .vimrc 文件备份好就行。引用来自“GunsNRose”的评论
一直在用,很棒引用来自“zodiacg”的评论
链接全是知乎的跳转链接……不改改吗引用来自“zodiacg”的评论
链接全是知乎的跳转链接……不改改吗引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“开源中国首席技术官”的评论
因为使用IDE不能更好的装逼引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“gzwxn”的评论
不错不错。然而 vim 还是自己明白每一个配置项都做了什么比较好,不然万一出了啥问题,那就捉瞎了。
然而 vim 还是自己明白每一个配置项都做了什么比较好,不然万一出了啥问题,那就捉瞎了。
引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“xw_y_am”的评论
比如说:嵌入式环境?远程登录无X服务器?网络性能不足以支持远程桌面?因特殊原因不能进行硬件升级的开发设备?引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“晒太阳的小猪”的评论
GPLV3的项目都是了不起的项目。引用来自“SpaceVim”的评论
为什么这么说呢?引用来自“晒太阳的小猪”的评论
任何人都可以拥有,但没有人可以据为己有。软件本身就有了进化的生命力和魔力引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“SpaceVim”的评论
很多情况下没办法直接使用 IDE,而且不太想被 IDE 的功能束缚住,在用 vim 时,我想怎么用就可以怎么用,需要什么功能只要不是太离谱的都可以自己实现,这样多舒服。引用来自“hentai”的评论
说说有什么情况引用来自“SpaceVim”的评论
这个在知乎上搜一大堆吧,你搜为什么不用 IDE,原因很多。对我个人而言,IDE 并没有太吸引我的地方。引用来自“hentai”的评论
你的回答看起来是你主观不愿意用,而不是很多情况下没办法直接使用引用来自“SpaceVim”的评论
是的,用什么工具还是看自己喜好比较好,没必要勉强。其实也有很多人喜欢 IDE 的,也有不少人喜欢像 vim 这样的简单编辑器,这也是为什么这么多年 vim 一直存在的原因,他的模式编辑大大提升了键盘中间区域按键的功能。这种模式会让编辑快捷很多,其实你也看见了,很多 IDE 实现了 vim 模式,这正说明了这种模式的优势,以及被认可的程度。引用来自“hentai”的评论
恩引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“SpaceVim”的评论
很多情况下没办法直接使用 IDE,而且不太想被 IDE 的功能束缚住,在用 vim 时,我想怎么用就可以怎么用,需要什么功能只要不是太离谱的都可以自己实现,这样多舒服。引用来自“hentai”的评论
说说有什么情况引用来自“SpaceVim”的评论
这个在知乎上搜一大堆吧,你搜为什么不用 IDE,原因很多。对我个人而言,IDE 并没有太吸引我的地方。引用来自“hentai”的评论
你的回答看起来是你主观不愿意用,而不是很多情况下没办法直接使用引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“SpaceVim”的评论
很多情况下没办法直接使用 IDE,而且不太想被 IDE 的功能束缚住,在用 vim 时,我想怎么用就可以怎么用,需要什么功能只要不是太离谱的都可以自己实现,这样多舒服。引用来自“hentai”的评论
说说有什么情况引用来自“SpaceVim”的评论
这个在知乎上搜一大堆吧,你搜为什么不用 IDE,原因很多。对我个人而言,IDE 并没有太吸引我的地方。引用来自“晒太阳的小猪”的评论
GPLV3的项目都是了不起的项目。引用来自“SpaceVim”的评论
为什么这么说呢?引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“SpaceVim”的评论
很多情况下没办法直接使用 IDE,而且不太想被 IDE 的功能束缚住,在用 vim 时,我想怎么用就可以怎么用,需要什么功能只要不是太离谱的都可以自己实现,这样多舒服。引用来自“hentai”的评论
说说有什么情况引用来自“mahengyang”的评论
少折腾旁门左道,多码需求才是正道引用来自“netjune”的评论
选择了emacs就要从一而终,不换了引用来自“晒太阳的小猪”的评论
GPLV3的项目都是了不起的项目。引用来自“xshrim”的评论
我觉得自从有了vs code之后,已经没必要过多折腾vim了,弄好看点就行了.折腾一年也没有vs code三两下来得方便.引用来自“全国司机总代表”的评论
那为什么不直接用IDE引用来自“二的基本算合格”的评论
spacemacs 表示不服啊引用来自“OSC官方红薯”的评论
搞得挺热火 不知道windows版本打开是不是还是屎一样、。。。引用来自“SpaceVim”的评论
红薯大哥? windows 版本下 字体装好了也非常漂亮,前段时间有一个windows用户 show 了下 他安装在 gvim 下的 spacevim,比我自己配置都漂亮,我也是服了。引用来自“OSC官方红薯”的评论
搞得挺热火 不知道windows版本打开是不是还是屎一样、。。。