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."