145: How do I view news articles with embedded underlining (e.g.,
ClariNews)?
Underlining appears like this:
_^Hu_^Hn_^Hd_^He_^Hr_^Hl_^Hi_^Hn_^Hi_^Hn_^Hg
Per Abrahamsen <amanda@iesd.auc.dk> suggests using the following code,
which uses the underline face to turn such text into true underlining:
(defun gnus-article-prepare-overstrike ()
;; Prepare article for overstrike commands.
(save-excursion
(set-buffer gnus-article-buffer)
(let ((buffer-read-only nil))
(while (search-forward "\b" nil t)
(let ((next (following-char))
(previous (char-after (- (point) 2))))
(cond ((eq next previous)
(delete-region (- (point) 2) (point))
(put-text-property (point) (1+ (point))
'face 'bold))
((eq next ?_)
(delete-region (1- (point)) (1+ (point)))
(put-text-property (1- (point)) (point)
'face 'underline))
((eq previous ?_)
(delete-region (- (point) 2) (point))
(put-text-property (point) (1+ (point))
'face 'underline))))))))
(add-hook 'gnus-article-prepare-hook 'gnus-article-prepare-overstrike)
If you prefer to do away with underlining altogether, you can
destructively remove it with M-x ununderline-region; do this
automatically via
(add-hook 'gnus-article-prepare-hook
'(lambda () (ununderline-region (point-min) (point-max))))