用户配置

初次启动 SpaceVim 时,他将提供选择目录,用户需要选择合适自己的配置模板。此时,SpaceVim 将自动在 HOME 目录生成 ~/.SpaceVim.d/init.toml。所有用户脚本可以存储在~/.SpaceVim.d/,这一文件夹将被加入 Vim 的运行时路径 &runtimepath。详情清阅读 :h rtp

当然,你也可以通过 SPACEVIMDIR 这一环境变量,执定用户配置目录。当然也可以通过软连接连改变目录位置,以便配置备份。

SpaceVim 同时还支持项目本地配置,配置初始文件为,当前目录下的 .SpaceVim.d/init.toml 文件。同时当前目录下的 .SpaceVim.d/ 也将被加入到 Vim 运行时路径。

所有的 SpaceVim 选项可以使用 :h SpaceVim-config 来查看。选项名称未原先 Vim 脚本中使用的变量名称去处 g:spacevim_ 前缀。

如果你需要添加自定义以 SPC 为前缀的快捷键,你需要使用 bootstrap function,在其中加入:

  1. call SpaceVim#custom#SPCGroupName(['G'], '+TestGroup')
  2. call SpaceVim#custom#SPC('nore', ['G', 't'], 'echom 1', 'echomessage 1', 1)

Vim 兼容模式

以下为 SpaceVim 中与 Vim 默认情况下的一些差异,而在兼容模式下,以下所有差异将不存在,可以通过设置 vimcompatible = true 来启用 Vim 兼容模式。

  • Noraml 模式下 s 按键不再删除光标下的字符,在 SpaceVim 中,它是 Windows 快捷键的前缀(可以在配置文件中设置成其他按键)。如果希望回复 s 按键原先的功能,可以通过 windows_leader = "" 使用一个空字符串来禁用这一功能。

  • Normal 模式下 , 按键在 Vim 默认情况下是重复上一次的 f、F、t 和 T 按键,但在 SpaceVim 中默认被用作为语言专用的前缀键。如果需要禁用此选项,可设置 enable_language_specific_leader = false。

  • Normal 模式下 q 按键在 SpaceVim 中被设置为了智能关闭窗口,即大多数情况下按下 q 键即可关闭当前窗口。可以通过 windows_smartclose = "" 使用一个空字符串来禁用这一功能,或修改为其他按键。

  • 命令行模式下 按键在 SpaceVim 中被修改为了移动光标至命令行行首。

    私有模块

这一部分简单介绍了模块的组成,更多关于新建模块的内容可以阅读SpaceVim 的模块首页

目的

使用模块的方式来组织和管理插件,将相关功能的插件组织成一个模块,启用/禁用效率更加高。同时也节省了很多寻找插件和配置插件的时间。

结构

在 SpaceVim 中,一个模块是一单个 Vim 文件,比如,autocomplete 模块存储在 autoload/SpaceVim/layers/autocomplete.vim,在这个文件内有以下几种公共函数:

  • SpaceVim#layers#autocomplete#plugins(): 返回该模块插件列表
  • SpaceVim#layers#autocomplete#config(): 模块相关设置
  • SpaceVim#layers#autocomplete#set_variable(): 模块选项设置函数