最近のことを知った後use-package
、設定を移植することにしましたが、package.el
パッケージのインストールと更新の維持に使用する利便性を放棄することに消極的でした。私は結合することは少しトリッキーなことがわかりましたuse-package
とpackage.el
。
私は一般的に人々がシステムuse-package
とどのように結合するかを学ぶことに興味package.el
がありますが、より具体的な質問については、読み続けてください。
私が欲しいものは次のとおりです。
- パッケージマネージャーでパッケージをインストールして、パッケージを簡単に参照し、を通じて更新できるようにする
list-packages
。 - パッケージを排他的に構成およびロード
use-package
するには、initファイルで、ロードする内容とその構成を正確に簡単に確認できます。 - オプションで、
use-package
の:ensure
キーワードを使用してパッケージをインストールすることもできます。
私が正しく理解している場合、私はpackage-initialize
基本的にそれが設定する方法だけで、何をするかを非常に望んでいませんload-path
。現在、私の構成にはこれがあります:
;(package-initialize)
(setq package-enable-at-startup nil)
(let ((default-directory "~/.emacs.d/elpa"))
(normal-top-level-add-subdirs-to-load-path))
(require 'use-package)
最初のコメント行は、Emacs 25が(package-initialize)
initファイルにa を有益に追加しないようにするためです。を持つビットnormal-top-level-add-subdirs-to-load-path
は、package-initialize
を作成するものの近似であり、load-path
十分に良いと思われる近似です。
これは私の欲望1と2を達成しているようですが、3ではありません。使用しようとすると:ensure
、package.el
初期化されていないというエラーメッセージが表示されます。呼び出しpackage-initialize
はそれを修正しますが、a)無数のオートロードをすべてロードしたくない(use-package
必要なオートロードを正確に作成するために使用することを好む)、およびb)簡単にできるようにしたいので、それを避けたい特定のインストール済みパッケージを必要なときにロードしないようにします(これは簡単ですuse-package
)。
誰もこれを行う方法についての推奨事項がありますか?
package-initialize
では私は質問を意味のないものにする使用に傾いています。