GNU bug report logs - #15701
[PATCH] octave-mode: Handle empty lookfor result.

Previous Next

Package: emacs;

Reported by: Rüdiger Sonderfeld <ruediger <at> c-plusplus.de>

Date: Thu, 24 Oct 2013 17:17:01 UTC

Severity: normal

Tags: patch

Done: Leo Liu <sdl.web <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Leo Liu <sdl.web <at> gmail.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#15701: closed ([PATCH] octave-mode: Handle empty lookfor result.)
Date: Fri, 25 Oct 2013 00:52:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Fri, 25 Oct 2013 08:51:08 +0800
with message-id <m1eh7a6umb.fsf <at> gmail.com>
and subject line Re: bug#15701: [PATCH] octave-mode: Handle empty lookfor result.
has caused the debbugs.gnu.org bug report #15701,
regarding [PATCH] octave-mode: Handle empty lookfor result.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
15701: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15701
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Rüdiger Sonderfeld <ruediger <at> c-plusplus.de>
To: bug-gnu-emacs <at> gnu.org
Cc: Leo Liu <sdl.web <at> gmail.com>
Subject: [PATCH] octave-mode: Handle empty lookfor result.
Date: Thu, 24 Oct 2013 18:58:53 +0200
* lisp/progmodes/octave.el (octave-lookfor): Handle empty lookfor
  result.  Ask user to retry using '-all' flag.

Signed-off-by: Rüdiger Sonderfeld <ruediger <at> c-plusplus.de>
---
 lisp/progmodes/octave.el | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

diff --git a/lisp/progmodes/octave.el b/lisp/progmodes/octave.el
index 899bf15..1803ea6 100644
--- a/lisp/progmodes/octave.el
+++ b/lisp/progmodes/octave.el
@@ -1724,20 +1724,32 @@ (defun octave-lookfor (str &optional all)
                  (if all "'-all', " "")
                  str)))
   (let ((lines inferior-octave-output-list))
-    (when (string-match "error: \\(.*\\)$" (car lines))
+    (when (and (stringp (car lines))
+               (string-match "error: \\(.*\\)$" (car lines)))
       (error "%s" (match-string 1 (car lines))))
     (with-help-window octave-help-buffer
-      (princ (mapconcat 'identity lines "\n"))
       (with-current-buffer octave-help-buffer
+        (if lines
+            (insert (mapconcat 'identity lines "\n"))
+          (insert (format "Nothing found for \"%s\".\n" str)))
         ;; Bound to t so that `help-buffer' returns current buffer for
         ;; `help-setup-xref'.
         (let ((help-xref-following t))
           (help-setup-xref (list 'octave-lookfor str all)
                            (called-interactively-p 'interactive)))
         (goto-char (point-min))
-        (while (re-search-forward "^\\([^[:blank:]]+\\) " nil 'noerror)
-          (make-text-button (match-beginning 1) (match-end 1)
-                            :type 'octave-help-function))
+        (when lines
+          (while (re-search-forward "^\\([^[:blank:]]+\\) " nil 'noerror)
+            (make-text-button (match-beginning 1) (match-end 1)
+                              :type 'octave-help-function)))
+        (unless all
+          (goto-char (point-max))
+          (insert "\nRetry with ")
+          (insert-text-button "'-all'"
+                              'follow-link t
+                              'action #'(lambda (b)
+                                          (octave-lookfor str '-all)))
+          (insert ".\n"))
         (octave-help-mode)))))
 
 (defcustom octave-source-directories nil
-- 
1.8.4



[Message part 3 (message/rfc822, inline)]
From: Leo Liu <sdl.web <at> gmail.com>
To: Rüdiger Sonderfeld <ruediger <at> c-plusplus.de>
Cc: 15701-done <at> debbugs.gnu.org
Subject: Re: bug#15701: [PATCH] octave-mode: Handle empty lookfor result.
Date: Fri, 25 Oct 2013 08:51:08 +0800
On 2013-10-25 00:58 +0800, Rüdiger Sonderfeld wrote:
> * lisp/progmodes/octave.el (octave-lookfor): Handle empty lookfor
>   result.  Ask user to retry using '-all' flag.

Committed with thanks.

Leo


This bug report was last modified 11 years and 268 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.