branch: externals/greader
commit c3c9f87bb2f0686f98067b50ae869beb2ef72129
Author: Michelangelo Rodriguez <michelangelo.rodrig...@gmail.com>
Commit: Michelangelo Rodriguez <michelangelo.rodrig...@gmail.com>

    Better handling of sentences.
---
 greader.el | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/greader.el b/greader.el
index f48c309438..08c749ca66 100644
--- a/greader.el
+++ b/greader.el
@@ -494,17 +494,23 @@ if `GOTO-MARKER' is t and if you pass a prefix to this
     (insert arg)))
 
 (defun greader-forward-sentence ()
-  (forward-sentence))
+  (let ((result (greader-call-backend 'next-text)))
+    (if (not (equal result 'not-implemented))
+       result
+      (forward-sentence))))
 
 (defun greader-get-sentence ()
-  (let ((sentence-start (make-marker)))
-    (setq sentence-start (point))
-    (save-excursion
-      (when (not (eobp))
-       (forward-sentence))
-      (if (> (point) sentence-start)
-         (string-trim (buffer-substring-no-properties sentence-start (point)) 
"[ \t\n\r]+")
-       nil))))
+  (let ((result (greader-call-backend 'get-text)))
+    (if (stringp result)
+       result
+      (let ((sentence-start (make-marker)))
+       (setq sentence-start (point))
+       (save-excursion
+         (when (not (eobp))
+           (forward-sentence))
+         (if (> (point) sentence-start)
+             (string-trim (buffer-substring-no-properties sentence-start 
(point)) "[ \t\n\r]+")
+           nil))))))
 
 (defun greader-sentence-at-point ()
   "Get sentence starting from point."

Reply via email to