The issue seems to happen more likely with larger fonts (e.g. with text-scale-mode -- of course I had hitten g after rescaling), but it also happens with the default font here. While browsing through and playing with the code, I found two places where I could improve things: 1. --8<---------------cut here---------------start------------->8--- (defun shr-insert-document (dom) ... (setq shr-content-cache nil) (let ((start (point)) (shr-start nil) ... (shr-internal-width (or (and shr-width..3..) (if (not shr-use-fonts) (- (window-width) 2) (- (window-pixel-width) ; <---- here (* (frame-fringe-width) 2)))))) (shr-descend dom) (shr-fill-lines start (point)) (shr-remove-trailing-whitespace start (point)) (when shr-warning..1..))) --8<---------------cut here---------------end--------------->8--- AFAICT (- (window-pixel-width) (* (frame-fringe-width) 2)) is not the available width for text, it is a larger value including scroll bars etc. When I change it to (window-body-width nil t) this improves things. The issue still occurs with this change, though much less often. 2. --8<---------------cut here---------------start------------->8--- (defun shr-vertical-motion (column) (if (not shr-use-fonts) (move-to-column column) (unless (eolp) (forward-char 1)) (vertical-motion (cons (/ column (frame-char-width)) 0)) ; <-- here (unless (eolp) (forward-char 1)))) --8<---------------cut here---------------end--------------->8--- This function is used, among other places, to decide where to break lines in `shr-fill-line'. Probably (/ column (frame-char-width)) can be too large if you are unlucky. For testing I tried with this version: --8<---------------cut here---------------start------------->8--- (defun shr-vertical-motion (column) (if (not shr-use-fonts) (move-to-column column) (unless (eolp) (forward-char 1)) (end-of-visual-line))) --8<---------------cut here---------------end--------------->8--- This seems to fix this issue (together with the first change), though I guess it's wrong when shr-vertical-motion is called with column < window-width (dunno if this is done somewhere). Thanks, Michael. In GNU Emacs 25.0.50.4 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.4) of 2015-07-07 on drachen Repository revision: 0bfc94047da4960af55196242728a7a55120867f Windowing system distributor `The X.Org Foundation', version 11.0.11702000 System Description: Debian GNU/Linux testing (stretch) Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11