emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: chris <inkbottle007@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: looking for examples of `org-capture-templates` working with `org-protocol://capture`
Date: Mon, 31 Jan 2022 05:23:36 +0100	[thread overview]
Message-ID: <10223357.zeXQE78KxU@pluto> (raw)
In-Reply-To: <4933995.AmxDJHG10n@pluto>

[-- Attachment #1: Type: text/plain, Size: 3043 bytes --]

On Monday, 31 January 2022 04:07:01 CET chris wrote:
> On Monday, 31 January 2022 03:30:41 CET chris wrote:
> > Hi,
> > When you do
> > `emacsclient "org-protocol://capture?
> > template=X&url=URL&title=TITLE&body=BODY"`
> > I don't understand at all how you make use of `url` `title` and `body` in
> > `org- capture-template`.
> > I understand there is some sort of "encoding" that doesn't make use of the
> > keywords `url` `title` or `body`, but it's dense.
> > There are no indications of how to do that here:
> > https://orgmode.org/manual/The-capture-protocol.html[1]
> > I haven't found any example that I've been able to reproduce in the whole
> > web. I've spent hours on the documentation and the source code of
> > https://github.com/emacs-mirror/emacs/blob/master/lisp/org/org-protocol.el
> > [2 ] And I have absolutely no idea of how to use `url` `title` and `body`
> > in `org-capture- template`.
> 
> The last example in https://blog.jethro.dev/posts/capturing_inbox/[1],
> namely: ```emacs-lisp
> (setq org-capture-templates
>       `(("l" "org-protocol-capture" entry
>          (file "~/path/inbox.org")
>         "* TODO [[%:link][%:description]]\n\n %i"
> 
>         :immediate-finish t)))
> 
> ```
> Seems to work consistently with:
> `xdg-open "org-protocol://capture?template=l&url=URL$(date
> --iso-8601=s)&title=TITLE$ (date --iso-86
> 01=s)&body=BODY$(date --iso-8601=s)"`
> 
> 
> Provided I have opened at least one org buffer before hand, otherwise it
> opens a buffer named
> `"org-protocol://capture?template=l&url=URL&title=TITLE&body=BODY" ` at
> what point it can get messy. Probably I have to "start" somehow "org-mode"
> first, and it doesn't get enough started from my `init.el`.
> 

So, reverse-engineering the example I've eventually found the relevant points of the 
documentation:

https://orgmode.org/worg/org-contrib/org-protocol.html[1]
%i'
    will be replaced by the selected text in your browser window if any.
In addition, you may use the following placeholders in your template:
Placeholders     Replacement
%:link     URL of the web-page
%:description     The title of the web-page
%:initial     Selected text.


https://orgmode.org/manual/Template-expansion.html[2]

So, not so many examples, that's all.

So I've rewritten Jethro's example using `%:initial` because it's easier to read:


```emacs-lisp
(setq org-capture-templates
      `(("l" "org-protocol-capture" entry
         (file "~/path/inbox.org")
        "* TODO [[%:link][%:description]]\n\n %:initial"
        :immediate-finish t)))
```

> 
> Goal is to have the capturing work in the background, with emacs started as
> a daemon, but with no opened emacsclient frame:
> capture, simply, silently, unobtrusively.
> 
> > Chris
> > 
> > --------
> > [1] https://orgmode.org/manual/The-capture-protocol.html
> > [2]
> > https://github.com/emacs-mirror/emacs/blob/master/lisp/org/org-protocol.el
> 
> --------
> [1] https://blog.jethro.dev/posts/capturing_inbox/



--------
[1] https://orgmode.org/worg/org-contrib/org-protocol.html

[-- Attachment #2: Type: text/html, Size: 9295 bytes --]

  reply	other threads:[~2022-01-31  4:24 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-31  2:30 chris
2022-01-31  3:07 ` chris
2022-01-31  4:23   ` chris [this message]
2022-02-03 12:57     ` Max Nikulin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=10223357.zeXQE78KxU@pluto \
    --to=inkbottle007@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).