Re: Loading a notmuch email buffer in Emacs from the command line
On Sat, Feb 20, 2016 at 12:16:33PM +0200, Tomi Ollila wrote: > On Sat, Feb 20 2016, Neeum Zawan wrote: > > > > Is there a way (e.g. with emacsclient) to load up a particular email > > thread or email message buffer from the command line? > > quick test yields that at least > > emacs -f notmuch --eval '(notmuch-search "id:87egc8nhdh@nawaz.org")' > > works (maybe not exactly as desired, but based on that more should > be able to be achieved with moderate ease...) I use the attached script to open the mail I'm reading in Mutt in Emacs so that I can link to it in my Org mode notes, etc. You could write a function that calls the required capture templates and use it in place of the call to notmuch-show. Probably you also want to remove the GNU Screen related stuff (call to screen select and the check for $STY). Hope this helps, -- Suvayu Open source is the future. It sets us free. #!/bin/bash # set -o xtrace # FIXME: handle cases when not invoked from within screen declare -a emacsen=(/tmp/emacs$UID/*) screens=(/var/run/screen/S-$USER/*) # NOTE: look at screen -Q for querying # FIXME: cleaner way of switching to threads (something like mutt-search) declare thread=$1 [[ -n $STY ]] && { \ screen -X select nwc; # emacsclient window name for me # NB: reading from PIPE; and it's ok to remove all <, >, or # spaces, they are not allowed in a Message-ID msgid=$(formail -c -x Message-ID | sed -e 's/[<> ]//g') if [[ -n $thread ]]; then query=$(notmuch search --output=threads -- "id:$msgid") emacsclient --eval "(notmuch-tree \"$query\")" else query="id:$msgid" emacsclient --eval "(notmuch-show \"$query\")" fi } ___ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch
Re: Loading a notmuch email buffer in Emacs from the command line
On Sat, Feb 20 2016, Neeum Zawan wrote: > Hi, > > Is there a way (e.g. with emacsclient) to load up a particular email > thread or email message buffer from the command line? quick test yields that at least emacs -f notmuch --eval '(notmuch-search "id:87egc8nhdh@nawaz.org")' works (maybe not exactly as desired, but based on that more should be able to be achieved with moderate ease...) > > Also, for those familiar with Org mode, I'd like to do something > similar: Suppose I have the ID of an email. Can I, from the command > line, launch a capture template with a prepopulated link to the notmuch > message? > > The rationale: I'd like to switch to using alot for reading emails as > opposed to the Emacs interface. However, there will be times where I'd > like to make Org mode notes about an email or view it within Emacs. So > I'd like to set up a command from alot to open it in Emacs. > > -- > A neutrino walks into a bar. The bartender asks him if he wants > anything to drink. "No thanks, just passing through." > ___ > notmuch mailing list > notmuch@notmuchmail.org > https://notmuchmail.org/mailman/listinfo/notmuch ___ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch
Loading a notmuch email buffer in Emacs from the command line
Hi, Is there a way (e.g. with emacsclient) to load up a particular email thread or email message buffer from the command line? Also, for those familiar with Org mode, I'd like to do something similar: Suppose I have the ID of an email. Can I, from the command line, launch a capture template with a prepopulated link to the notmuch message? The rationale: I'd like to switch to using alot for reading emails as opposed to the Emacs interface. However, there will be times where I'd like to make Org mode notes about an email or view it within Emacs. So I'd like to set up a command from alot to open it in Emacs. -- A neutrino walks into a bar. The bartender asks him if he wants anything to drink. "No thanks, just passing through." ___ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch