Emacs実践入門に書いてあるものにCaskを導入しただけ。
ディレクトリ構成
gitで管理しているファイル、ディレクトリは以下のとおり。
~/.emacs.d/
├── .gitignore
├── Cask
├── backup
├── conf
├── etc
├── init.el
└── snippets
各ファイル、ディレクトリの説明
.gitignore
giboで出力したもの($ gibo Emacs
)を書いておく。
### https://raw.github.com/github/gitignore/0aeefb48c0ac885a516fb92f7f5bfd7e85ce7a37/Global/Emacs.gitignore
*~
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
*.elc
auto-save-list
tramp
.\#*
# Org-mode
.org-id-locations
*_archive
Emacs以外の環境のignoreすべきファイル、ディレクトリは~/.gitignore
なんかに書いて.gitconfig
で解決する。
[core]
excludesfile = ~/.gitignore
Cask
ここがEmacs実践入門には書いていない部分。
CaskはEmacsにおけるbundlerのようなもので、CaskファイルはGemfileにあたるもの。
ここに何のプラグインを入れるか書いておく。
インストール方法とか使い方はこちらをご参考に。
package.elから Caskに切り替えました - Life is very short
backup
バックアップファイル、オートセーブファイルを入れておくためのディレクトリ。
下のようなコードを書いてバックアップファイルをここに保存するように設定する。
;; バックアップとオートセーブファイルを~/.emacs.d/backup/へ集める
(add-to-list 'backup-directory-alist
(cons "." "~/.emacs.d/backup/"))
(setq auto-save-file-name-transforms
`((".*" ,(expand-file-name "~/.emacs.d/backup/") t)))
上記の設定を書いたままだと~/.emacs.d/backup
というファイルが無いおとEmacsに注意されるので、.keep
という空のファイルだけ置いてディレクトリをgit管理下にしている。
conf
独自の設定を置いておくためのディレクトリ。
init.el
でinit-loaderを用いてこのディレクトリの中のelispをロードする。
init-loader
は環境に依存しない設定を2桁の数字から始まる設定ファイルを数字の順番に読み込む(00-config.el
, 01-view.el
)
etc
その他のファイルを入れておくためのディレクトリ。
init.el
Caskでインストールしたプラグインと自身の設定をinit-loader
で読み込むように書いておく。
;;; cask
(require 'cask "~/.cask/cask.el")
(cask-initialize)
;;; init-loader.el
(require 'init-loader)
(init-loader-load "~/.emacs.d/conf")
snippets
自分で定義したスニペットを入れておくためのディレクトリ。
設定ファイルにディレクトリ指定をするようにしておく。
;; yasnippet
(require 'yasnippet)
(setq yas-snippet-dirs
'("~/.emacs.d/snippets"))
(yas-global-mode 1)
さいごに
ちょっと前はSublime Textとか、最近はAtomとか流行ってて、さらにMicrosoftがVisual Studio Codeをリリースしたりしたけど、Emacsから乗り換えられないなあと思いながら自分の設定を晒す。
ytkt/.emacs.d