Ubuntu 安装配置 Spacemacs

安装 Emacs 26

Ubuntu 16.04 和 18.04 Emacs 版本都低于 26,可通过 ppa 安装最新的 Emacs 26.x:

sudo add-apt-repository ppa:kelleyk/emacs
sudo apt-get update
sudo apt-get install emacs26

安装 Spacemacs

spacemacs master 更新太慢,使用 develop 分支。

git clone -b develop https://github.com/syl20bnr/spacemacs ~/.emacs.d

启动 emacs,首次启动会有两个选项,直接回车选择默认值即可,之后会下载依赖,并自动生成配置文件 ~/.spacemacs

创建目录 .spacemacs.d 用来存放自定义配置,可使用 git 等工具进行同步和版本控制。 文件加载顺序说明

mkdir ~/.spacemacs.d
mv ~/.spacemacs ~/.spacemacs.d/init.el

配置

可通过 SPC f e d 快速打开配置文件。

图标

编辑 /usr/share/applications/emacs26.desktop 参考

StartupWMClass=Emacs26
Icon=/home/notfound/.emacs.d/core/banners/img/spacemacs.png

国外源下载速度慢,添加 国内的源 。在 dotspacemacs/user-init 中添加:

(setq configuration-layer-elpa-archives
      '(("melpa-cn" . "http://mirrors.cloud.tencent.com/elpa/melpa/")
        ("org-cn"   . "http://mirrors.cloud.tencent.com/elpa/org/")
        ("gnu-cn"   . "http://mirrors.cloud.tencent.com/elpa/gnu/")))

复制粘贴

emacs 会拦截鼠标事件,点击鼠标右键没菜单, Ctrl+c 也无法使用。

layer xclipboard 可以通过 SPC x p 粘贴, SPC x y 复制。 参考

在终端模式复制粘贴,在 dotspacemacs/user-config 中添加:

(xterm-mouse-mode -1)

终端中,可通过 Ctrl Shift c 复制, Ctrl Shift v 粘贴,但在复制时行末尾的空白会变成多余的空格。 参考

搜索

传说 aggrep 快,所以安装 ag

sudo apt install silversearcher-ag

默认搜索工具使用顺序为 rg > ag > pt > ack > grep ,所以安装 ag 后就不会使用 grep

文件过滤

搜索时可能需要过滤掉某些文件,默认情况下会使用 .gitignore.hgignore

可在项目或者 home 目录下添加文件 .agignore (或 .ignore 2.0.0+ )。 参考

按键

跳转

添加 gtags layer。

安装

sudo apt install global
sudo apt install exuberant-ctags python-pygments

配置

使用 ctags 生成标签,可添加环境变量:

export GTAGSLABEL=ctags

如果需要自定义忽略的文件和目录,可通过 ~/.globalrc 进行配置(文件内搜索 skip ):

按键

tags 信息保存在 GPATHGRTAGSGTAGS 三个文件中,需要在版本控制中忽略这三个文件。

其他常用 layers

其他