diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index 5f3fba00df..c8aec4eea1 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi @@ -9374,6 +9374,12 @@ Article Washing @end table +@item W D F +@kindex W D F @r{(Summary)} +@findex gnus-article-toggle-fonts +Toggle proportional fonts for @acronym{HTML} articles. This temporarily +changes the @code{shr-use-fonts} variable in the current buffer. + @item W b @kindex W b @r{(Summary)} @findex gnus-article-add-buttons diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 3c1403e155..7f48191085 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -2243,6 +2243,19 @@ gnus-article-show-images (funcall function (get-text-property start 'image-url) start end))))))) +(defun gnus-article-toggle-fonts () + "Toggle the use of proportional fonts for HTML articles." + (interactive nil gnus-article-mode gnus-summary-mode) + (gnus-with-article-buffer + (if (eq mm-text-html-renderer 'shr) + (progn + (if (not (local-variable-p 'gnus-article-shr-use-fonts)) + (setq-local gnus-article-shr-use-fonts shr-use-fonts)) + (setq-local gnus-article-shr-use-fonts + (not gnus-article-shr-use-fonts)) + (let ((shr-use-fonts gnus-article-shr-use-fonts)) + (gnus-summary-show-article)))))) + (defun gnus-article-treat-fold-newsgroups () "Fold the Newsgroups and Followup-To message headers." (interactive nil gnus-article-mode gnus-summary-mode) diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index 856e95c0ba..c28e38e315 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el @@ -2252,6 +2252,7 @@ gnus-summary-mode-map "s" gnus-treat-smiley "D" gnus-article-remove-images "W" gnus-article-show-images + "F" gnus-article-toggle-fonts "f" gnus-treat-from-picon "m" gnus-treat-mail-picon "n" gnus-treat-newsgroups-picon @@ -2561,6 +2562,7 @@ gnus-summary-make-menu-bar ["Unfold headers" gnus-article-treat-unfold-headers t] ["Fold newsgroups" gnus-article-treat-fold-newsgroups t] ["Html" gnus-article-wash-html t] + ["Toggle HTML fonts" gnus-article-toggle-fonts t] ["Unsplit URLs" gnus-article-unsplit-urls t] ["Verify X-PGP-Sig" gnus-article-verify-x-pgp-sig t] ["Decode HZ" gnus-article-decode-HZ t]