Re: [PATCH] emacs: remap send-message and send-message-and-exit

2021-06-07 Thread Tomi Ollila
On Fri, Jun 04 2021, e...@edef.eu wrote:

>> >  (defvar notmuch-message-mode-map
>> >(let ((map (make-sparse-keymap)))
>> > -(define-key map (kbd "C-c C-c") #'notmuch-mua-send-and-exit)
>> > -(define-key map (kbd "C-c C-s") #'notmuch-mua-send)
>> > +(define-key map [remap message-send-and-exit] 
>> > 'notmuch-mua-send-and-exit)
>> > +(define-key map [remap message-send] 'notmuch-mua-send)
>> 
>> where did the # characters disappear here ?
>> 
>> afaic #' is the recommended way here...

> I'm not sure where to find that recommendation — the Emacs manual and
> information I've found in the wild don't use it for define-key.

In this particular case, around the change #' is used, 
and in change ' is used.

(in some other parts in notmuch elisp source there is only ' used
-- consistency -- in one way or another, would be nice...)

emacs sharp quote   can be used in internet searches to find more info,

then, in

http://www.gnu.org/software/emacs/manual/html_node/elisp/Anonymous-Functions.html


  Special Form: function function-object

  This special form returns function-object without evaluating it. In
  this, it is similar to quote (see Quoting). But unlike quote, it also
  serves as a note to the Emacs evaluator and byte-compiler that
  function-object is intended to be used as a function. Assuming
  function-object is a valid lambda expression, this has two effects:

  When the code is byte-compiled, function-object is compiled into a
  byte-code function object (see Byte Compilation).
  When lexical binding is enabled, function-object is converted into
  a closure. See Closures. 

  When function-object is a symbol and the code is byte compiled, the
  byte-compiler will warn if that function is not defined or might not be
  known at run time. 

  The read syntax #' is a short-hand for using function. 

Tomi
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


Re: [PATCH] emacs: remap send-message and send-message-and-exit

2021-06-04 Thread edef
> >  (defvar notmuch-message-mode-map
> >(let ((map (make-sparse-keymap)))
> > -(define-key map (kbd "C-c C-c") #'notmuch-mua-send-and-exit)
> > -(define-key map (kbd "C-c C-s") #'notmuch-mua-send)
> > +(define-key map [remap message-send-and-exit] 
> > 'notmuch-mua-send-and-exit)
> > +(define-key map [remap message-send] 'notmuch-mua-send)
> 
> where did the # characters disappear here ?
> 
> afaic #' is the recommended way here...
I'm not sure where to find that recommendation — the Emacs manual and
information I've found in the wild don't use it for define-key.
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


Re: [PATCH] emacs: remap send-message and send-message-and-exit

2021-06-02 Thread Tomi Ollila
On Tue, Jun 01 2021, e...@edef.eu wrote:

> All three of C-c C-c,   ,
> and   are bound to message-send-and-exit by
> message.el, but notmuch-mua.el only had an explicit override for the
> keyboard binding. This mostly manifests as confusing Fcc behaviour for
> GUI users.
>
> Patching the bindings for specific keys is rather brittle, since it has
> to be aware of every relevant binding. This patch switches to instead

After committed to repo this is no longer 'patch'. Simple change
is to use 'commit', 'change', 'changeset' -- alternative is not
to write 'This ...' but reword...

> using a remap binding, which turns any binding for message-send or
> message-send-and-exit into a binding for the corresponding notmuch-mua
> command.
> ---
> The previous patch managed to *disappear* the menu item, but while
> figuring out how to make that work correctly, I happened upon a much
> simpler and less brittle solution.
>
>  emacs/notmuch-mua.el | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el
> index bbf059a2..8572aa1b 100644
> --- a/emacs/notmuch-mua.el
> +++ b/emacs/notmuch-mua.el
> @@ -341,8 +341,8 @@ Typically this is added to `notmuch-mua-send-hook'."
>  
>  (defvar notmuch-message-mode-map
>(let ((map (make-sparse-keymap)))
> -(define-key map (kbd "C-c C-c") #'notmuch-mua-send-and-exit)
> -(define-key map (kbd "C-c C-s") #'notmuch-mua-send)
> +(define-key map [remap message-send-and-exit] 'notmuch-mua-send-and-exit)
> +(define-key map [remap message-send] 'notmuch-mua-send)

where did the # characters disappear here ?

afaic #' is the recommended way here...

>  (define-key map (kbd "C-c C-p") #'notmuch-draft-postpone)
>  (define-key map (kbd "C-x C-s") #'notmuch-draft-save)
>  map)
> -- 
> 2.31.1

Tomi
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org