Re: [PATCH v4 01/16] add util/search-path.{c, h} to test for executables in $PATH

2016-08-11 Thread David Bremner
Daniel Kahn Gillmor  writes:

> This is a utility function we can use to see whether an executa>
> +if (strchr (exename, '/')) {
> + if (0 == access (exename, X_OK))
> + return TRUE;
> + else
> + return FALSE;
> +}

Should we distinguish between relative and absolute paths here?  I can't
think of any security implications, but I'm wondering if a relative path
is likely just a user error.

> + path = (char *) malloc (n);
> + if (! path)
> + return FALSE;

I kindof hate hiding the error here, although I agree it's
unlikely. What about the unixy return 0 ok, 1 not found -1 error?

> + confstr (_CS_PATH, path, n);
> +}
> +
> +tok = strtok_r (path, ":", );
> +while (tok) {

I guess it's fine to modify path here, but another option is
strtok_len (in string-util.h)

___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


notmuch-search-toggle-order and notmuch-tree

2016-08-11 Thread Aneesh Kumar K.V

Hi,

I was expecting notmuch-tree to also follow the search
order(oldest-first or not). But with latest notmuch
even after i change the search order using notmuch-serach-toggle-order a
tree view always list with the default search order. Is that expected ?

-aneesh

___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: Emacs: postponing messages

2016-08-11 Thread Brian Sniffen
I just found this thread from June while looking to resume a draft saved
from another program (dovecot) and which was given the 'draft' tag by
synchronization from Maildir flags.  Mark, thanks!

I *think* all I have to do to deal with other clients accessing the
Maildir through IMAP is to remove 'Message-ID from message-deletable
headers, because other clients may be watching for that---though this
only matters if the draft is resumed and postponed again, rather than
deleted.

Does that sound right?

  (when draft
   (notmuch-message-unquote-some-mml))

One comment here: anyone using maildir flag synchronization will have
items with tag:draft but no quoted MML.  To help them reasonably
*discuss* quoted MML, even when working from a mix of notmuch and other
MUAs, can this use a distinct tag?  For example, tag:quoted-mml?

Thanks,
Brian
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: Flat search and threaded views

2016-08-11 Thread Yuri D'Elia
On Thu, Aug 04 2016, Yuri D'Elia  wrote:
> The problem is that the search I've built includes both existing
> messages and unread ones (with a buffer of a day). So even though I get
> a new (unread) message, some existing messages in the thread also match.
> When reading a new thread started within the day, all messages match.

I've tried to change my workflow to fit notmuch's, for example by
narrowing my default searches only to only match unread messages.

I'm feeling a bit mixed about the interface. This is not my first
approach to tag-based email management (I actually still use mu4e). I
wanted to give notmuch a try, mostly due to the way tags can be
processed easily with afew.

I like how the tagging workflow works, actually. I customized afew and
the way default tags are assigned/managed. Batch-processing with afew is
a breeze. I wrote my own plugin to implement MailMove the way I wanted
in a few hours and overridden a few others. I'm quite happy about this.

I just find the emacs interface a bit confusing.

- Showing search results in threads, even after narrowing queries, is
  not optimal. I'm shown a list of threads which contain tag:unread
  messages, *but* the count is the number of messages in the thread
  itself. I've been tripped multiple times by this.

  I still think a flat search result would be better. I would like to
  jump into the show buffer as it's being done currently (with the whole
  thread) for additional context, but not for the direct search results.

- Tagging individual messages is just cumbersome because of this. I
  often flag individual ids that contain things that I need to act on
  later. I cannot do this straight from the search results. I need to
  read the thread and move the cursor to the appropriate message.

- Even after reconsidering, I find that '*' will  never do what I expect.
  I'd like to tag matching ids (that is, what I'm seeing), not threads.
  
  People often hijack old threads just to find your address. I'm being
  shown huge threads, but in reality I'm just getting a new message and
  I don't really want to manage threads as well as messages. When
  tagging, I almost always tag individual messages. When I tag threads,
  generally is to 'kill' them using afew's KillThreadsFilter.

- The unread mechanism itself is nice, but it doesn't work as you might
  expect if you match also read messages. Easier navigation between tags
  (such as "jump to the next unread message") is something I'm looking
  for.

- I patched notmuch to sync the TRASHED flag. Yes, deleting is a thing
  if you use multiple clients. Would you consider accepting a patch for
  this?

- gnus-alias actually works better than mu4e's "current focus" (which
  it's current identity mechanism). mu4e is a bit more comprehensive on
  that front, but gnus-alias is smoother, which I didn't expect.

I didn't still look at the notmuch-search sources. Do you think it would
be hard to support showing individual ids only? Looks like it's easy to
do from the cli, but might require too many conditions in the source.

mu4e on the other hand offers a guile interface that can be used for
filtering, so I'm not sure which is easier to do :P (implementing afew
with guile, or tweaking notmuch search results).
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [PATCH v2] Omit User-Agent: header by default

2016-08-11 Thread David Bremner
Daniel Kahn Gillmor  writes:

> The User-Agent: header can be fun and interesting, but it also leaks
> quite a bit of information about the user and their software stack.

pushed to master
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [PATCH] configure: add --without-api-docs option

2016-08-11 Thread David Bremner
mp39...@gmail.com writes:

> From: Mikhail 
>
> Add option to explicitly disable API man page build even if doxygen
> binary is available. --without-docs also implies not building API
> manpage.
>
> This change intended to add more distinctness into build system and
> allow user not to build unwanted man pages.

pushed to master
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [PATCH] configure: add --without-api-docs option

2016-08-11 Thread Tomi Ollila
On Wed, Aug 10 2016, mp39...@gmail.com wrote:

> From: Mikhail 
>
> Add option to explicitly disable API man page build even if doxygen
> binary is available. --without-docs also implies not building API
> manpage.

This LGTM and worked fine on my manual ./configure command line testing

Tomi

>
> This change intended to add more distinctness into build system and
> allow user not to build unwanted man pages.
> ---
>  configure | 16 ++--
>  1 file changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/configure b/configure
> index ae0a027..fa4c5b5 100755
> --- a/configure
> +++ b/configure
> @@ -68,6 +68,7 @@ PYTHON=${PYTHON:-}
>  PREFIX=/usr/local
>  LIBDIR=
>  WITH_DOCS=1
> +WITH_API_DOCS=1
>  WITH_EMACS=1
>  WITH_BASH=1
>  WITH_RUBY=1
> @@ -137,7 +138,8 @@ Some features can be disabled (--with-feature=no is 
> equivalent to
>  --without-feature) :
>  
>   --without-bash-completion   Do not install bash completions files
> - --without-docs  Do not install documentation and man 
> pages
> + --without-docs  Do not install documentation
> + --without-api-docs  Do not install API man page
>   --without-emacs Do not install lisp file
>   --without-ruby  Do not install ruby bindings
>   --without-zsh-completionDo not install zsh completions files
> @@ -184,11 +186,21 @@ for option; do
>  elif [ "${option%%=*}" = '--with-docs' ]; then
>   if [ "${option#*=}" = 'no' ]; then
>   WITH_DOCS=0
> + WITH_API_DOCS=0
>   else
>   WITH_DOCS=1
>   fi
>  elif [ "${option}" = '--without-docs' ] ; then
>   WITH_DOCS=0
> + WITH_API_DOCS=0
> +elif [ "${option%%=*}" = '--with-api-docs' ]; then
> + if [ "${option#*=}" = 'no' ]; then
> + WITH_API_DOCS=0
> + else
> + WITH_API_DOCS=1
> + fi
> +elif [ "${option}" = '--without-api-docs' ] ; then
> + WITH_API_DOCS=0
>  elif [ "${option%%=*}" = '--with-emacs' ]; then
>   if [ "${option#*=}" = 'no' ]; then
>   WITH_EMACS=0
> @@ -557,7 +569,7 @@ else
>  fi
>  
>  have_doxygen=0
> -if [ $WITH_DOCS = "1" ] ; then
> +if [ $WITH_API_DOCS = "1" ] ; then
>  printf "Checking if doxygen is available... "
>  if command -v doxygen > /dev/null; then
>   printf "Yes.\n"
> -- 
> 2.9.0
>
> ___
> notmuch mailing list
> notmuch@notmuchmail.org
> https://notmuchmail.org/mailman/listinfo/notmuch
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch