[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Franz Fellner writes: > Exclude mails tagged with any tag specified in > notmuch config get search.exclude_tags > in folders list and search list. > This seems like an important feature and I'd like to add it. It needs rebasing against current master. Also, as a nitpick, please fill the commit comment to something like 65-75 columns. Cheers, d
RE: [PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Franz Fellner writes: > Exclude mails tagged with any tag specified in > notmuch config get search.exclude_tags > in folders list and search list. > This seems like an important feature and I'd like to add it. It needs rebasing against current master. Also, as a nitpick, please fill the commit comment to something like 65-75 columns. Cheers, d ___ notmuch mailing list [email protected] http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Exclude mails tagged with any tag specified in
notmuch config get search.exclude_tags
in folders list and search list.
diff --git a/vim/notmuch.vim b/vim/notmuch.vim
index 5c86fcd..522a366 100644
--- a/vim/notmuch.vim
+++ b/vim/notmuch.vim
@@ -647,6 +647,7 @@ ruby << EOF
$db_name = nil
$all_emails = []
$email = $email_name = $email_address = nil
+ $exclude_tags = []
$searches = []
$threads = []
$messages = []
@@ -672,6 +673,8 @@ ruby << EOF
# Add the primary to this too as we use it for checking
# addresses when doing a reply
$all_emails.unshift($email_address)
+ ignore_tags = get_config_item('search.exclude_tags')
+ $exclude_tags = ignore_tags.split("\n")
end
def vim_puts(s)
@@ -859,6 +862,9 @@ ruby << EOF
end
folders.each do |name, search|
q = $curbuf.query(search)
+ $exclude_tags.each { |t|
+ q.add_tag_exclude(t)
+ }
$searches << search
count = count_threads ? q.search_threads.count
: q.search_messages.count
if name == ''
@@ -874,6 +880,9 @@ ruby << EOF
date_fmt = VIM::evaluate('g:notmuch_date_format')
q = $curbuf.query(search)
q.sort = Notmuch::SORT_NEWEST_FIRST
+ $exclude_tags.each { |t|
+ q.add_tag_exclude(t)
+ }
$threads.clear
t = q.search_threads
[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Ian Main wrote:
>
> Thanks Franz!
>
> So this works well in the main searches by not showing anything I have marked
> as 'spam'. However if I force a search for tag:spam and then try to view any
> of the messages presented they will not show up because of the way we display
> the email.. :-/
Yes, the patch did not work perfectly.
I already fixed that but forgot to send a new PATCH here - Mostly
bacause my git-skills are - ehh - no idea...
I now spent half an hour to somehow get a merged version of those two commits
and ended up with a simple "git diff"...
If you have a good how-to that describes such things I would be happy, because
I also
miss the common terms how things are called in git and searching without knowing
what exactly I am looking for is hard...
Here is the commit:
https://github.com/ff2000/notmuch/commit/4fde250b53ce450fec3393d8578458d521a69c91
New patch coming soon.
Franz
>
> I'm not sure what is the best way to fix this..
>
> Ian
>
> Franz Fellner wrote:
> > commit 558719b9ea9c218117c448cf4c7bd671de14d968
> > Author: Franz Fellner
> > Date: Fri Oct 17 17:53:58 2014 +0200
> >
> > Exclude tags specified by
> > notmuch config get search.exclude_tags
> >
> > diff --git a/vim/notmuch.vim b/vim/notmuch.vim
> > index 5c86fcd..b8d11fe 100644
> > --- a/vim/notmuch.vim
> > +++ b/vim/notmuch.vim
> > @@ -647,6 +647,7 @@ ruby << EOF
> > $db_name = nil
> > $all_emails = []
> > $email = $email_name = $email_address = nil
> > + $exclude_tags = []
> > $searches = []
> > $threads = []
> > $messages = []
> > @@ -672,6 +673,8 @@ ruby << EOF
> > # Add the primary to this too as we use it for checking
> > # addresses when doing a reply
> > $all_emails.unshift($email_address)
> > + ignore_tags = get_config_item('search.exclude_tags')
> > + $exclude_tags = ignore_tags.split("\n")
> > end
> >
> > def vim_puts(s)
> > @@ -924,6 +927,9 @@ ruby << EOF
> >
> > def query(*args)
> > q = @db.query(*args)
> > + $exclude_tags.each { |t|
> > + q.add_tag_exclude(t)
> > + }
> > @queries << q
> > q
> > end
> > ___
> > notmuch mailing list
> > notmuch at notmuchmail.org
> > http://notmuchmail.org/mailman/listinfo/notmuch
>
>
RE: [PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Franz Fellner wrote:
> Ian Main wrote:
> >
> > Thanks Franz!
> >
> > So this works well in the main searches by not showing anything I have
> > marked
> > as 'spam'. However if I force a search for tag:spam and then try to view
> > any
> > of the messages presented they will not show up because of the way we
> > display
> > the email.. :-/
>
> Yes, the patch did not work perfectly.
> I already fixed that but forgot to send a new PATCH here - Mostly
> bacause my git-skills are - ehh - no idea...
> I now spent half an hour to somehow get a merged version of those two commits
> and ended up with a simple "git diff"...
> If you have a good how-to that describes such things I would be happy,
> because I also
> miss the common terms how things are called in git and searching without
> knowing
> what exactly I am looking for is hard...
>
> Here is the commit:
> https://github.com/ff2000/notmuch/commit/4fde250b53ce450fec3393d8578458d521a69c91
> New patch coming soon.
>
> Franz
If you are working off the same patch that you already posted you would
generally
do work on that branch and then you can do:
git add ...
git commit --amend
which commits the new stuff on top of the same commit you already had.
To send to the mailing list, I use:
git format-patch -1
(check the patch output..)
git send-email
which requires that you have your .gitconfig set up to have the list address
and such.
Also you can look into 'git cherry-pick' to grab commits from other branches
and 'git rebase -i' which allows you to squash commits together. eg:
git rebase -i HEAD~2
lets you squash the last two patches together by adding 'squash' to the
front of the latest commit.
Hopefully that helps and I didn't misinterpret what you needed.
Ian
> >
> > I'm not sure what is the best way to fix this..
> >
> > Ian
> >
> > Franz Fellner wrote:
> > > commit 558719b9ea9c218117c448cf4c7bd671de14d968
> > > Author: Franz Fellner
> > > Date: Fri Oct 17 17:53:58 2014 +0200
> > >
> > > Exclude tags specified by
> > > notmuch config get search.exclude_tags
> > >
> > > diff --git a/vim/notmuch.vim b/vim/notmuch.vim
> > > index 5c86fcd..b8d11fe 100644
> > > --- a/vim/notmuch.vim
> > > +++ b/vim/notmuch.vim
> > > @@ -647,6 +647,7 @@ ruby << EOF
> > > $db_name = nil
> > > $all_emails = []
> > > $email = $email_name = $email_address = nil
> > > + $exclude_tags = []
> > > $searches = []
> > > $threads = []
> > > $messages = []
> > > @@ -672,6 +673,8 @@ ruby << EOF
> > > # Add the primary to this too as we use it for checking
> > > # addresses when doing a reply
> > > $all_emails.unshift($email_address)
> > > + ignore_tags = get_config_item('search.exclude_tags')
> > > + $exclude_tags = ignore_tags.split("\n")
> > > end
> > >
> > > def vim_puts(s)
> > > @@ -924,6 +927,9 @@ ruby << EOF
> > >
> > > def query(*args)
> > > q = @db.query(*args)
> > > + $exclude_tags.each { |t|
> > > + q.add_tag_exclude(t)
> > > + }
> > > @queries << q
> > > q
> > > end
> > > ___
> > > notmuch mailing list
> > > [email protected]
> > > http://notmuchmail.org/mailman/listinfo/notmuch
> >
> >
>
>
___
notmuch mailing list
[email protected]
http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Franz Fellner wrote:
> Ian Main wrote:
> >
> > Thanks Franz!
> >
> > So this works well in the main searches by not showing anything I have
> > marked
> > as 'spam'. However if I force a search for tag:spam and then try to view
> > any
> > of the messages presented they will not show up because of the way we
> > display
> > the email.. :-/
>
> Yes, the patch did not work perfectly.
> I already fixed that but forgot to send a new PATCH here - Mostly
> bacause my git-skills are - ehh - no idea...
> I now spent half an hour to somehow get a merged version of those two commits
> and ended up with a simple "git diff"...
> If you have a good how-to that describes such things I would be happy,
> because I also
> miss the common terms how things are called in git and searching without
> knowing
> what exactly I am looking for is hard...
>
> Here is the commit:
> https://github.com/ff2000/notmuch/commit/4fde250b53ce450fec3393d8578458d521a69c91
> New patch coming soon.
>
> Franz
If you are working off the same patch that you already posted you would
generally
do work on that branch and then you can do:
git add ...
git commit --amend
which commits the new stuff on top of the same commit you already had.
To send to the mailing list, I use:
git format-patch -1
(check the patch output..)
git send-email
which requires that you have your .gitconfig set up to have the list address
and such.
Also you can look into 'git cherry-pick' to grab commits from other branches
and 'git rebase -i' which allows you to squash commits together. eg:
git rebase -i HEAD~2
lets you squash the last two patches together by adding 'squash' to the
front of the latest commit.
Hopefully that helps and I didn't misinterpret what you needed.
Ian
> >
> > I'm not sure what is the best way to fix this..
> >
> > Ian
> >
> > Franz Fellner wrote:
> > > commit 558719b9ea9c218117c448cf4c7bd671de14d968
> > > Author: Franz Fellner
> > > Date: Fri Oct 17 17:53:58 2014 +0200
> > >
> > > Exclude tags specified by
> > > notmuch config get search.exclude_tags
> > >
> > > diff --git a/vim/notmuch.vim b/vim/notmuch.vim
> > > index 5c86fcd..b8d11fe 100644
> > > --- a/vim/notmuch.vim
> > > +++ b/vim/notmuch.vim
> > > @@ -647,6 +647,7 @@ ruby << EOF
> > > $db_name = nil
> > > $all_emails = []
> > > $email = $email_name = $email_address = nil
> > > + $exclude_tags = []
> > > $searches = []
> > > $threads = []
> > > $messages = []
> > > @@ -672,6 +673,8 @@ ruby << EOF
> > > # Add the primary to this too as we use it for checking
> > > # addresses when doing a reply
> > > $all_emails.unshift($email_address)
> > > + ignore_tags = get_config_item('search.exclude_tags')
> > > + $exclude_tags = ignore_tags.split("\n")
> > > end
> > >
> > > def vim_puts(s)
> > > @@ -924,6 +927,9 @@ ruby << EOF
> > >
> > > def query(*args)
> > > q = @db.query(*args)
> > > + $exclude_tags.each { |t|
> > > + q.add_tag_exclude(t)
> > > + }
> > > @queries << q
> > > q
> > > end
> > > ___
> > > notmuch mailing list
> > > notmuch at notmuchmail.org
> > > http://notmuchmail.org/mailman/listinfo/notmuch
> >
> >
>
>
RE: [PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Exclude mails tagged with any tag specified in
notmuch config get search.exclude_tags
in folders list and search list.
diff --git a/vim/notmuch.vim b/vim/notmuch.vim
index 5c86fcd..522a366 100644
--- a/vim/notmuch.vim
+++ b/vim/notmuch.vim
@@ -647,6 +647,7 @@ ruby << EOF
$db_name = nil
$all_emails = []
$email = $email_name = $email_address = nil
+ $exclude_tags = []
$searches = []
$threads = []
$messages = []
@@ -672,6 +673,8 @@ ruby << EOF
# Add the primary to this too as we use it for checking
# addresses when doing a reply
$all_emails.unshift($email_address)
+ ignore_tags = get_config_item('search.exclude_tags')
+ $exclude_tags = ignore_tags.split("\n")
end
def vim_puts(s)
@@ -859,6 +862,9 @@ ruby << EOF
end
folders.each do |name, search|
q = $curbuf.query(search)
+ $exclude_tags.each { |t|
+ q.add_tag_exclude(t)
+ }
$searches << search
count = count_threads ? q.search_threads.count
: q.search_messages.count
if name == ''
@@ -874,6 +880,9 @@ ruby << EOF
date_fmt = VIM::evaluate('g:notmuch_date_format')
q = $curbuf.query(search)
q.sort = Notmuch::SORT_NEWEST_FIRST
+ $exclude_tags.each { |t|
+ q.add_tag_exclude(t)
+ }
$threads.clear
t = q.search_threads
___
notmuch mailing list
[email protected]
http://notmuchmail.org/mailman/listinfo/notmuch
RE: [PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Ian Main wrote:
>
> Thanks Franz!
>
> So this works well in the main searches by not showing anything I have marked
> as 'spam'. However if I force a search for tag:spam and then try to view any
> of the messages presented they will not show up because of the way we display
> the email.. :-/
Yes, the patch did not work perfectly.
I already fixed that but forgot to send a new PATCH here - Mostly
bacause my git-skills are - ehh - no idea...
I now spent half an hour to somehow get a merged version of those two commits
and ended up with a simple "git diff"...
If you have a good how-to that describes such things I would be happy, because
I also
miss the common terms how things are called in git and searching without knowing
what exactly I am looking for is hard...
Here is the commit:
https://github.com/ff2000/notmuch/commit/4fde250b53ce450fec3393d8578458d521a69c91
New patch coming soon.
Franz
>
> I'm not sure what is the best way to fix this..
>
> Ian
>
> Franz Fellner wrote:
> > commit 558719b9ea9c218117c448cf4c7bd671de14d968
> > Author: Franz Fellner
> > Date: Fri Oct 17 17:53:58 2014 +0200
> >
> > Exclude tags specified by
> > notmuch config get search.exclude_tags
> >
> > diff --git a/vim/notmuch.vim b/vim/notmuch.vim
> > index 5c86fcd..b8d11fe 100644
> > --- a/vim/notmuch.vim
> > +++ b/vim/notmuch.vim
> > @@ -647,6 +647,7 @@ ruby << EOF
> > $db_name = nil
> > $all_emails = []
> > $email = $email_name = $email_address = nil
> > + $exclude_tags = []
> > $searches = []
> > $threads = []
> > $messages = []
> > @@ -672,6 +673,8 @@ ruby << EOF
> > # Add the primary to this too as we use it for checking
> > # addresses when doing a reply
> > $all_emails.unshift($email_address)
> > + ignore_tags = get_config_item('search.exclude_tags')
> > + $exclude_tags = ignore_tags.split("\n")
> > end
> >
> > def vim_puts(s)
> > @@ -924,6 +927,9 @@ ruby << EOF
> >
> > def query(*args)
> > q = @db.query(*args)
> > + $exclude_tags.each { |t|
> > + q.add_tag_exclude(t)
> > + }
> > @queries << q
> > q
> > end
> > ___
> > notmuch mailing list
> > [email protected]
> > http://notmuchmail.org/mailman/listinfo/notmuch
>
>
___
notmuch mailing list
[email protected]
http://notmuchmail.org/mailman/listinfo/notmuch
RE: [PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Thanks Franz!
So this works well in the main searches by not showing anything I have marked
as 'spam'. However if I force a search for tag:spam and then try to view any
of the messages presented they will not show up because of the way we display
the email.. :-/
I'm not sure what is the best way to fix this..
Ian
Franz Fellner wrote:
> commit 558719b9ea9c218117c448cf4c7bd671de14d968
> Author: Franz Fellner
> Date: Fri Oct 17 17:53:58 2014 +0200
>
> Exclude tags specified by
> notmuch config get search.exclude_tags
>
> diff --git a/vim/notmuch.vim b/vim/notmuch.vim
> index 5c86fcd..b8d11fe 100644
> --- a/vim/notmuch.vim
> +++ b/vim/notmuch.vim
> @@ -647,6 +647,7 @@ ruby << EOF
> $db_name = nil
> $all_emails = []
> $email = $email_name = $email_address = nil
> + $exclude_tags = []
> $searches = []
> $threads = []
> $messages = []
> @@ -672,6 +673,8 @@ ruby << EOF
> # Add the primary to this too as we use it for checking
> # addresses when doing a reply
> $all_emails.unshift($email_address)
> + ignore_tags = get_config_item('search.exclude_tags')
> + $exclude_tags = ignore_tags.split("\n")
> end
>
> def vim_puts(s)
> @@ -924,6 +927,9 @@ ruby << EOF
>
> def query(*args)
> q = @db.query(*args)
> + $exclude_tags.each { |t|
> + q.add_tag_exclude(t)
> + }
> @queries << q
> q
> end
> ___
> notmuch mailing list
> [email protected]
> http://notmuchmail.org/mailman/listinfo/notmuch
___
notmuch mailing list
[email protected]
http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
Thanks Franz!
So this works well in the main searches by not showing anything I have marked
as 'spam'. However if I force a search for tag:spam and then try to view any
of the messages presented they will not show up because of the way we display
the email.. :-/
I'm not sure what is the best way to fix this..
Ian
Franz Fellner wrote:
> commit 558719b9ea9c218117c448cf4c7bd671de14d968
> Author: Franz Fellner
> Date: Fri Oct 17 17:53:58 2014 +0200
>
> Exclude tags specified by
> notmuch config get search.exclude_tags
>
> diff --git a/vim/notmuch.vim b/vim/notmuch.vim
> index 5c86fcd..b8d11fe 100644
> --- a/vim/notmuch.vim
> +++ b/vim/notmuch.vim
> @@ -647,6 +647,7 @@ ruby << EOF
> $db_name = nil
> $all_emails = []
> $email = $email_name = $email_address = nil
> + $exclude_tags = []
> $searches = []
> $threads = []
> $messages = []
> @@ -672,6 +673,8 @@ ruby << EOF
> # Add the primary to this too as we use it for checking
> # addresses when doing a reply
> $all_emails.unshift($email_address)
> + ignore_tags = get_config_item('search.exclude_tags')
> + $exclude_tags = ignore_tags.split("\n")
> end
>
> def vim_puts(s)
> @@ -924,6 +927,9 @@ ruby << EOF
>
> def query(*args)
> q = @db.query(*args)
> + $exclude_tags.each { |t|
> + q.add_tag_exclude(t)
> + }
> @queries << q
> q
> end
> ___
> notmuch mailing list
> notmuch at notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
commit 558719b9ea9c218117c448cf4c7bd671de14d968
Author: Franz Fellner
Date: Fri Oct 17 17:53:58 2014 +0200
Exclude tags specified by
notmuch config get search.exclude_tags
diff --git a/vim/notmuch.vim b/vim/notmuch.vim
index 5c86fcd..b8d11fe 100644
--- a/vim/notmuch.vim
+++ b/vim/notmuch.vim
@@ -647,6 +647,7 @@ ruby << EOF
$db_name = nil
$all_emails = []
$email = $email_name = $email_address = nil
+ $exclude_tags = []
$searches = []
$threads = []
$messages = []
@@ -672,6 +673,8 @@ ruby << EOF
# Add the primary to this too as we use it for checking
# addresses when doing a reply
$all_emails.unshift($email_address)
+ ignore_tags = get_config_item('search.exclude_tags')
+ $exclude_tags = ignore_tags.split("\n")
end
def vim_puts(s)
@@ -924,6 +927,9 @@ ruby << EOF
def query(*args)
q = @db.query(*args)
+ $exclude_tags.each { |t|
+ q.add_tag_exclude(t)
+ }
@queries << q
q
end
[PATCH] VIM: Respect exclude_tags specified in .notmuch-config
commit 558719b9ea9c218117c448cf4c7bd671de14d968
Author: Franz Fellner
Date: Fri Oct 17 17:53:58 2014 +0200
Exclude tags specified by
notmuch config get search.exclude_tags
diff --git a/vim/notmuch.vim b/vim/notmuch.vim
index 5c86fcd..b8d11fe 100644
--- a/vim/notmuch.vim
+++ b/vim/notmuch.vim
@@ -647,6 +647,7 @@ ruby << EOF
$db_name = nil
$all_emails = []
$email = $email_name = $email_address = nil
+ $exclude_tags = []
$searches = []
$threads = []
$messages = []
@@ -672,6 +673,8 @@ ruby << EOF
# Add the primary to this too as we use it for checking
# addresses when doing a reply
$all_emails.unshift($email_address)
+ ignore_tags = get_config_item('search.exclude_tags')
+ $exclude_tags = ignore_tags.split("\n")
end
def vim_puts(s)
@@ -924,6 +927,9 @@ ruby << EOF
def query(*args)
q = @db.query(*args)
+ $exclude_tags.each { |t|
+ q.add_tag_exclude(t)
+ }
@queries << q
q
end
___
notmuch mailing list
[email protected]
http://notmuchmail.org/mailman/listinfo/notmuch
