From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sebastian Rose Subject: Re: org-protocol://remember:// question Date: Fri, 03 Apr 2009 14:06:35 +0200 Message-ID: <87ab6yym9g.fsf@kassiopeya.MSHEIMNETZ> References: <87ocvfh7lc.fsf@thinkpad.tsdh.de> <8763hn48gj.fsf@kassiopeya.MSHEIMNETZ> <1B37177B-3E1E-41CF-BAB7-85EB815432F1@gmail.com> <87ocvfgclq.fsf@kassiopeya.MSHEIMNETZ> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Lpi7M-0002QF-Db for emacs-orgmode@gnu.org; Fri, 03 Apr 2009 08:03:28 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Lpi7G-0002OS-BN for emacs-orgmode@gnu.org; Fri, 03 Apr 2009 08:03:27 -0400 Received: from [199.232.76.173] (port=45664 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Lpi7F-0002O7-Oh for emacs-orgmode@gnu.org; Fri, 03 Apr 2009 08:03:21 -0400 Received: from mail.gmx.net ([213.165.64.20]:50464) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Lpi7E-0001nB-Hs for emacs-orgmode@gnu.org; Fri, 03 Apr 2009 08:03:21 -0400 In-Reply-To: (Carsten Dominik's message of "Fri, 3 Apr 2009 09:47:47 +0200") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Carsten Dominik Cc: Tassilo Horn , emacs-orgmode@gnu.org --=-=-= Ahaaa, thanks Carsten! That's good. So this here will do: --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/lisp/org-protocol.el b/lisp/org-protocol.el index 1593764..b368602 100644 --- a/lisp/org-protocol.el +++ b/lisp/org-protocol.el @@ -335,23 +335,18 @@ Now template ?b will be used." (match-string 1 url))) (title (cadr parts)) (region (caddr parts)) - orglink) + orglink + remember-annotation-functions) (setq orglink (org-make-link-string url title)) - (org-store-link-props :type type - :link url - :region region - :description title) (setq org-stored-links (cons (list url title) org-stored-links)) - ;; FIXME can't access %a in the template -- how to set annotation? - (raise-frame) (kill-new orglink) - (set-buffer b) - (insert region) - (mark-whole-buffer) - (org-remember nil (string-to-char template)) - (kill-buffer b)) - (message "Org-mode not loaded.")) + (org-store-link-props :type type + :link url + :description title + :initial region) + (raise-frame) + (org-remember nil (string-to-char template)))) nil) --=-=-= ...which is much simpler than before :) Best, Sebastian Carsten Dominik writes: > On Apr 2, 2009, at 8:00 PM, Sebastian Rose wrote: > >> Carsten Dominik writes: >>> Hi Sebastian, Tassilo, >>> >>> this can be easily fixed. >>> >>> Org-protocol may add arbitrary properties to the link properties. >>> For example, after a call >>> >>> (org-store-link-props :type type >>> :link url >>> :region region >>> :description title >>> :hello "Hello world") >>> >>> a template could use "%:hello" to access and insert this >>> string. I have just changed org-remember so that the >>> property :annotation will be the default for %a. >>> Sebastian, could you please add >>> >>> :annotation (concat "[[" url "][" title "]]") >>> >>> or something similar to the call to org-store-link-props? >>> >>> Also, feel free to add any other properties that might >>> provide useful information for a template. >> >> >> Doesn't that apply to certain link types only? >> >> Also, the situation seems to be different for org-protocol-remember. I >> think it's the way remember is used inside that function that has to be >> changed. >> Maybe I can figure that out. > > Sorry my mistake. Indeed, the way you call org-remember > overwrites the link property list. What you need to do is this: > > (let (remember-annotation-functions) > (org-remember nil (string-to-char template))) > > Now, another advantage of doing it like this is that you > do not even have to create a temporary buffer from which you > launch org-remember. Right now you do this, only for > the effect to get the region inserted for %i. > > Much easier will not be to set the :initial property in the > call to org-store-link-props. > > Thus, don't even create the *org-protocol* buffer and then do this: > > (org-store-link-props :type type > :link url > :annotation (concat "[[" url "][" title "]]") > :initial (or region "") > :description title) > (setq org-stored-links > (cons (list url title) org-stored-links)) > (raise-frame) > (kill-new orglink) > (let (remember-annotation-functions) > (org-remember nil (string-to-char template))) > > I hope that this will take care of it. > > - Carsten > -- Sebastian Rose, EMMA STIL - mediendesign, Niemeyerstr.6, 30449 Hannover Tel.: +49 (0)511 - 36 58 472 Fax: +49 (0)1805 - 233633 - 11044 mobil: +49 (0)173 - 83 93 417 Email: s.rose@emma-stil.de, sebastian_rose@gmx.de Http: www.emma-stil.de --=-=-= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode --=-=-=--