web-dev-qa-db-ja.com

カスタムemacsテーマを「安全なテーマ」として扱うにはどうすればよいですか?

私はEmacsを初めて使用します。

だから、私はemacs 24と solarized カラーテーマを使用しています。

Emacsが起動すると、「テーマをロードするとLISPコードを実行できますが、本当にロードしますか?」というプロンプトが表示されます。

「はい」と答えると、「このテーマを今後のセッションで安全に扱いますか?」というメッセージが続きます。

「y」と言うと、テーマが読み込まれ、

(custom-set-variables
    (custome-safe-themes (quote ("..." default))))

〜/ .emacsに自動的に追加されます。

しかし、これらの質問は私がEmacsを開くたびに戻ってきます!

それらをオフにする適切な方法は何ですか?

44
Daniel Duan

M-x customize-themesを使用して好みのテーマを設定および保存すると、すべてがうまく機能するはずです。

代わりに、テーマを有効にするために.emacsにコードを追加したが、そのコードがcustom-set-variablesコマンドよりもファイルの前に表示されている場合は、それが問題である可能性があります。

load-theme関数のNO-CONFIRMフラグを使用して、安全性の確認を求めるプロンプトを表示せずに、Emacsにテーマを強制的にロードさせることができます。

(load-theme 'solarized-light t)
88
sanityinc

同じ問題がここでも起こりました。テーマをロードする前にcustom-set-variablesコードを配置することで、この問題を解決しました。

(custom-set-variables
 '(custom-safe-themes (quote ("9527feeeec43970b1d725bdc04e97eb2b03b15be982ac50089ad223d3c6f2920" default))))
(custom-set-faces
)

次に、テーマをロードします。

(defun use-default-theme()
  (load-theme 'default-black))

(use-default-theme)
5
Édipo Féderle

私は同じ問題を抱えていて、.emacsとloの行を削除しただけで、すべてが機能しているのがわかりました。

0