Spacemacs-theme

Spacemacs 主题是一个 Emacs 配色主题,最初是作为 spacemacs 的主题而创建的。 该主题提供深色和浅色变体,并且应该能在 256 色终端上良好运行。
截图

亮点
该主题对 org mode 有良好的支持。

安装
你可以通过以下方式从 NonGNU ELPA 或 MELPA 安装:
M-x package-install RET spacemacs-theme
支持的模式
部分支持的模式包括:
- calfw
- company
- ein
- erc
- ESS 模式(用户可能希望自定义变量 ess-R-font-lock-keywords 和 inferior-ess-r-font-lock-keywords)
- gnus
- helm
- ido
- info
- ledger
- magit
- mu4e
- neotree
- org
- 以及其他 :) 更多模式即将加入!
自定义
该主题有一些选项,可以通过 M-x customize 进行调整:
spacemacs-theme-comment-bg:
这会切换注释行的背景颜色。
spacemacs-theme-comment-italic:
这会切换注释的斜体样式,并为其添加更浅的颜色。如果启用此选项,建议禁用 spacemacs-theme-comment-bg 以获得更好的对比度。
spacemacs-theme-keyword-italic:
这会切换关键字的斜体显示。
spacemacs-theme-org-agenda-height:
此选项用于切换是否使用不同高度的 org agenda。
spacemacs-theme-org-bold:
此选项用于切换 org 标题的粗体文本。
spacemacs-theme-org-height:
此选项用于切换是否使用不同高度的组织标题。
spacemacs-theme-org-highlight:
此选项用于切换 org 标题的高亮显示。
spacemacs-theme-org-priority-bold:
此选项用于切换议程视图中优先事项文本的加粗显示。
spacemacs-theme-custom-colors:
这允许指定一组自定义颜色以覆盖 spacemacs 主题颜色。更多详情请参阅下一节。
spacemacs-theme-underline-parens:
此选项用于在使用 show-paren-mode 或类似功能时切换匹配括号的波浪线。
覆盖主题颜色
可以通过在 spacemacs-theme-custom-colors 变量中设置列表来覆盖主题局部变量,从而自定义主题。
以下是所有局部变量及其作用的列表:
| var | role |
|---|---|
| act1 | mode-line 的激活颜色之一。 |
| act2 | mode-line 的另一个激活颜色。 |
| base | 普通文本的基础颜色。 |
| base-dim | 普通文本颜色的较暗版本。 |
| bg1 | 背景颜色。 |
| bg2 | 较暗的背景颜色。用于高亮当前行。 |
| bg3 | 背景颜色的另一种更暗的色调。 |
| bg4 | 最暗的背景颜色。 |
| border | 边框线颜色。用于 mode-line 边框。 |
| cblk | 代码块颜色。用于 org 的代码块。 |
| cblk-bg | 代码块的背景色。 |
| cblk-ln | 代码块标题行。 |
| cblk-ln-bg | 代码块标题行的背景。 |
| cursor | 光标/指针颜色。 |
| const | 常量。 |
| comment | 注释。 |
| comment-bg | 注释的背景色。要禁用此功能,customize spacemacs-theme-comment-bg。 |
| comp | 互补色。 |
| err | 错误。 |
| func | 函数。 |
| head1 | 标题的第 1 级。用于 org 的标题中。 |
| head1-bg | 第 2 级标题的背景。要禁用此功能,customize spacemacs-theme-org-highlight。 |
| head2 | 第 2 级标题。 |
| head2-bg | 二级标题背景。 |
| head3 | 三级标题。 |
| head3-bg | 三级标题背景。 |
| head4 | 四级标题。 |
| head4-bg | 四级标题背景。 |
| highlight | 高亮区域。 |
| highlight-dim | 较暗的高亮区域。 |
| keyword | 关键字或内置颜色。 |
| lnum | 行号。 |
| mat | 匹配颜色。用于匹配括号、方括号和标签。 |
| meta | 元信息行。用于 org 的元信息行。 |
| str | 字符串。 |
| suc | 表示成功。与 error 相对。 |
| ttip | 工具提示颜色。 |
| ttip-sl | 工具提示选中颜色。 |
| ttip-bg | 工具提示背景颜色。 |
| type | 类型颜色。 |
| var | 变量颜色。 |
| war | 警告颜色。 |
还有可以自定义的显式颜色变量:
- aqua
- aqua-bg
- green
- green-bg
- green-bg-s
- cyan
- red
- red-bg
- red-bg-s
- blue
- blue-bg
- blue-bg-s
- magenta
- yellow
- yellow-bg
green 和 red 颜色有两个背景版本。green-bg 和 red-bg 是普通的浅色背景颜色。green-bg-s、red-bg-s 和 blue-bg-s 是更强的版本。
以下是一些各种变量的截图:



如果你正在使用 spacemacs,你可以将此代码片段放入你的 dotspacemacs/user-init 中以覆盖这些颜色:
(custom-set-variables '(spacemacs-theme-custom-colors
'((act1 . "#ff0000")
(act2 . "#0000ff")
(base . "#ffffff"))))
这将覆盖 act1、act1 和 base,以使用指定的颜色。
使用自定义的 flycheck fringe 位图
如果你不使用 spacemacs,并希望获得相同的 flycheck fringe 位图外观,可以将以下代码片段放入你的 init.el 中(此处假设你正在使用 use-package):
(use-package flycheck
:init
(progn
(define-fringe-bitmap 'my-flycheck-fringe-indicator
(vector #b00000000
#b00000000
#b00000000
#b00000000
#b00000000
#b00000000
#b00000000
#b00011100
#b00111110
#b00111110
#b00111110
#b00011100
#b00000000
#b00000000
#b00000000
#b00000000
#b00000000))
(flycheck-define-error-level 'error
:severity 2
:overlay-category 'flycheck-error-overlay
:fringe-bitmap 'my-flycheck-fringe-indicator
:fringe-face 'flycheck-fringe-error)
(flycheck-define-error-level 'warning
:severity 1
:overlay-category 'flycheck-warning-overlay
:fringe-bitmap 'my-flycheck-fringe-indicator
:fringe-face 'flycheck-fringe-warning)
(flycheck-define-error-level 'info
:severity 0
:overlay-category 'flycheck-info-overlay
:fringe-bitmap 'my-flycheck-fringe-indicator
:fringe-face 'flycheck-fringe-info)))
喜欢这个主题并想在其他地方使用它?
那么请查看这个项目 base16-builder.