This simplifies the configuration parsing, is more efficient, and also
reverts back to previous logic.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
vim/notmuch.vim | 26 ++++++++++++--------------
1 file changed, 12 insertions(+), 14 deletions(-)
diff --git a/vim/notmuch.vim b/vim/notmuch.vim
index 97167461..8777d412 100644
--- a/vim/notmuch.vim
+++ b/vim/notmuch.vim
@@ -484,24 +484,22 @@ ruby << EOF
$searches = []
$threads = []
$messages = []
+ $config = {}
$mail_installed = defined?(Mail)
- def get_config_item(item)
- result = ''
- IO.popen(['notmuch', 'config', 'get', item]) { |out|
- result = out.read
- }
- return result.rstrip
- end
-
def get_config
- $db_name = get_config_item('database.path')
- $email_name = get_config_item('user.name')
- $email_address = get_config_item('user.primary_email')
- $email_name = get_config_item('user.name')
+ IO.popen(%w[notmuch config list]) do |io|
+ io.each(chomp: true) do |e|
+ key, value = e.split('=')
+ $config[key] = value
+ end
+ end
+
+ $db_name = $config['database.path']
+ $email_name = $config['user.name']
+ $email_address = $config['user.primary_email']
+ $exclude_tags = $config['search.exclude_tags']&.split(';') || []
$email = "%s <%s>" % [$email_name, $email_address]
- ignore_tags = get_config_item('search.exclude_tags')
- $exclude_tags = ignore_tags.split("\n")
end
def vim_puts(s)
--
2.31.0
_______________________________________________
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-leave@notmuchmail.org