[PATCH] emacs: get rid of trailing spaces in notmuch-hello view
Mark Walters
markwalters1009 at gmail.com
Mon Apr 9 14:57:27 PDT 2012
This looks fine to me (but I am not a lisp expert).
Mark
On Sat, 10 Mar 2012, Dmitry Kurochkin <dmitry.kurochkin at gmail.com> wrote:
> This patch removes trailing spaces in notmuch-hello view.
>
> A side effect of this change is that tag/query buttons no longer
> include a space at the end. This means that pressing RET when the
> point is at the first character after the tag/query button no longer
> works (note that this is the standard behavior for buttons). We may
> change this behavior in the future (without adding trailing spaces
> back) if people would find this change inconvenient.
> ---
> emacs/notmuch-hello.el | 30 ++++++++------------
> test/emacs | 2 +-
> test/emacs.expected-output/notmuch-hello | 2 +-
> .../emacs.expected-output/notmuch-hello-long-names | 6 ++--
> .../notmuch-hello-new-section | 2 +-
> .../notmuch-hello-section-counts | 4 +-
> .../notmuch-hello-section-hidden-tag | 2 +-
> .../notmuch-hello-section-with-empty | 2 +-
> .../emacs.expected-output/notmuch-hello-with-empty | 2 +-
> 9 files changed, 23 insertions(+), 29 deletions(-)
>
> diff --git a/emacs/notmuch-hello.el b/emacs/notmuch-hello.el
> index 28f39f1..17f7edd 100644
> --- a/emacs/notmuch-hello.el
> +++ b/emacs/notmuch-hello.el
> @@ -429,7 +429,8 @@ Such a list can be computed with `notmuch-hello-query-counts'."
> (let* ((widest (notmuch-hello-longest-label searches))
> (tags-and-width (notmuch-hello-tags-per-line widest))
> (tags-per-line (car tags-and-width))
> - (widest (cdr tags-and-width))
> + (column-width (cdr tags-and-width))
> + (column-indent 0)
> (count 0)
> (reordered-list (notmuch-hello-reflect searches tags-per-line))
> ;; Hack the display of the buttons used.
> @@ -441,32 +442,25 @@ Such a list can be computed with `notmuch-hello-query-counts'."
> (mapc (lambda (elem)
> ;; (not elem) indicates an empty slot in the matrix.
> (when elem
> + (if (> column-indent 0)
> + (widget-insert (make-string column-indent ? )))
> (let* ((name (first elem))
> (query (second elem))
> - (msg-count (third elem))
> - (formatted-name (format "%s " name)))
> + (msg-count (third elem)))
> (widget-insert (format "%8s "
> (notmuch-hello-nice-number msg-count)))
> - (if (string= formatted-name notmuch-hello-target)
> + (if (string= name notmuch-hello-target)
> (setq found-target-pos (point-marker)))
> (widget-create 'push-button
> :notify #'notmuch-hello-widget-search
> :notmuch-search-terms query
> - formatted-name)
> - (unless (eq (% count tags-per-line) (1- tags-per-line))
> - ;; If this is not the last tag on the line, insert
> - ;; enough space to consume the rest of the column.
> - ;; Because the button for the name is `(1+ (length
> - ;; name))' long (due to the trailing space) we can
> - ;; just insert `(- widest (length name))' spaces - the
> - ;; column separator is included in the button if
> - ;; `(equal widest (length name)'.
> - (widget-insert (make-string (max 0
> - (- widest (length name)))
> - ? )))))
> + name)
> + (setq column-indent
> + (1+ (max 0 (- column-width (length name)))))))
> (setq count (1+ count))
> - (if (eq (% count tags-per-line) 0)
> - (widget-insert "\n")))
> + (when (eq (% count tags-per-line) 0)
> + (setq column-indent 0)
> + (widget-insert "\n")))
> reordered-list)
>
> ;; If the last line was not full (and hence did not include a
> diff --git a/test/emacs b/test/emacs
> index 29a489c..42780af 100755
> --- a/test/emacs
> +++ b/test/emacs
> @@ -39,7 +39,7 @@ test_begin_subtest "Navigation of notmuch-hello to search results"
> test_emacs '(notmuch-hello)
> (goto-char (point-min))
> (re-search-forward "inbox")
> - (widget-button-press (point))
> + (widget-button-press (1- (point)))
> (notmuch-test-wait)
> (test-output)'
> test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-view-inbox
> diff --git a/test/emacs.expected-output/notmuch-hello b/test/emacs.expected-output/notmuch-hello
> index 1470790..2d69891 100644
> --- a/test/emacs.expected-output/notmuch-hello
> +++ b/test/emacs.expected-output/notmuch-hello
> @@ -2,7 +2,7 @@
>
> Saved searches: [edit]
>
> - 52 inbox 52 unread
> + 52 inbox 52 unread
>
> Search: .
>
> diff --git a/test/emacs.expected-output/notmuch-hello-long-names b/test/emacs.expected-output/notmuch-hello-long-names
> index be6d2c5..486d0d9 100644
> --- a/test/emacs.expected-output/notmuch-hello-long-names
> +++ b/test/emacs.expected-output/notmuch-hello-long-names
> @@ -2,14 +2,14 @@
>
> Saved searches: [edit]
>
> - 52 inbox 52 unread
> + 52 inbox 52 unread
>
> Search: .
>
> All tags: [hide]
>
> - 52 a-very-long-tag 52 inbox 52 unread
> - 4 attachment 7 signed
> + 52 a-very-long-tag 52 inbox 52 unread
> + 4 attachment 7 signed
>
> Type a search query and hit RET to view matching threads.
> Edit saved searches with the `edit' button.
> diff --git a/test/emacs.expected-output/notmuch-hello-new-section b/test/emacs.expected-output/notmuch-hello-new-section
> index 6a339aa..67fdef2 100644
> --- a/test/emacs.expected-output/notmuch-hello-new-section
> +++ b/test/emacs.expected-output/notmuch-hello-new-section
> @@ -1,4 +1,4 @@
> Test: [hide]
>
> - 52 inbox
> + 52 inbox
>
> diff --git a/test/emacs.expected-output/notmuch-hello-section-counts b/test/emacs.expected-output/notmuch-hello-section-counts
> index 9d79659..7a9827c 100644
> --- a/test/emacs.expected-output/notmuch-hello-section-counts
> +++ b/test/emacs.expected-output/notmuch-hello-section-counts
> @@ -1,5 +1,5 @@
> Test-with-counts: [hide]
>
> - 2 attachment 7 signed
> - 7 inbox 7 unread
> + 2 attachment 7 signed
> + 7 inbox 7 unread
>
> diff --git a/test/emacs.expected-output/notmuch-hello-section-hidden-tag b/test/emacs.expected-output/notmuch-hello-section-hidden-tag
> index 3688e7c..809a114 100644
> --- a/test/emacs.expected-output/notmuch-hello-section-hidden-tag
> +++ b/test/emacs.expected-output/notmuch-hello-section-hidden-tag
> @@ -1,4 +1,4 @@
> Test-with-filtered: [hide]
>
> - 4 attachment 52 inbox 7 signed
> + 4 attachment 52 inbox 7 signed
>
> diff --git a/test/emacs.expected-output/notmuch-hello-section-with-empty b/test/emacs.expected-output/notmuch-hello-section-with-empty
> index dc2568d..5c67317 100644
> --- a/test/emacs.expected-output/notmuch-hello-section-with-empty
> +++ b/test/emacs.expected-output/notmuch-hello-section-with-empty
> @@ -1,4 +1,4 @@
> Test-with-empty: [hide]
>
> - 52 inbox
> + 52 inbox
>
> diff --git a/test/emacs.expected-output/notmuch-hello-with-empty b/test/emacs.expected-output/notmuch-hello-with-empty
> index 5e53222..854e0c2 100644
> --- a/test/emacs.expected-output/notmuch-hello-with-empty
> +++ b/test/emacs.expected-output/notmuch-hello-with-empty
> @@ -2,7 +2,7 @@
>
> Saved searches: [edit]
>
> - 52 inbox 52 unread 0 empty
> + 52 inbox 52 unread 0 empty
>
> Search: .
>
> --
> 1.7.9.1
>
> _______________________________________________
> notmuch mailing list
> notmuch at notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch
More information about the notmuch
mailing list