]> git.notmuchmail.org Git - notmuch/blobdiff - emacs/notmuch.el
emacs: Fix "free variable" warning for notmuch-folder-show-empty.
[notmuch] / emacs / notmuch.el
index 904272dfd9cc36b89b22d58df348eeff71cee3a4..f887916cb4d14ec227bcc713dea483b717210031 100644 (file)
@@ -1213,7 +1213,7 @@ matching this search term are shown if non-nil. "
          (notmuch-show-next-open-message))
       )))
 
-(defvar notmuch-search-authors-width 40
+(defvar notmuch-search-authors-width 20
   "Number of columns to use to display authors in a notmuch-search buffer.")
 
 (defvar notmuch-search-mode-map
@@ -1359,7 +1359,7 @@ Complete list of currently available key bindings:
   (setq buffer-read-only t)
   (if (not notmuch-tag-face-alist)
       (add-to-list 'notmuch-search-font-lock-keywords (list
-               "(\\([^)]*\\))$" '(1  'notmuch-tag-face)))
+               "(\\([^()]*\\))$" '(1  'notmuch-tag-face)))
     (let ((notmuch-search-tags (mapcar 'car notmuch-tag-face-alist)))
       (loop for notmuch-search-tag  in notmuch-search-tags
            do (add-to-list 'notmuch-search-font-lock-keywords (list
@@ -1482,7 +1482,7 @@ This function advances the next thread when finished."
                            (insert (format " (process returned %d)" exit-status)))
                        (insert "\n")
                        (if (and atbob
-                                notmuch-search-target-thread)
+                                (not (string= notmuch-search-target-thread "found")))
                            (set 'never-found-target-thread t))))))
              (if (and never-found-target-thread
                       notmuch-search-target-line)
@@ -1507,19 +1507,19 @@ This function advances the next thread when finished."
                           (authors-length (length authors))
                           (subject (match-string 5 string))
                           (tags (match-string 6 string)))
-                     (if (> authors-length 40)
-                         (set 'authors (concat (substring authors 0 (- 40 3)) "...")))
+                     (if (> authors-length notmuch-search-authors-width)
+                         (set 'authors (concat (substring authors 0 (- notmuch-search-authors-width 3)) "...")))
                      (goto-char (point-max))
-                     (let ((beg (point-marker)))
-                       (insert (format "%s %-7s %-40s %s (%s)\n" date count authors subject tags))
+                     (let ((beg (point-marker))
+                           (format-string (format "%%s %%-7s %%-%ds %%s (%%s)\n" notmuch-search-authors-width)))
+                       (insert (format format-string date count authors subject tags))
                        (put-text-property beg (point-marker) 'notmuch-search-thread-id thread-id)
                        (put-text-property beg (point-marker) 'notmuch-search-authors authors)
                        (put-text-property beg (point-marker) 'notmuch-search-subject subject)
-                       (if (and notmuch-search-target-thread
-                                (string= thread-id notmuch-search-target-thread))
+                       (if (string= thread-id notmuch-search-target-thread)
                            (progn
                              (set 'found-target beg)
-                             (set 'notmuch-search-target-thread nil))))
+                             (set 'notmuch-search-target-thread "found"))))
                      (set 'line (match-end 0)))
                  (set 'more nil)))))
          (if found-target
@@ -1733,7 +1733,8 @@ Currently available key bindings:
 (defun notmuch-folder-count (search)
   (car (process-lines notmuch-command "count" search)))
 
-(setq notmuch-folder-show-empty t)
+(defvar notmuch-folder-show-empty t
+  "Whether `notmuch-folder-mode' should display empty folders.")
 
 (defun notmuch-folder-show-empty-toggle ()
   "Toggle the listing of empty folders"