| 导读 | SpaceVim是一个社区驱动的模块化 vim/neovim 配置集合,其中包含了多种功能模块,并且针对 neovim 做了功能优化。SpaceVim有多种功能模块可供选择,用户只需要选择所需的模块,就可以配置出一个适合自己的开发环境。 |
SpaceVim是一个社区驱动的模块化 vim/neovim 配置集合,其中包含了多种功能模块,并且针对 neovim 做了功能优化。SpaceVim有多种功能模块可供选择,用户只需要选择所需的模块,就可以配置出一个适合自己的开发环境。
- 项 目 主 页:?spacevim.org
- Github 地址 :?SpaceVim GitHub,欢迎 Star 或 fork。
使用过程中遇到问题或者有什么功能需求可以在 github 提交 issue,这将更容易被关注和修复。我们也欢迎喜欢 vim/neovim 的用户加入我们的 QQ 群,一起讨论 vim 相关的技巧,点击加入Vim/SpaceVim用户群。
SpaceVim?的开发很活跃,以下是近几周的开发汇总:

Linux 或 Mac 下 SpaceVim 的安装非常简单,只需要执行以下命令即可:
curl -sLf http://www.51sjk.com/Upload/Articles/1/0/329/329437_20220921145426621.sh | bash
想要获取更多的自定义的安装方式,请参考:
curl -sLf http://www.51sjk.com/Upload/Articles/1/0/329/329437_20220921145426621.sh | bash -s -- -h
SpaceVim是一种模块化配置,可以运行在vim或者neovim上,关于vim以及neovim的安装,请参考以下链接:
- 安装neovim
- 从源码编译vim
Windows 下 vim 用户只需要将本仓库克隆成用户 HOME 目录下的 vimfiles 即可,打开 CMD 默认的目录默认即为 HOME 目录,只需要执行如下命令即可:
git clone http://www.51sjk.com/Upload/Articles/1/0/329/329437_20220921145427791.git vimfiles
Windows 下 neovim 用户需要将本仓库克隆成用户 HOME 目录下的 AppData\Local\nvim,想要获取跟多关于 neovim 安装相关的知识,可以访问 neovim 的 wiki, wiki 写的非常详细。打开 CMD 初始目录默认一般即为 HOME 目录,只需要执行如下命令即可:
git clone http://www.51sjk.com/Upload/Articles/1/0/329/329437_20220921145427791.git AppData\Local\nvim
字体
SpaceVim 默认启用了 Powerline 字体,默认的字体文件是:DejaVu Sans Mono, Windows 用户直接下载下来右键安装即可。
vimproc.dll
Windows 下用户如果不方便编译,可以在 qq 群文件里面下载相应的 dll 文件放到 vimproc 的 lib 目录,默认是~/.cache/vimfiles/repos/github.com/Shougo/vimproc.vim/lib/
SpaceVim 的默认界包括 tagbar 、vimfiler 、以及 airline 界面,配色主题采用的 gruvbox。

Unite 的快捷键前缀是f,可以通过?g:spacevim_unite_leader来设定,快捷键无需记忆,SpaceVim 有很好的快捷键辅助机制,如下是 Unite 的快捷键键图:

SpaceVim 采用最快补全引擎 deoplete, 该引擎不同与 YouCompleteMe 的主要一点是支持多源补全,而不单单是语义补全。 而且补全来源拓展非常方便。
SpaceVim 将从~/.SpaceVim.d/init.vim和当前目录的./SpaceVim.d/init.vim 载入配置,并且更新 rtp,用户可以在 ~/.SpaceVim.d/和.SpaceVim.d/这两个文件夹下编辑自己的脚本,和 SpaceVim 的配置文件。
示例:
" Here are some basic customizations,
" please refer to the ~/.SpaceVim.d/init.vim
" file for all possible options:
let g:spacevim_default_indent = 3
let g:spacevim_max_column = 80
" Change the default directory where all miscellaneous persistent files go.
" By default it is ~/.cache/vimfiles.
let g:spacevim_plugin_bundle_dir = '~/.cache/vimfiles'
" set SpaceVim colorscheme
let g:spacevim_colorscheme = 'jellybeans'
" Set plugin manager, you want to use, default is dein.vim
let g:spacevim_plugin_manager = 'dein' " neobundle or dein or vim-plug
" use space as ``
let mapleader = ""
" Set windows shortcut leader [Window], default is `s`
let g:spacevim_windows_leader = 's'
" Set unite work flow shortcut leader [Unite], default is `f`
let g:spacevim_unite_leader = 'f'
" By default, language specific plugins are not loaded. This can be changed
" with the following, then the plugins for go development will be loaded.
call SpaceVim#layers#load('lang#go')
" loaded ui layer
call SpaceVim#layers#load('ui')
" If there is a particular plugin you don't like, you can define this
" variable to disable them entirely:
let g:spacevim_disabled_plugins=[
\ ['junegunn/fzf.vim'],
\ ]
" If you want to add some custom plugins, use these options:
let g:spacevim_custom_plugins = [
\ ['plasticboy/vim-markdown', {'on_ft' : 'markdown'}],
\ ['wsdjeg/GitHub.vim'],
\ ]
" set the guifont
let g:spacevim_guifont = 'DejaVu\ Sans\ Mono\ for\ Powerline\ 11'

听说好名字都起不了了