diff options
author | Gerd Moellmann <gerd@gnu.org> | 2001-08-07 09:57:32 +0000 |
---|---|---|
committer | Gerd Moellmann <gerd@gnu.org> | 2001-08-07 09:57:32 +0000 |
commit | ea2c64784db6194140a1738bf4051a59f770ccbe (patch) | |
tree | 22e0d1c54e8730b7a3d22ae392d3596d384364b8 /lisp/textmodes | |
parent | 6c233cc08319a7a6d7bea4f0e3bc31077a25b394 (diff) | |
download | emacs-ea2c64784db6194140a1738bf4051a59f770ccbe.tar.gz |
(forward-sentence): Avoid building
a regexp from sentence-end. From Kenichi Handa <handa@etl.go.jp>.
Diffstat (limited to 'lisp/textmodes')
-rw-r--r-- | lisp/textmodes/paragraphs.el | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lisp/textmodes/paragraphs.el b/lisp/textmodes/paragraphs.el index 172c2cdf35c..792b3b0cd09 100644 --- a/lisp/textmodes/paragraphs.el +++ b/lisp/textmodes/paragraphs.el @@ -369,10 +369,12 @@ sentences. Also, every paragraph boundary terminates sentences as well." (or arg (setq arg 1)) (let ((opoint (point))) (while (< arg 0) - (let ((par-beg (save-excursion (start-of-paragraph-text) (point)))) - (if (re-search-backward (concat "\\(" sentence-end "\\)[^ \t\n]") - par-beg t) - (goto-char (1- (match-end 0))) + (let ((pos (point)) + (par-beg (save-excursion (start-of-paragraph-text) (point)))) + (if (and (re-search-backward sentence-end par-beg t) + (or (< (match-end 0) pos) + (re-search-backward sentence-end par-beg t))) + (goto-char (match-end 0)) (goto-char par-beg))) (setq arg (1+ arg))) (while (> arg 0) |