SpaceVim 發布 v0.7.0

三個月前,我們發布了 v0.6.0 這個版本,隨著 v0.7.0 的發布,讓我們看看到底發生了哪些變化?

兼容性改變:

  • 加入 clever-f 這個插件,並且默認啟用,恢復了 f、F 等按鍵功能。原先的 unite 和 denite 的前綴鍵已刪除。 #1460
  • 默認禁用所有語言模塊,開發者可根據自己實際開發的語言開啟相應模塊,甚至可以設定項目專屬配置,即在編輯 java 項目時自動載入 java 模塊,在編輯 python 項目時自動載入 python 模塊,我相信每個程序員會用到的應該不止一種編程語言。
  • 大幅度降低默認插件數量,原先版本200+插件,目前版本默認只有51,後續可能還會減少。
  • 引入以下五種模塊,用戶可以根據自己喜好以及環境選擇其中一個,這五個模塊我做個適當的優化,在快捷鍵上基本達到了一致,詳細可以閱讀下這個 issue
    • fzf 模塊 #1504
    • ctrlp 模塊 #1503
    • leaderf 模塊 #1498, #1476
    • denite 模塊 #1491
    • unite 模塊 #1487
  • 默認禁用 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
  • 使用 ci 自動分離部分內置插件,如 flygrep,方便非 SpaceVim 用戶使用 #1358

新的模塊:

除了前面提到的五個模糊查找的模塊,最新版中還加入了以下模塊:

  • tools#dash 模塊 #1366, #1365
  • 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 isnt 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

博客更新:

  • Add cn blog: grep on the fly #1355
  • Add newsletter #1228
  • Add newsletter #2 #1216

推薦閱讀:

零基礎如何學習spacemacs的使用?

TAG:Vim | SpaceVim | Spacemacs |