配置层
Spacemacs将其配置为单独的单位,称为配置层。这些层相互叠加以实现自定义配置。
默认情况下,spacemacs使用一个叫做~/.spacemacs的点文件来控制加载哪一个层,一个配置层是一个目录,其中至少含有一个packages.el文件,这个文件是从Emacs的内置包管理器中下载。
如果你已经有自己的emacs配置,你可以把它移动到自己的层。
下面的命令可以在私人目录中创建一个层:
SPC : dotspacemacs/install RET
你创建的任何层必须显示的在~/.spacemacs中加载。
注意:为了你的隐私,private目录下的内容不受源码控制,详细部分请查看文档中的私有配置部分
点文件(.spacemacs)
如前面所说,.spacemacs文件控制哪一个配置层会被加载,同时也是定制spacemacs的一个方法
下面的命令将会在你的用户目录创建一个.spacemacs文件
SPC : dotspacemacs/install RET
打开已安装的点文件
SPC f e d
使用 dotspacemacs-configuration-layers 变量来加载一些配置层:
;; List of configuration layers to load.dotspacemacs-configuration-layers '(auto-completion smex)
一些配置层支持用配置变量来暴露一些更加详细的特性功能,git层就是这样的一个例子。可以在dotspacemacs内部直接设置变量,就像这样:
;; List of configuration layers to load.dotspacemacs-configuration-layers '(auto-completion
(git :variables
git-magit-status-fullscreen t)
smex)
在任何时候你都可以申请更改点文件或者配置层使之生效,而不必用 SPC f e R 来重启Spacemacs。
点文件中包含关于如何定制spacemacs的更进一步的信息。查看文档中关于点配置文件的部分来获取更详细的信息。
点目录(~/.spacemacs.d)
类似Emacs, Spacemeacs的初始化也可以包含在 ~/.spacemacs.d 目录下的一个 init.el 文件中。点文件的内容应该复制到 init.el 文件中
学习Spacemacs
编辑风格
Spacemacs 能够通过设置dotspacemacs-editing-style变量来适应Vim用户或者Emacs用户,甚至可以在点文件 ~/.spacemacs 中混合使用。
leader 键
Spacemacs的快捷键使用了一个leader键,在vim和hybrid(混合)编辑风格默认绑定了 SPC (space bar),而在Emacs风格中则绑定了M-m(一般情况下是 Alt + m)。
你如果使用vim或hybrid风格可以在dotspacemacs-leader-key变量中修改它,如果是emacs风格则是dotspacemacs-emacs-leader-key变量(这些变量必须在 ~/.spacemacs 文件中设置)。
为简单起见,文档中的SPC 指的就是leader键
有一个leader键被称为主模式Leader键,默认是~,这个键在所有的主模式命令中是 SPC m 的快捷方式。
Evil辅导
如果你要学习VIm快捷键(强烈推荐,即使你使用Emacs风格也可以受益良多),按下 SPC h T 来开启Evil-adapted Vimtutor。
普遍的观点
在Vim编辑风格下的普遍默认使用 SPC u 代替 C-u。因为C-u在Vim中被用于滚动
配置层和探索包
通过使用 helm-spacemacs 和 SPC f e h 你能够在一个包中快速搜索和获取层使用的名字。你也可以很容易的去一个层的README.org文件和一个包的初始化函数。
快捷键探索
感谢一个键, 无论何时一个前缀命令被按下后(例如 SPC),,一秒钟之后会出现一个缓冲区并列出和这个前缀相关的可选键
通过按下面这组键可以搜索特定的快捷键
SPC ?
精简这些SPC前缀的快捷键列表,类似下面正则表达式这样的模式类型
SPC\ b
这将列出所有和缓冲区相关的快捷键绑定
功能描述
功能描述是Emacs内置强大的命令,用于获取函数、变量、模式的描述等等,这些命令已被绑定:
Key Binding | Description |
SPC h d f | describe-function |
SPC h d k | describe-key |
SPC h d m | describe-mode |
SPC h d v | describe-variable |
入门
一些入门知识编译在了 HOWTOs.org文件中。