Doomemacs: About An Emacs framework for the stubborn martian hacker.
Question
为什么要使用 Doomemacs?
- 它真的很快: 得益于它的结构设计和懒加载,比其他框架快很多;
- 比较接近原生: 接近原生的好处是上手更好理解和体验,不需要你过多了解框架的内容(spacemacs);
配置使用 chemacs2(可选但是推荐)
Chemacs2: Emacs version switcher, improved
Question
在安装使用之前,为什么要用 chemacs2?
chemacs2
可以很方便地在多个 Emacs profile 配置进行切换;
假定我们有一套不使用任何框架的原始配置(default profile); 一套 spacemacs 配置(spacemacs profile); 一套 doomemacs 配置(doomemacs profile):
# 1. 备份当前正在使用的配置,以 default profile 为例:
$ mv ~/.emacs.d ~/.emacs.default
# 2. 你可能原来使用了 spacemacs 配置,可以统一下风格,这里不是强制的
$ mv ~/.spacemacs.d ~/.emacs.spacemacs
# 3. 安装 chemacs2
$ git clone https://github.com/plexus/chemacs2.git ~/.emacs.d
编辑 ~/.emacs-profiles.el
进行配置:
(("default" . ((user-emacs-directory . "~/.emacs.default"))) ;; GUI 默认使用 default 配置
("spacemacs" . ((user-emacs-directory . "~/.emacs.spacemacs"))))
如果想支持多版本的 spacemacs
,也可以这么配置:
;; 默认场景
(("spacemacs" . ((user-emacs-directory . "~/spacemacs")
(env . (("SPACEMACSDIR" . "~/.spacemacs.d")))))
;; 使用开发版本,原配置
("spacemacs-develop" . ((user-emacs-directory . "~/spacemacs.develop")
(env . (("SPACEMACSDIR" . "~/.spacemacs.d")))))
;; 使用开发版本,开发配置
("spacemacs-dev" . ((user-emacs-directory . "~/spacemacs.develop")
(env . (("SPACEMACSDIR" . "~/.spacemacs.d.dev"))))))
如何使用:
# 使用默认配置 default
$ emacs
# 指定配置,等效于上面
$ emacs --with-profile default
# 指定另外一套配置
$ emacs --with-profile spacemacs
安装 doomemacs
安装方式可以参考官方的: Doomemacs Install,根据个人习惯我进行了一些调整:
# clone the repo.
$ git clone --depth 1 https://github.com/doomemacs/doomemacs ~/dotfiles/doomemacs.d
# exports the bin path.
$ echo 'export PATH="$HOME/dotfiles/doomemacs.d/bin:$PATH"' >> ~/.aliases && source ~/.aliases
# install the deps.
$ doom install
$ mv ~/.doom.d ~/dotfiles/.doom.d
$ ln -s $HOME/dotfiles/.doom.d $HOME/.doom.d
添加如下内容到 ~/.emacs-profiles.el
中:
(("default" . ((user-emacs-directory . "~/dotfiles/doomemacs.d/")))
("spacemacs" . ((user-emacs-directory . "~/dotfiles/spacemacs.d/")))
("doom" . ((user-emacs-directory . "~/dotfiles/doomemacs.d/")))
("legacy" . ((user-emacs-directory . "~/dotfiles/.emacs.legacy/"))))
正确展示图标
前置条件:
- 在 GUI 模式下渲染更加齐全;
- nerd-icons 是必要的;直接执行
M-x nerd-icons-install-fonts
即可安装对应图标资源。
Org mode
Refs:
如何创建代码段
输入 src= + =TAB
生成如下格式的代码段:
,#+begin_src
,#+end_src
或者输入 quote= + =TAB
生成如下格式的引用:
,#+begin_quote
,#+end_quote
如何编辑代码段
C-c '
进入编辑代码段界面,C-c C-c
保存修改,C-c C-k
撤销修改。
Refs:
如何创建表格
Org 可以很方便通过 ASCII 来创建表格. 通过 |
符号作为列的分割符; 键入 |
+ TAB
作为表格的列;键入 |-
作为表格的行分割符号;表格大概长这个样子:
| Name | Phone | Age |
|-------+-------+-----|
| Peter | 1234 | 17 |
| Anna | 4321 | 25 |
当你输入 |Name|Phone|Age
后,执行 C-c RET
,可以直接快速生成这个样子的表格:
| Name | Phone | Age |
|------+-------+-----|
| | | |
Refs:
TOC(Table of Contents)
Refs:
Markdown
生成 TOC
执行 SPC SPC markdown-toc-generate-toc RET
预览
- 安装
vmd
npm install -g vmd
- 配置实时预览引擎
dotspacemacs-configuration-layers '(
(markdown :variables markdown-live-preview-engine 'vmd))
快捷方式
Command | Key shortcut(native/Doom) | Description |
---|---|---|
org-insert-link | C-c C-l / SPC m l l | 插入超链接 |
org-toggle-link-display | SPC m l t | 展示/隐藏超链接 |