it-swarm-ja.com

emacsで現在のカラーテーマを見つける方法

Emacsの実行中に、現在使用されているカラーテーマを確認するにはどうすればよいですか?

24
Talespin_Kit

現在のテーマの概念はありません。実際、複数のテーマを順番に適用して、アクティブな顔のセットを追加で定義できます。テーマのサポートが最新のEmacsバージョン(M-x customize-themeを参照)に追加され、「一度に複数のテーマを選択する」オプションがまだあります。

つまり、テーマをアクティブにすると、そのテーマに切り替わるのではなく、テーマで指定された変更を、顔とテーマがリストする変数に適用します。

名前付きテーマに明示的に配置されていないすべてのカスタマイズは、実際には非表示のユーザーテーマに入れられるため、常に少なくとも1つのアクティブなテーマが存在します。現在有効になっている他のテーマは、変数custom-enabled-themesにリストされています。

19
sanityinc

Color-theme-printを使用して、適用したテーマを取得する例を共有してください。

'M-x color-theme-print'を使用して、カラーテーマ情報に関する出力を取得し、さまざまなカラーテーマに固有の典型的な値を見つけます。私は、emacsの値が537182である「background-color」を選択します。

カラーテーマライブラリ「color-theme-library.el」を開き、「537182」というキーワードでファイルを検索すると、そこにテーマ名が表示されます。

簡単な方法ではありませんが、実際に機能しますが、お役に立てば幸いです。

4
fwlx

M-x color-theme-printは、有効なフォントフェースを正確に示すのに役立ちます。どの名前付きカラーテーマが適用されたかはわかりませんが、initファイルからそれを実行できるはずです。そうでない場合は、独自のカラーテーマを適用するモードを使用する必要があると思います(私は Proof General がこれを実行することを知っていますが、最も苛立たしいことです)。

3
jaybee

Sanityincの応答に追加するには、自分で設定するか、init.el(dotemacs)ファイルに記述します。

あなたがそれらのいくつかを試してみて、正しいのを忘れたので、あなたは尋ねていると思いますか? Messagesバッファをチェックして、最後に適用されたバッファを確認できるかどうかはわかりません。

@sanityincも説明ありがとうございます。テーマを次々と追加し始めたときに、ミニバッファーが変更されない、または最後のテーマの値に設定されるなどの一部の領域に気づきました。今、私はその理由を知っています。

1
pjammer