[PATCH v3] emacs: letf enriched-decode-display-prop for text/encriched display

2017-10-04 Thread Tomi Ollila
Dynamically bind enriched-decode-display-prop when inserting
text/enriched part. This complements commit 9b0582383833 for
emacs versions before 24.4 which do not have advice-add
functionality.

Since emacs 25.3 this particular bug is fixed.
---

V3 since id:20170920052544.2893-1-tomi.oll...@iki.fi

* added version< check to apply this fix for emacsen before 25.3

* changed cl-letf to letf for emacs 23.x support

* added comments why (require 'enriched) was needed
  (asked by dme)

db asked for test -- after a new moments of brief thinking I
could not come up with good robust way to test this. I now
tested this using debian 7.11 container (emacs 23.4),
centos 7.0 container (emacs 24.3) and then self-compiled
emacs 25.3 for fedora 26. the change worked as expected and
I don't see a way how this could cause a regression.

 emacs/notmuch-show.el | 18 ++
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index 993902770095..7acdfd7542e5 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -773,14 +773,16 @@ (defun notmuch-show-insert-part-text/calendar (msg part 
content-type nth depth b
 (defun notmuch-show-insert-part-text/x-vcalendar (msg part content-type nth 
depth button)
   (notmuch-show-insert-part-text/calendar msg part content-type nth depth 
button))
 
-;; https://bugs.gnu.org/28350
-(defun notmuch-show--enriched-decode-display-prop (start end  param)
-  (list start end))
-
-(defun notmuch-show-insert-part-text/enriched (msg part content-type nth depth 
button)
-  (advice-add 'enriched-decode-display-prop :override
- #'notmuch-show--enriched-decode-display-prop)
-  nil)
+(if (version< emacs-version "25.3")
+;; https://bugs.gnu.org/28350
+(defun notmuch-show-insert-part-text/enriched (msg part content-type nth 
depth button)
+  ;; By requiring enriched below, we ensure that the function 
enriched-decode-display-prop
+  ;; is defined before it will be shadowed by the letf below. Otherwise 
the version
+  ;; in enriched.el may be loaded a bit later and used instead (for the 
first time).
+  (require 'enriched)
+  (letf (((symbol-function 'enriched-decode-display-prop)
+(lambda (start end  param) (list start end
+   (notmuch-show-insert-part-*/* msg part content-type nth depth button
 
 (defun notmuch-show-get-mime-type-of-application/octet-stream (part)
   ;; If we can deduce a MIME type from the filename of the attachment,
-- 
2.13.3

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


Re: Dealing with spaces in mail folders

2017-10-04 Thread Baptiste Demoulin
Hello Tomi,

In fact this was an attempt to escape the space (else, notmuch looks for
Touslesmessages).

I finally found the solution, looking at the help for notmuch-fcc-dirs :

("bat.demou...@gmail.com" . "\"gmail/[Gmail]/.Tous les messages\"")

Putting the folder name inside double quotes does the trick !!

Good lesson: next time I'll read the manual before asking :)

bests,

baptiste


Tomi Ollila  writes:

> On Wed, Oct 04 2017, Baptiste Demoulin wrote:
>
>> Hello folks,
>>
>> this is my first mail on this list, and I've been using notmuch as my
>> principal mail client with Emacs for around 1 week.
>>
>> For my Gmail account, I rely mostly on the general 'Tous les Messages'
>> ('All mails') folder. Thus, I have set notmuch-fcc-dirs with the
>> following value:
>>
>> ("bat.demou...@gmail.com" . "gmail/[Gmail]/.Tous\  les\  messages")
>
> double space ... why not "gmail/[Gmail]/.Tous\ les\ messages" ... ?
>
> (although it looks interesting if this was the cause but anyway looks 
> suspicious...)
>
> Tomi
>
>>
>> However, sending mails with my Gmail account result in the following
>> error message in *Notmuch errors*:
>>
>> insert --folder\=gmail/\[Gmail\]/.Tous les messages
>> exit status: 1
>> stdout:
>> Error: unexpected query string: les messages
>>
>> What is the correct way to deal with spaces in folder names in this case
>> ? Thanks a lot !!
>>
>> baptiste
>> ___
>> notmuch mailing list
>> notmuch@notmuchmail.org
>> https://notmuchmail.org/mailman/listinfo/notmuch
> ___
> notmuch mailing list
> notmuch@notmuchmail.org
> https://notmuchmail.org/mailman/listinfo/notmuch
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: Dealing with spaces in mail folders

2017-10-04 Thread Tomi Ollila
On Wed, Oct 04 2017, Baptiste Demoulin wrote:

> Hello folks,
>
> this is my first mail on this list, and I've been using notmuch as my
> principal mail client with Emacs for around 1 week.
>
> For my Gmail account, I rely mostly on the general 'Tous les Messages'
> ('All mails') folder. Thus, I have set notmuch-fcc-dirs with the
> following value:
>
> ("bat.demou...@gmail.com" . "gmail/[Gmail]/.Tous\  les\  messages")

double space ... why not "gmail/[Gmail]/.Tous\ les\ messages" ... ?

(although it looks interesting if this was the cause but anyway looks 
suspicious...)

Tomi

>
> However, sending mails with my Gmail account result in the following
> error message in *Notmuch errors*:
>
> insert --folder\=gmail/\[Gmail\]/.Tous les messages
> exit status: 1
> stdout:
> Error: unexpected query string: les messages
>
> What is the correct way to deal with spaces in folder names in this case
> ? Thanks a lot !!
>
> baptiste
> ___
> notmuch mailing list
> notmuch@notmuchmail.org
> https://notmuchmail.org/mailman/listinfo/notmuch
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Dealing with spaces in mail folders

2017-10-04 Thread Baptiste Demoulin
Hello folks,

this is my first mail on this list, and I've been using notmuch as my
principal mail client with Emacs for around 1 week.

For my Gmail account, I rely mostly on the general 'Tous les Messages'
('All mails') folder. Thus, I have set notmuch-fcc-dirs with the
following value:

("bat.demou...@gmail.com" . "gmail/[Gmail]/.Tous\  les\  messages")

However, sending mails with my Gmail account result in the following
error message in *Notmuch errors*:

insert --folder\=gmail/\[Gmail\]/.Tous les messages
exit status: 1
stdout:
Error: unexpected query string: les messages

What is the correct way to deal with spaces in folder names in this case
? Thanks a lot !!

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


Re: notmuch-emacs: Fcc to top-level directory given by database.path

2017-10-04 Thread Arun Isaac
Jani Nikula  writes:

> On Sat, 23 Sep 2017, David Bremner  wrote:
>> Do you happen to know if it calls with an empty string as the folder
>> name? It would be consistent with searching for that to insert at the
>> top level.
>
> notmuch insert --folder= or --folder="" does not work:
>
> String argument for option "folder" must be non-empty.
> Unrecognized option: --folder=
>
> It seems that our argument parser doesn't accept empty strings at all,
> which is a bit of a limitation. It would be logical for the empty string
> to work here, and AFAICT the notmuch insert code would handle this if
> the argument was let through the parsing.

I agree. Fixing this in the `notmuch insert' argument parser is a better
solution.
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch