默认的颜色主题采用的是 。这一主题有深色和浅色两种。关于这一主题一些详细的配置可以阅读 。

    如果需要修改 SpaceVim 的主题,可以在 ~/.SpaceVim.d/init.toml 中修改 colorscheme。例如,使用 Vim 自带的内置主题 desert:

    可以在主题模块中查看 SpaceVim 支持的所有主题。

    注意:

    SpaceVim 在终端下默认使用了真色,因此使用之前需要确认下你的终端是否支持真色。可以阅读 了解根多关于真色的信息。

    如果你的终端不支持真色,可以在 SpaceVim 用户配置 [options] 中禁用真色支持:

    1. enable_guicolors = false

    在 SpaceVim 中默认的字体是 DejaVu Sans Mono for Powerline.如果你也喜欢这一字体,建议将这一字体安装到系统中。如果需要修改 SpaceVim 的字体,可以在用户配置文件中修改 guifont,默认值为:

    如果指定的字体不存在,将会使用系统默认的字体,此外,这一选项在终端下是无效的,终端下修改字体,需要修改终端自身配置。

    大多数界面元素可以通过快捷键来隐藏或者显示(这一组快捷键以 tT 开头):

    快捷键 描述
    SPC t 8 高亮所有超过80列的字符
    SPC t f 高亮临界列,默认 max_column 是第 120 列
    SPC t h h 高亮当前行
    SPC t h i 高亮代码对齐线
    SPC t h c 高亮光标所在列
    SPC t h s 启用/禁用语法高亮
    SPC t i 切换显示当前对齐(TODO)
    SPC t n 显示/隐藏行号
    SPC t b 切换背景色
    SPC t t 打开 Tab 管理器
    SPC T ~ 显示/隐藏 buffer 结尾空行行首的 ~
    SPC T F 切换全屏(TODO)
    SPC T f 显示/隐藏 Vim 边框(GUI)
    SPC T m 显示/隐藏菜单栏
    SPC T t 显示/隐藏工具栏

    core#statusline 模块提供了一个高度定制的状态栏,提供如下特性,这一模块的灵感来自于 spacemacs 的状态栏。

    • 展示窗口序列号
    • 展示搜索结果序列号
    • 显示/隐藏语法检查信息
    • 显示/隐藏电池信息
    • 显示/隐藏 SpaceVim 功能启用状态
    • 显示版本控制信息(需要 git 和 VersionControl 模块)
    快捷键 描述
    SPC [1-9] 跳至制定序号的窗口

    默认主题 gruvbox 的状态栏颜色和模式对照表:

    一些状态栏元素可以进行动态的切换:

    快捷键 描述
    SPC t m b 显示/隐藏电池状态 (需要安装 acpi)
    SPC t m c toggle the org task clock (available in org layer)(TODO)
    SPC t m m 显示/隐藏 SpaceVim 已启用功能
    显示/隐藏文件类型
    SPC t m n toggle the cat! (if colors layer is declared in your dotfile)(TODO)
    SPC t m p 显示/隐藏鼠标位置信息
    SPC t m t 显示/隐藏时间
    SPC t m d 显示/隐藏日期
    SPC t m T 显示/隐藏状态栏
    SPC t m v 显示/隐藏版本控制信息

    nerd 字体安装:

    SpaceVim 默认使用 nerd fonts,可参阅其安装指南进行安装。

    语法检查信息:

    状态栏中语法检查信息元素如果被启用了,当语法检查结束后,会在状态栏中展示当前语法错误和警告的数量。

    搜索结果信息:

    当使用 /? 进行搜索时,或当按下 nN 后,搜索结果序号将被展示在状态栏中,类似于 20/22 显示搜索结果总数以及当前结果的序号。具体的效果图如下:

    电池状态信息:

    acpi 可展示电池电量剩余百分比.

    使用不同颜色展示不同的电池状态:

    电池状态 颜色
    75% - 100% 绿色
    30% - 75% 黄色
    0 - 30% 红色

    状态栏分割符:

    可通过使用 statusline_separator 来定制状态栏分割符,例如使用非常常用的方向箭头作为状态栏分割符:

    1. statusline_separator = 'arrow'

    SpaceVim 所支持的分割符以及截图如下:

    SpaceVim 功能模块:

    功能模块可以通过 SPC t m m 快捷键显示或者隐藏。默认使用 Unicode 字符,可通过设置 statusline_unicode_symbols = false 来启用 ASCII 字符。(或许在终端中无法设置合适的字体时,可使用这一选项)。

    状态栏中功能模块内的字符显示与否,同如下快捷键功能保持一致:

    快捷键 Unicode ASCII 功能
    SPC t 8 8 高亮指定列后所有字符
    SPC t f f 高亮指定列字符
    SPC t s s 语法检查
    SPC t S S 拼写检查
    SPC t w w 行尾空格检查

    状态栏的颜色

    当前版本的状态栏支持 gruvbox/molokai/nord/one/onedark,如果你需要使用其他主题,可以通过以下木板来设置:

    这一模板是 gruvbox 主题的,如果你需要在切换主题是,状态栏都使用同一种颜色主题,可以设置 custom_color_palette

    1. custom_color_palette = [
    2. ["#a89984", "#504945", 239, 246],
    3. ["#a89984", "#3c3836", 237, 246],
    4. ["#665c54", 241],
    5. ["#282828", "#83a598", 235, 109],
    6. ["#282828", "#fe8019", 235, 208],
    7. ["#282828", "#8ec07c", 235, 108],
    8. ["#282828", "#689d6a", 235, 72],
    9. ]

    如果只有一个Tab, Buffers 将被罗列在标签栏上,每一个包含:序号、文件类型图标、文件名。如果有不止一个 Tab, 那么所有 Tab 将被罗列在标签栏上。标签栏上每一个 Tab 或者 Baffer 可通过快捷键 <Leader> number 进行快速访问,默认的 <Leader>\

    快捷键 描述
    <Leader> 1 跳至标签栏序号 1
    <Leader> 2 跳至标签栏序号 2
    <Leader> 3 跳至标签栏序号 3
    <Leader> 4 跳至标签栏序号 4
    <Leader> 5 跳至标签栏序号 5
    <Leader> 6 跳至标签栏序号 6
    <Leader> 7 跳至标签栏序号 7
    <Leader> 8 跳至标签栏序号 8
    <Leader> 9 跳至标签栏序号 9

    标签栏上也支持鼠标操作,左键可以快速切换至该序号,中键删除该标签。该特性只支持 neovim,并且需要 has('tablineat') 特性。

    可使用 SPC t t 打开内置的标签管理器,标签管理器内的快捷键如下:

    按键 描述
    o 展开或关闭标签目录
    r 重命名光标下的标签页
    n 在光标位置下新建命名标签页
    N 在光标位置下新建匿名标签页
    x 删除光标下的标签页
    <C-S-Up> 向上移动光标下的标签页
    <C-S-Down> 向下移动光标下的标签页
    跳至光标所对应的标签窗口