Mercurial > emacs
changeset 107512:41f05dc44793
Woman parsing fix (Bug#5729).
* woman.el (woman2-process-escapes): Only consume the newline if
the filler character is on a line by itself (Bug#5729).
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Tue, 16 Mar 2010 13:24:44 -0400 |
parents | d062580ecdc6 |
children | db52341e76ec |
files | lisp/ChangeLog lisp/woman.el |
diffstat | 2 files changed, 13 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Tue Mar 16 16:05:46 2010 +0900 +++ b/lisp/ChangeLog Tue Mar 16 13:24:44 2010 -0400 @@ -1,3 +1,8 @@ +2010-03-16 Chong Yidong <cyd@stupidchicken.com> + + * woman.el (woman2-process-escapes): Only consume the newline if + the filler character is on a line by itself (Bug#5729). + 2010-03-16 Kenichi Handa <handa@m17n.org> * language/indian.el (devanagari-composable-pattern): Add more
--- a/lisp/woman.el Tue Mar 16 16:05:46 2010 +0900 +++ b/lisp/woman.el Tue Mar 16 13:24:44 2010 -0400 @@ -3876,10 +3876,14 @@ ;; The first two cases below could be merged (maybe)! (let ((from (point))) ;; Discard zero width filler character used to hide leading dots - ;; and zero width characters. If on a line by itself, consume the - ;; newline as well, as this may interfere with (Bug#3651). - (while (re-search-forward "\\\\[&|^]\n?" to t) - (woman-delete-match 0)) + ;; and zero width characters. + (while (re-search-forward "\\\\[&|^]" to t) + (woman-delete-match 0) + ;; If on a line by itself, consume newline as well (Bug#3651). + (and (eq (char-before (match-beginning 0)) ?\n) + (eq (char-after (match-beginning 0)) ?\n) + (delete-char 1))) + (goto-char from) ;; Interrupt text processing -- CONTINUE current text with the ;; next text line (after any control lines, unless processing to