spacemacs workflow

Spacemacs 的优势在于预装了很多有用的 package, 整合到一起,无冲突。并在此基础上定义了一套方便的快捷键。使用 spacemacs 之前,担心快捷键太多记不住。实际上,使用几次后,发现快捷键定义还是很有规律的,而且有按键提示,不需要太多记忆。熟悉几个主要操作后,可以提高 emacs 的使用效率。

打开文件

一般情况下,我们经常操作的文件不会太多,都在最近文件列表里,列出最近使用 buffer 的快捷键是 SPC b b 。另外一个比较有用的是 SPC TAB ,在最近使用的两个 buffer 中切换。

如果要找的文件不在最近列表中,可以使用 SPC f L ,调用全盘快速搜索程序,windows 上默认使用 es.exe ,linux 上默认使用 locate ,快速定位到目标文件。

跳到函数定义

在编辑配置文件,或查看 emacs-lisp 文件时, SPC s j 可以在 minibuffer 中列出所有函数列表,选中后司跳到定义处。

搜索字符串

搜索功能有几个常见场景

  • 搜索光标下字符串

    使用 vim 的 superstar 功能就,只要按一下 * 就能快速搜索。

  • 搜索输入的字符串

    SPC s s 是 helm-swoop 的快捷键,类似于 multi-occur 的功能,输入字符串,在 minibuffer 中列出该字符串出现的所有列,选择后跳转。

写作 blog

打开 blog.org 文件后, C-z 退出 evil 模式,个人感觉在 evim 模式下,使用中文输入法不太方便。

M-> 跳转到文件最后,输入 blog-drawer ,这是我自定义的一个 snippet,用于创建 blog 标题和 drawer。

* $1
:PROPERTIES:
:BLOG: www.litchisoftware.com
:CATEGORY: ${2:代码}
:END:
$3

写完文章后, M-x org2blog/wp-post-subtree-and-publish 发布 blog。这个命令是个自定义函数

;;;###autoload
(defun org2blog/wp-post-subtree-and-publish ()
  "Publish the current subtree as a page."
  (interactive)
  (org2blog/wp-post-subtree t))