2017-03-11 10:12:27 +08:00
---
2017-08-27 21:34:48 +00:00
title: "SpaceVim 中文手册"
2017-03-11 10:12:27 +08:00
---
# SpaceVim 中文手册
2017-01-21 12:14:49 +08:00
2017-01-21 12:16:42 +08:00
[](https://travis-ci.org/SpaceVim/SpaceVim)
2017-08-27 21:34:48 +00:00

[](LICENSE)
2017-03-11 10:12:27 +08:00
[](https://github.com/SpaceVim/SpaceVim/blob/dev/doc/SpaceVim.txt)
2017-01-21 12:16:42 +08:00
[](https://jq.qq.com/?_wv=1027& k=43DB6SG)
[](https://gitter.im/SpaceVim/SpaceVim?utm_source=badge& utm_medium=badge& utm_campaign=pr-badge)
[](https://www.facebook.com/SpaceVim)
[](https://github.com/SpaceVim/SpaceVim)
[](https://github.com/SpaceVim/SpaceVim)
[](https://github.com/SpaceVim/SpaceVim)
[](https://twitter.com/SpaceVim)
2017-08-27 21:34:48 +00:00

2017-01-22 12:24:42 +08:00
2017-08-27 21:34:48 +00:00
项 目 主 页: < https: / / spacevim . org >
2017-01-22 12:24:42 +08:00
2017-08-27 21:34:48 +00:00
Github 地址 : < https: / / github . com / SpaceVim / SpaceVim >
2017-03-16 13:16:36 +08:00
2017-08-27 21:34:48 +00:00
SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,其中包含了多种功能模块,并且针对 neovim 做了功能优化。spacevim 有多种功能模块可供用户选择,针对不同语言选择特定的模块,就可以配置出一个适合特定语言开发的环境。
2017-03-16 13:16:36 +08:00
使用过程中遇到问题或者有什么功能需求可以在 github 提交 issue, 这将更容易被关注和修复。我们也欢迎喜欢 vim/neovim 的用户加入我们的 QQ 群,一起讨论 vim 相关的技巧,[点击加入Vim/SpaceVim用户群 ](https://jq.qq.com/?_wv=1027&k=43zWPlT )。
2017-03-11 10:12:27 +08:00
以下是近几周的开发汇总:
[](https://github.com/SpaceVim/SpaceVim/pulse)
2017-08-27 21:34:48 +00:00
<!-- vim - markdown - toc GFM -->
* [安装 ](#安装 )
* [更新 ](#更新 )
2017-08-28 20:55:25 +00:00
* [文档 ](#文档 )
2017-08-27 21:34:48 +00:00
* [优雅的界面 ](#优雅的界面 )
2017-08-28 20:55:25 +00:00
* [主题 ](#主题 )
2017-08-28 21:23:16 +00:00
* [字体 ](#字体 )
2017-08-27 21:34:48 +00:00
* [快捷键导航 ](#快捷键导航 )
2017-08-28 20:55:25 +00:00
* [模块化配置 ](#模块化配置 )
* [Denite/Unite为主的工作平台 ](#deniteunite为主的工作平台 )
2017-08-27 21:34:48 +00:00
* [自动补全 ](#自动补全 )
* [细致的tags管理 ](#细致的tags管理 )
* [快速 ](#快速 )
* [SpaceVim选项 ](#spacevim选项 )
* [延伸阅读 ](#延伸阅读 )
* [Vim 8 新特新之旅 ](#vim-8-新特新之旅 )
<!-- vim - markdown - toc -->
2017-03-17 20:50:19 +08:00
2017-03-16 13:16:36 +08:00
## 安装
2017-01-22 12:24:42 +08:00
2017-03-16 13:16:36 +08:00
**Linux 或 Mac 下 SpaceVim的安装非常简单, 只需要执行以下命令即可: **
2017-03-12 18:30:47 +08:00
2017-01-22 12:24:42 +08:00
```sh
curl -sLf https://spacevim.org/install.sh | bash
```
2017-03-12 18:30:47 +08:00
2017-01-22 12:24:42 +08:00
想要获取更多的自定义的安装方式,请参考:
2017-03-12 18:30:47 +08:00
2017-01-22 12:24:42 +08:00
```sh
curl -sLf https://spacevim.org/install.sh | bash -s -- -h
```
2017-03-12 18:30:47 +08:00
2017-01-22 12:24:42 +08:00
SpaceVim是一种模块化配置, 可以运行在vim或者neovim上, 关于vim以及neovim的安装, 请参考以下链接:
[安装neovim ](https://github.com/neovim/neovim/wiki/Installing-Neovim )
[从源码编译vim ](https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source )
2017-03-16 13:16:36 +08:00
**windows系统下的安装步骤: **
2017-01-22 12:24:42 +08:00
2017-03-16 13:16:36 +08:00
Windows 下 vim 用户只需要将本仓库克隆成用户 HOME 目录下的 vimfiles 即可,打开 CMD 默认的目录默认即为 HOME 目录,只需要执行如下命令即可:
2017-03-12 18:30:47 +08:00
2017-08-27 21:34:48 +00:00
git clone https://github.com/SpaceVim/SpaceVim.git vimfiles
2017-03-12 18:30:47 +08:00
2017-08-27 21:34:48 +00:00
Windows 下 neovim 用户 需要将本仓库克隆成用户 HOME 目录下的 AppData\\Local\\nvim, 想要获取跟多关于 neovim 安装相关的知识,可以访问 neovim 的 wiki, wiki 写的非常详细。打开 CMD 初始目录默认一般即为 HOME 目录,只需要执行如下命令即可:
2017-03-12 18:30:47 +08:00
2017-08-27 21:34:48 +00:00
git clone https://github.com/SpaceVim/SpaceVim.git AppData\Local\nvim
2017-03-12 18:30:47 +08:00
2017-03-17 21:21:00 +08:00
**字体**
SpaceVim 默认启用了Powerline 字体,默认的的字体文件是:[DejaVu Sans Mono ](https://github.com/wsdjeg/DotFiles/tree/master/fonts ), Windows 用户直接下载下来右键安装即可。
**vimproc.dll**
Windows 下用户如果不方便编译, 可以在qq群文件里面下载相应的dll文件放到vimproc
的lib目录, 默认是 `~/.cache/vimfiles/repos/github.com/Shougo/vimproc.vim/lib/`
2017-08-27 21:34:48 +00:00
## 更新
可以通过 `:SPUpdate` 命令来更新spacevim 以及包含的插件, 如果需要更新指定的插件, 如: startuptime.vim, 只需要执行 `:SPUpdate startuptime.vim` ,也可以通过 `:SPUpdate SpaceVim` 来更新 SpaceVim.
2017-08-28 20:55:25 +00:00
## 文档
2017-03-16 13:16:36 +08:00
### 优雅的界面
2017-08-27 21:34:48 +00:00
SpaceVim 集成了多种使用UI插件, 如常用的文件树、语法树等插件, 配色主题默认采用的是 gruvbox。
2017-03-17 20:50:19 +08:00

2017-08-28 20:55:25 +00:00
#### 主题
SpaceVim 默认的颜色主题采用的是 [gruvbox ](https://github.com/morhetz/gruvbox )。这一主题有深色和浅色两种。关于这一主题一些详细的配置可以阅读 < kbd > :h gruvbox</ kbd > .
如果需要修改 SpaceVim 的主题,可以在 `~/.SpaceVim.d/init.vim` 中修改 `g:g:spacevim_colorscheme` 。例如,使用 [vim-one with dark colorscheme ](https://github.com/rakr/vim-one )
```vim
let g:spacevim_colorscheme = 'one'
let g:spacevim_colorscheme_bg = 'dark'
```
| 快捷键 | 描述 |
| ------------------ | -------------------------------------------------------------- |
| < kbd > SPC T n< / kbd > | 切换至下一个随机主题 |
| < kbd > SPC T s< / kbd > | 通过 Unite 选择主题 |
可以在[主题模块 ](http://spacevim.org/layers/colorscheme/ )中查看 SpaceVim 支持的所有主题。
**注意**:
SpaceVim 在终端下默认使用了真色,因此使用之前需要确认下你的终端是否支持真色,可以阅读 [Colours in terminal ](https://gist.github.com/XVilka/8346728 ) 了解根多关于真色的信息。
2017-08-28 21:23:16 +00:00
#### 字体
在 SpaceVim 中默认的字体是 DejaVu Sans Mono for Powerline. 如果你也喜欢这一字体,建议将这一字体安装到系统中。如果需要修改 SpaceVim 的字体,可以在用户配置文件中修改 `g:spacevim_guifont` ,默认值为:
```vim
let g:spacevim_guifont = 'DejaVu\ Sans\ Mono\ for\ Powerline\ 11'
```
如果指定的字体不存在,将会使用系统默认的字体,此外,这一选项在终端下是无效的,终端下修改字体,需要修改终端自身配置。
2017-08-27 21:34:48 +00:00
### 快捷键导航
SpaceVim 所有的快捷键都不需要去记忆,有强大的快捷键导航系统来提示每一个按键的具体功能,比如 Normal 模式下按下空格键,将出现如下提示:

这一导航提示将所有以空格为前缀的快捷键分组展示,比如 `b` 是所以 buffer 相关的快捷键, `p` 是所有工程管理相关的快捷键。在导航模式下按下 `<C-h>` 你将在状态栏上看见相应的帮助信息,按键介绍如下:
| 按键 | 描述 |
| --- | ------- |
| `u` | 撤销前一按键 |
| `n` | 导航系统下一页 |
| `p` | 导航系统前一页 |
2017-08-28 20:55:25 +00:00
### 模块化配置
SpaceVim 是由多个独立模块组成的配置集合,针对不同的功能需求,设计了多个模块,用户在使用的时候只需要载入相应的模块即可。比如对于 Java 开发者,载入 `lang#java` 、`autocomplete` 、`checker` 、`tags` 模块即可配置出一个适合 Java 开发的 Vim 环境。
SpaceVim 支持的模:[http://spacevim.org/layers/ ](http://spacevim.org/layers/ )
### Denite/Unite为主的工作平台
2017-03-16 13:16:36 +08:00
Unite 的快捷键前缀是`f` , 可以通过 `g:spacevim_unite_leader` 来设定, 快捷键无需记忆, SpaceVim 有很好的快捷键辅助机制,如下是 Unite 的快捷键键图:

2017-01-22 12:24:42 +08:00
2017-08-28 20:55:25 +00:00
Denite 是新一代的插件,相比 Unite 速度更加快,安装也更加方便。 的快捷键前缀是`F` , 可以通过 `g:spacevim_denite_leader` 来设定。
2017-03-17 20:50:19 +08:00
### 自动补全
SpaceVim 采用最快补全引擎 deoplete, 该引擎不同与YouCompleteMe的主要一点是支持多源补全, 而不单单是语义补全。 而且补全来源拓展非常方便。
2017-01-22 12:24:42 +08:00
2017-03-17 20:50:19 +08:00
### 细致的tags管理
2017-01-22 12:24:42 +08:00
2017-08-28 20:55:25 +00:00
2017-08-27 21:34:48 +00:00
## 快速
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
SpaceVim 将从 ~/.SpaceVim.d/init.vim 和当前目录的 ./SpaceVim.d/init.vim 载入配置,并且更新 rtp, 用户可以在 ~/.SpaceVim.d/ 和 .SpaceVim.d/ 这两个文件夹下编辑自己的脚本,和 SpaceVim 的配置文件。
2017-01-22 12:24:42 +08:00
示例:
2017-03-12 18:30:47 +08:00
```vim
2017-03-17 21:33:32 +08:00
" Here are some basic customizations,
" please refer to the ~/.SpaceVim.d/init.vim
2017-03-12 18:30:47 +08:00
" file for all possible options:
2017-01-22 12:24:42 +08:00
let g:spacevim_default_indent = 3
let g:spacevim_max_column = 80
2017-03-12 18:30:47 +08:00
" Change the default directory where all miscellaneous persistent files go.
2017-04-07 19:49:24 +08:00
" By default it is ~/.cache/vimfiles/.
let g:spacevim_plugin_bundle_dir = '~/.cache/vimfiles/'
2017-03-12 18:30:47 +08:00
" set SpaceVim colorscheme
let g:spacevim_colorscheme = 'jellybeans'
" Set plugin manager, you want to use, default is dein.vim
2017-01-22 12:24:42 +08:00
let g:spacevim_plugin_manager = 'dein' " neobundle or dein or vim-plug
2017-03-12 18:30:47 +08:00
" use space as `<Leader>`
let mapleader = "\<space>"
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" Set windows shortcut leader [Window], default is `s`
let g:spacevim_windows_leader = 's'
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" Set unite work flow shortcut leader [Unite], default is `f`
let g:spacevim_unite_leader = 'f'
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" 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 ')
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" loaded ui layer
call SpaceVim#layers#load ('ui')
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" 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'],
\ ]
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" If you want to add some custom plugins, use these options:
2017-01-22 12:24:42 +08:00
let g:spacevim_custom_plugins = [
2017-03-12 18:30:47 +08:00
\ ['plasticboy/vim-markdown', {'on_ft' : 'markdown'}],
\ ['wsdjeg/GitHub.vim'],
\ ]
2017-01-22 12:24:42 +08:00
2017-03-12 18:30:47 +08:00
" set the guifont
2017-01-22 12:24:42 +08:00
let g:spacevim_guifont = 'DejaVu\ Sans\ Mono\ for\ Powerline\ 11'
```
2017-03-12 18:30:47 +08:00
### SpaceVim选项
2017-01-22 12:24:42 +08:00
2017-08-27 21:34:48 +00:00
| 选项名称 | 默认值 | 描述 |
| ---------------------------------- | :-----------------: | --------------- |
| `g:spacevim_default_indent` | 2 | 对齐空格 |
| `g:spacevim_enable_guicolors` | 1 | 启用/禁用终端使用真色彩 |
| `g:spacevim_windows_leader` | `s` | 窗口管理快捷键前缀 |
| `g:spacevim_unite_leader` | `f` | Unite快捷键前缀 |
| `g:spacevim_plugin_bundle_dir` | `~/.cache/vimfiles` | 默认插件缓存位置 |
| `g:spacevim_realtime_leader_guide` | 0 | 启用/禁用实时快捷键提示 |
| `g:spacevim_guifont` | '' | 设置SpaceVim字体 |
| `g:spacevim_sidebar_width` | 30 | 设置边栏宽度,文件树以及语法树 |
| `g:spacevim_custom_plugins` | `[]` | 设置自定义插件 |
2017-06-17 10:37:07 +08:00
2017-08-28 20:55:25 +00:00
2017-06-17 10:37:07 +08:00
### 延伸阅读
#### Vim 8 新特新之旅
< ul >
{% for post in site.categories.tutorials_cn %}
< li >
< a href = "{{ post.url }}" > {{ post.title }}< / a >
< / li >
{% endfor %}
< / ul >