2012-08-09 4 views
8

this linkにあるのは、emacsの起動時にemacs preludeがパッケージのセットを確実にインストールする方法を示しています。 prelude-packagesという変数を何らかの方法で拡張して、prelude-packages.elファイルを変更せずに他のパッケージを追加できるかどうか疑問に思っていましたか?emacs-preludeが提供するパッケージのリストをカスタマイズする

現在インストールされていない場合、起動時にインストールされるパッケージのリストをどのように定義できるのか不思議でした。あなたの.emacsで

答えて

5

Prelude recommends

(prelude-require-packages '(some-package some-other-package)) 

を使用します。必要であれば、あなたはまだ変数にあなたのパッケージのリストを維持できる

(prelude-require-package 'some-package) 

(setq my-packages '(drupal-mode nginx-mode toto-mode) 
(prelude-require-package my-packages) 
かの場合にはあなただけの一つのパッケージを追加したいです
1

がない場合は、各パッケージがインストールされているかどうかを確認し、それをインストールするには(あなたが送信されたリンクのコードに非常によく似ている)、このようなコードを追加することができますファイル:

答えで
(dolist (package '(eredis anything erlang elnode)) 
    (unless (package-installed-p package) 
    (package-install package))) 

あなたの質問には、プレリュードコードが実行された後にこれを行うことができない理由はありません。

8

.elファイルは、Preludeのpersonal/ディレクトリに置くことができます。 Preludeはアルファベット順にそこにある.elファイルを読み込みます。以下は、ファイルには、すべての個人的なカスタマイズの前にロードされていることを確認するために、ファイル名に追加された私のpersonal/00-packages.elファイル:

(require 'package) 
(add-to-list 'package-archives 
      '("marmalade" . 
       "http://marmalade-repo.org/packages/")) 
(package-initialize) 

;; My packages 
(setq prelude-packages (append '(
           drupal-mode 
           nginx-mode 
           ) prelude-packages)) 

;; Install my packages 
(prelude-install-packages) 

「00」の内容です。 prelude-packagesに追加するリストに必要な新しいパッケージを追加します。

また、MELPAやMarmaladeで使用できないモードを使用する場合は、モードのファイルを個人用フォルダにドロップするだけで、Preludeが読み込み中にそのファイルを取り込むことができます。そのモードへのカスタマイズがあれば、別の.elファイルを作成してそこにEmacs Lispコードを追加するだけです。あなたは、いくつかのパッケージを持っている場合

関連する問題