image)))
(defun shr-tag-pre (cont)
- (let ((shr-folding-mode nil))
+ (let ((shr-folding-mode 'none))
(shr-ensure-newline)
(shr-generic cont)
(shr-ensure-newline)))
(defun shr-tag-blockquote (cont)
(let ((shr-indentation (+ shr-indentation 4)))
- (shr-tag-pre cont)))
+ (shr-generic cont)))
(defun shr-ensure-newline ()
(unless (zerop (current-column))
(setq shr-state nil))
(cond
((eq shr-folding-mode 'none)
- (insert t))
+ (insert text))
(t
(let ((first t)
column)
(insert " "))
(dolist (elem (split-string text))
(setq column (current-column))
- (when (and (not first)
- (> column 0))
+ (when (> column 0)
(cond
- ((> (+ column (length elem) 1) shr-width)
+ ((and (or (not first)
+ (eq shr-state 'space))
+ (> (+ column (length elem) 1) shr-width))
(insert "\n"))
- (t
+ ((not first)
(insert " "))))
(setq first nil)
(when (and (bolp)
(unless shr-start
(setq shr-start (point)))
(insert elem))
+ (setq shr-state nil)
(when (and (string-match "[ \t\n]\\'" text)
(not (bolp)))
- (insert " "))))))
+ (insert " ")
+ (setq shr-state 'space))))))
(defun shr-get-image-data (url)
"Get image data for URL.
(defun shr-tag-li (cont)
(shr-ensure-newline)
- (if (numberp shr-list-mode)
- (progn
- (insert (format "%d " shr-list-mode))
- (setq shr-list-mode (1+ shr-list-mode)))
- (insert "* "))
- (shr-generic cont))
+ (let* ((bullet
+ (if (numberp shr-list-mode)
+ (prog1
+ (format "%d " shr-list-mode)
+ (setq shr-list-mode (1+ shr-list-mode)))
+ "* "))
+ (shr-indentation (+ shr-indentation (length bullet))))
+ (insert bullet)
+ (shr-generic cont)))
(defun shr-tag-br (cont)
- (shr-ensure-newline)
+ (unless (bobp)
+ (insert "\n"))
(shr-generic cont))
(defun shr-tag-h1 (cont)