summaryrefslogtreecommitdiff
path: root/lisp/woman.el
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2011-01-28 16:20:40 -0500
committerChong Yidong <cyd@stupidchicken.com>2011-01-28 16:20:40 -0500
commit40e22d80ae027f2a833be444d95bce832b68e54c (patch)
treeeb249bfed787dd080758ede9cf613e8867357f05 /lisp/woman.el
parent6b91861333edd51848aa927c9b22d4ef431c2d01 (diff)
Fix for woman escape sequence processing (Bug#7843).
* lisp/woman.el (woman0-roff-buffer): Process roff escape sequences occurring prior to the first request.
Diffstat (limited to 'lisp/woman.el')
-rw-r--r--lisp/woman.el12
1 files changed, 12 insertions, 0 deletions
diff --git a/lisp/woman.el b/lisp/woman.el
index 9ab024d9d0f..ac4ace62bf1 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -2478,10 +2478,22 @@ Start at FROM and re-scan new text as appropriate."
(woman0-search-regex-start woman0-search-regex-start)
(woman0-search-regex
(concat woman0-search-regex-start woman0-search-regex-end))
+ processed-first-hunk
woman0-rename-alist)
(set-marker-insertion-type woman0-if-to t)
(while (re-search-forward woman0-search-regex nil t)
(setq woman-request (match-string 1))
+
+ ;; Process escape sequences prior to first request (Bug#7843).
+ (unless processed-first-hunk
+ (setq processed-first-hunk t)
+ (let ((process-escapes-to-marker (point-marker)))
+ (set-marker-insertion-type process-escapes-to-marker t)
+ (save-match-data
+ (save-excursion
+ (goto-char from)
+ (woman2-process-escapes process-escapes-to-marker)))))
+
(cond ((string= woman-request "ig") (woman0-ig))
((string= woman-request "if") (woman0-if "if"))
((string= woman-request "ie") (woman0-if "ie"))