package.elでパッケージを一括管理&いらないパッケージ削除
パッケージ管理はpackage.el(標準のもの)で行っているのですが、
お試しでパッケージを導入していたらelispフォルダ(packageのインストール先)がかなりごちゃごちゃになってしまって、
もう使っていないものもあったので整理しました。
以下のコードをinit.elに記述して、
elisp以下のファイルを全部消去->emacsの起動で依存パッケージも含めインストールされます。
定期的に綺麗にしてあげると見通しもよくなっていいですね。
ちなみに同じ用途でel-getなどのパッケージ管理方法もありますが、
今のところmelpaにないパッケージの利用はないので標準機能でおこなっています。
そのうち移行するかもしれません。
(require 'package) (setq package-user-dir "~/.emacs.d/elisp") (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t) (add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/")) (package-initialize) (require 'cl) (defvar installing-package-list '( ;; package list ace-jump-mode anzu auto-async-byte-compile auto-capitalize auto-complete bind-key c-eldoc cl codic easy-kill el-get exec-path-from-shell expand-region flycheck flyspell google-c-style google-translate helm helm-flyspell helm-migemo helm-projectile helm-swoop highlight-indentation highlight-symbol init-loader js2-mode linum magit markdown-mode migemo multi-term multiple-cursors neotree open-junk-file package popwin projectile python-mode quickrun rainbow-delimiters rainbow-mode recentf recentf-ext saveplace sequential-command server smartparens smartrep smooth-scroll tabbar twittering-mode undo-tree use-package volatile-highlights wdired web-mode wgrep yasnippet )) (let ((not-installed (loop for x in installing-package-list when (not (package-installed-p x)) collect x))) (when not-installed (package-refresh-contents) (dolist (pkg not-installed) (package-install pkg))))