Vim 和 Emacs 配置文件路径

Emacs配置目录

Emacs默认会先读取~/.emac文件;若无,则读取~/.emacs.d目录,.d表示directory。类似的,Spacemacs默认会读取~/.spacemacs,若无,则读取~/.spacemacs.d目录。因为是隐藏目录查看不太方便,所以我选择将配置文件放置在dotfile.[spac]emacs文件夹中,并将~/.[spac]emacs.d目录软链接到此文件。

1
2
lrwxr-xr-x  .emacs.d@ ⇒ dotfile.emacs
lrwxr-xr-x  .spacemacs.d@ ⇒ dotfile.spacemacs.d

同时将配置文件使用git进行版本控制, 不同的配置放在不同的分支中, 以方便配置的切换。其分支如下:

1
2
* spacemacs 66d774cd6 [spacemacs/develop] [java] Fix not existing function
  vanilla   d2d8ea1f2 [github/vanilla] add ignore

vanilla是自己从零开始写的配置;Spacemacs无需解释,当然其配置文件有单独的目录~/.emacs[pace].d,也需进行分支管理。

配置&插件管理

Vanilla Emacs 可以使用 use-package 管理插件;Spacemacs的配置可写在init文件的dotspacemacs/user-config中, 更加复杂的配置建议使用layer,其一般具有如下目录结构:

1
2
3
4
5
6
.
├── README.org
├── config.el
├── funcs.el
├── keybindings.el
└── packages.el

自定义的配置可放在config.el; 需要添加的插件放置在packages.el。具体内容可参考 Configuration layers

Vim配置目录

Vim的配置路径是.vim文件或目录(目录不像emacs一样有.d后缀, 所以只有一种情况),将其链接至dotfile.vim文件。SpaceVim的配置目录是.SpaceVim.d。相同的原因,将其进行软链接。

lrwxr-xr-x  .SpaceVim.d@ ⇒ dotfile.spacevim.d
lrwxr-xr-x  .vim@ ⇒ dotfile.vim

另外Neovim 的配置文件路径为~/.config/nvim,于是Vim可以同时使用两个配置文件; 可在MacVim使用Spacemacs分支的配置, 而在Terminal里使用轻量的vanilla分支的配置。

配置&插件管理

在使用vanilla分支时需要用到vundle管理插件,在这里我将vundle和其下载插件的位置都设置在~/vim.bundle

1
2
3
4
5
6
7
set rtp+=~/vim.bundle
call vundle#begin('~/vim.bundle')

Plugin 'VundleVim/Vundle.vim'
Plugin 'dracula/vim', { 'name': 'dracula' }
Plugin 'preservim/nerdtree'
call vundle#end()         

SpaceVim的配置同Spacemacs, 也可采用layer的方式管理。如要要直接加入自己的配置,则要新建一个myconfig.vim脚本文件于autoload目录中,在其中定义配置函数:

1
2
3
function! myconfig#before() abort
  set mouse=a
endfunction

同时在init.toml配置文件中加上配置:

1
2
[options]
	 bootstrap_before = 'myconfig#before'
updatedupdated2023-06-052023-06-05
Update https-ca.md