私はこの質問を見ました:ewwで開かれたいくつかのWebページの背景色をカスタマイズする方法?しかし、これは私にはうまくいきません。私はウィキペディアのページを読もうとしていますが、多くの場所でウィキペディアは数式をレンダリングするために画像を使用しています。これらの背景が透明な場合、適切にレンダリングされないように見えます(以下の例)。だから、私は他のすべてを暗い背景のテーマで維持しながら、ewwに白っぽい背景のテーマを用意したいと思います。
私はこの質問を見ました:ewwで開かれたいくつかのWebページの背景色をカスタマイズする方法?しかし、これは私にはうまくいきません。私はウィキペディアのページを読もうとしていますが、多くの場所でウィキペディアは数式をレンダリングするために画像を使用しています。これらの背景が透明な場合、適切にレンダリングされないように見えます(以下の例)。だから、私は他のすべてを暗い背景のテーマで維持しながら、ewwに白っぽい背景のテーマを用意したいと思います。
回答:
更新:
load-theme-buffer-local.el
(GitHubリポジトリ)は、私がやろうとしたことを行うことになっていますが、正しい方法で行います。
で使用するにはeww
、インストールして追加します
(add-hook 'eww-mode-hook
(lambda () (load-theme-buffer-local 'tango (current-buffer))))
あなたのinitファイルに。
PS:この方法を自分でテストすることはできないので、これが機能するかどうかをお知らせください。
元の回答(記録のためだけに保管):
を使用face-remap-add-relative
して、現在のバッファに面を設定できます。
少し掘り下げた後、私はこのハックを思いつきました。テーマから顔の設定を抽出し、現在のバッファーに適用します。
(defun set-theme-faces-in-buffer (theme)
"Use face remapping to set faces from a theme in the current
buffer. THEME should be a symbol."
(dolist (setting (get theme 'theme-settings))
(when (eq (car setting) 'theme-face)
(let ((face (nth 1 setting))
(spec (cadar (nth 3 setting))))
(ignore-errors
(apply #'face-remap-add-relative face spec))))))
これをと組み合わせてeww-mode-hook
、eww
バッファーに別のテーマを設定できます。
(add-hook 'eww-mode-hook
(lambda () (set-theme-faces-in-buffer 'tango)))
(tango
お好きなライトテーマに置き換えてください。)
load-theme-buffer-local.el
、私のハックよりもはるかに優れているはずです。試してみる!(私は更新された回答でそれにリンクしました。)
あるいは、LaTeXマークアップの読み取りに慣れている場合は、画像をレンダリング計算に使用しないようにWikipediaを構成することをお勧めします。これには、ウィキペディアアカウントを作成し、[設定]-> [外観]-> [数学]に移動してオプションを選択する必要があります。「クライアント側MathJax」をお勧めします。これは、JavaScriptを理解するブラウザーではきれいにレンダリングされますが、そうでないブラウザーではLaTeXソースを表示するだけだからeww
です。
たとえば、あなたのページは次のようになります。
おそらく、将来的には、配色を認識した方法で、フォーマットされた数学のコードを表示しpreview-latex
たりorg-preview-latex-fragment
、フォーマットされた数学を表示したりできるようになるでしょうeww
。(または、javascriptインタープリターを統合してください!)
eww
、より一般的であるため、コンスタンティンの質問を受け入れます。ありがとう、結構です!
eww-mode