1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-24 19:03:29 +00:00

Tweak how auto-fill fills after a period

* lisp/textmodes/fill.el (fill-nobreak-p): Don't break immediately
after a space after a period (bug#17321).
This commit is contained in:
Lars Ingebrigtsen 2021-10-11 10:17:58 +02:00
parent 0b63b7e60a
commit 85b8609f95
2 changed files with 24 additions and 6 deletions

View File

@ -396,12 +396,8 @@ and `fill-nobreak-invisible'."
(save-excursion
(skip-chars-backward " ")
(and (eq (preceding-char) ?.)
(looking-at " \\([^ ]\\|$\\)"))))
;; Another approach to the same problem.
(save-excursion
(skip-chars-backward " ")
(and (eq (preceding-char) ?.)
(not (progn (forward-char -1) (looking-at (sentence-end))))))
;; There's something more after the space.
(looking-at " [^ \n]"))))
;; Don't split a line if the rest would look like a new paragraph.
(unless use-hard-newlines
(save-excursion

View File

@ -76,6 +76,28 @@
(buffer-string)
"aaa = baaaaaaaa aaaaaaaaaa\n aaaaaaaaaa\n")))))
(ert-deftest test-fill-end-period ()
(should
(equal
(with-temp-buffer
(text-mode)
(auto-fill-mode)
(insert "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eius.")
(self-insert-command 1 ?\s)
(buffer-string))
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eius. "))
(should
(equal
(with-temp-buffer
(text-mode)
(auto-fill-mode)
(insert "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eius.Foo")
(forward-char -3)
(self-insert-command 1 ?\s)
(buffer-string))
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eius. Foo")))
(provide 'fill-tests)
;;; fill-tests.el ends here