emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#15701: closed ([PATCH] octave-mode: Handle empty l


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#15701: closed ([PATCH] octave-mode: Handle empty lookfor result.)
Date: Fri, 25 Oct 2013 00:52:02 +0000

Your message dated Fri, 25 Oct 2013 08:51:08 +0800
with message-id <address@hidden>
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
address@hidden)


-- 
15701: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15701
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: [PATCH] octave-mode: Handle empty lookfor result. Date: Thu, 24 Oct 2013 18:58:53 +0200 User-agent: KMail/4.11.2 (Linux/3.11.0-12-generic; KDE/4.11.2; x86_64; ; )
* lisp/progmodes/octave.el (octave-lookfor): Handle empty lookfor
  result.  Ask user to retry using '-all' flag.

Signed-off-by: RĂ¼diger Sonderfeld <address@hidden>
---
 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




--- End Message ---
--- Begin Message --- Subject: Re: bug#15701: [PATCH] octave-mode: Handle empty lookfor result. Date: Fri, 25 Oct 2013 08:51:08 +0800 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (OS X 10.9)
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


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]