aboutsummaryrefslogtreecommitdiff
path: root/compat-29.el
diff options
context:
space:
mode:
authorDaniel Mendler <mail@daniel-mendler.de>2023-01-21 12:27:14 +0100
committerDaniel Mendler <mail@daniel-mendler.de>2023-01-21 12:27:14 +0100
commitef2ec232b8cbaa942ab6bcdd7887fc7cf5ef429a (patch)
tree8cb2fba4af57b46e9820312759bf3490fc4effd7 /compat-29.el
parentd599e721023b2ce4e849fbf488f0c72a979b2678 (diff)
compat-29: Add count-sentences
Diffstat (limited to 'compat-29.el')
-rw-r--r--compat-29.el16
1 files changed, 16 insertions, 0 deletions
diff --git a/compat-29.el b/compat-29.el
index 6c85933..495ede7 100644
--- a/compat-29.el
+++ b/compat-29.el
@@ -1211,5 +1211,21 @@ Also see `buttonize'."
(when (equal answer (cadr c))
(throw 'found c)))))))
+;;;; Defined in paragraphs.el
+
+(compat-defun count-sentences (start end) ;; <compat-tests:count-sentences>
+ "Count sentences in current buffer from START to END."
+ (let ((sentences 0)
+ (inhibit-field-text-motion t))
+ (save-excursion
+ (save-restriction
+ (narrow-to-region start end)
+ (goto-char (point-min))
+ (while (ignore-errors (forward-sentence))
+ (setq sentences (1+ sentences)))
+ (when (/= (skip-chars-backward " \t\n") 0)
+ (setq sentences (1- sentences)))
+ sentences))))
+
(provide 'compat-29)
;;; compat-29.el ends here