;; <Utility functions>
;;
-(defun html2text-buffer-head ()
- (if (string= mode-name "Article")
- (beginning-of-buffer)
- (beginning-of-buffer)))
(defun html2text-replace-string (from-string to-string p1 p2)
(goto-char p1)
(goto-char p1)
(let ((item-nr 0)
(items 0))
- (while (re-search-forward "<li>" p2 t)
+ (while (search-forward "<li>" p2 t)
(setq items (1+ items)))
(goto-char p1)
(while (< item-nr items)
(setq item-nr (1+ item-nr))
- (re-search-forward "<li>" (point-max) t)
+ (search-forward "<li>" (point-max) t)
(cond
((string= list-type "ul") (insert " o "))
((string= list-type "ol") (insert (format " %s: " item-nr)))
(goto-char p1)
(let ((items 0)
(item-nr 0))
- (while (re-search-forward "<dt>" p2 t)
+ (while (search-forward "<dt>" p2 t)
(setq items (1+ items)))
(goto-char p1)
(while (< item-nr items)
"This _tries_ to fix up the paragraphs - this is done in quite a ad-hook
fashion, quite close to pure guess-work. It does work in some cases though."
(interactive)
- (html2text-buffer-head)
+ (goto-char (point-min))
(replace-regexp "^<br>$" "")
;; Removing lonely <br> on a single line, if they are left intact we
;; dont have any paragraphs at all.
- (html2text-buffer-head)
+ (goto-char (point-min))
(while (not (eobp))
(let ((p1 (point)))
(forward-paragraph 1)
See the documentation for that variable."
(interactive)
(dolist (tag tag-list)
- (html2text-buffer-head)
- (while (re-search-forward (format "</?%s[^>]*>" tag) (point-max) t)
+ (goto-char (point-min))
+ (while (re-search-forward (format "\\(</?%s[^>]*>\\)" tag) (point-max) t)
(delete-region (match-beginning 0) (match-end 0)))))
(defun html2text-format-tags ()
(dolist (tag-and-function html2text-format-tag-list)
(let ((tag (car tag-and-function))
(function (cdr tag-and-function)))
- (html2text-buffer-head)
- (while (re-search-forward (format "<%s\\( [^>]*\\)?>" tag)
+ (goto-char (point-min))
+ (while (re-search-forward (format "\\(<%s\\( [^>]*\\)?>\\)" tag)
(point-max) t)
(let ((p1)
(p2 (point))
(attr (match-string 0)))
(search-backward "<" (point-min) t)
(setq p1 (point))
- (re-search-forward (format "</%s>" tag) (point-max) t)
+ (search-forward (format "</%s>" tag) (point-max) t)
(setq p4 (point))
(search-backward "</" (point-min) t)
(setq p3 (point))
"See the variable \"html2text-replace-list\" for documentation"
(interactive)
(dolist (e html2text-replace-list)
- (html2text-buffer-head)
+ (goto-char (point-min))
(let ((old-string (car e))
(new-string (cdr e)))
(html2text-replace-string old-string new-string (point-min) (point-max)))
(dolist (tag-and-function html2text-format-single-element-list)
(let ((tag (car tag-and-function))
(function (cdr tag-and-function)))
- (html2text-buffer-head)
- (while (re-search-forward (format "<%s\\( [^>]*\\)?>" tag)
+ (goto-char (point-min))
+ (while (re-search-forward (format "\\(<%s\\( [^>]*\\)?>\\)" tag)
(point-max) t)
(let ((p1)
(p2 (point)))