From mboxrd@z Thu Jan 1 00:00:00 1970 From: James TD Smith Subject: Re: RFC: Improvements to org-remember Date: Sun, 30 Nov 2008 01:03:31 +0000 Message-ID: <20081130010331.GF62148@yog-sothoth.mohorovi.cc> References: <20081123232557.GC62148@yog-sothoth.mohorovi.cc> <20524da70811231623p7ae4a929g33a778c8dd59ebc4@mail.gmail.com> <20081124100256.GD62148@yog-sothoth.mohorovi.cc> <20524da70811241129t7eb833b7s3543cc5254940026@mail.gmail.com> <57BAA741-718D-4132-BCC8-78BC8F867B07@uva.nl> <20524da70811241341j70d3562h5ff040bc085f3b9f@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L6ain-0004Nh-IP for emacs-orgmode@gnu.org; Sat, 29 Nov 2008 20:03:37 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L6ail-0004NU-VP for emacs-orgmode@gnu.org; Sat, 29 Nov 2008 20:03:37 -0500 Received: from [199.232.76.173] (port=58636 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L6ail-0004NR-R2 for emacs-orgmode@gnu.org; Sat, 29 Nov 2008 20:03:35 -0500 Received: from 81-86-40-42.dsl.pipex.com ([81.86.40.42]:63605 helo=yog-sothoth.mohorovi.cc) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L6aik-0003mB-SN for emacs-orgmode@gnu.org; Sat, 29 Nov 2008 20:03:35 -0500 Received: from yog-sothoth.mohorovi.cc (localhost [127.0.0.1]) by yog-sothoth.mohorovi.cc (8.14.2/8.14.2) with ESMTP id mAU13Vc0002157 for ; Sun, 30 Nov 2008 01:03:31 GMT (envelope-from ahktenzero@mohorovi.cc) Received: (from ahktenzero@localhost) by yog-sothoth.mohorovi.cc (8.14.2/8.14.2/Submit) id mAU13Vkl002156 for emacs-orgmode@gnu.org; Sun, 30 Nov 2008 01:03:31 GMT (envelope-from ahktenzero@mohorovi.cc) Content-Disposition: inline In-Reply-To: <20524da70811241341j70d3562h5ff040bc085f3b9f@mail.gmail.com> 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: emacs-orgmode@gnu.org Hi Samuel, I wasn't expecting this many ideas, thanks. There are some great suggestions here, though I think some of them are outside the scope of what I am planning on doing. On 2008-11-24 14:41:00(-0700), Samuel Wales wrote: > + respect pop-up-windows Could you explain this in more detail? > + if the target file for org-remember is already known use the control > variables from that file that way you can have your todo sequence available I'm definately adding this. Perhaps there should also be a parameter to set the todo keywords to use for templates which don't have a known target. > + if org-remember does not recognize the type, abort completely Personally I'd prefer it to keep asking for a valid template if you enter a character that doesn't correspond to any of the templates as most of the time I do that I've hit the wrong key. You do know you can abort at the template selection stage with C-g? > + org-remember-templates takes a character > can it take a function key? It would be possible to add this. Do you specifically want to use the F-keys, or have you just run out of keys for templates? I'm planning on adding two-stage selection for remember templates, which will make it possible to have many more templates. > + org-remember should be reentrant > able to call itself from inside itself if you have a note you want to add > that is not related to the one you are adding. This is a limitation of remember itself, not the org remember handler. It would be useful to be able to have multiple remember sessions running at once. > + emacs-w3m tight integration with org-mode > - might be interesting to use an org-mode file to store bookmarks. this > would require changing the way bookmarks are added, to store them in a way > similar to org-remember. I like the idea of using org-mode to store bookmarks. I use org-mode to keep track of things I want to read online, using a remember template '("Web reading" ?w "* TOREAD %^L\n%U %k\n%? " "~/Personal/Web.org" "Web sites to read") which I use to add items to my reading list. I also have the following in my .emacs: ,----[ link description function ] | (defun ahkt-link-description (link desc) | "Link description generator for orgmode" | (cond ((string-match "https?:" link) | (with-temp-buffer | (w3m-retrieve link) | (w3m-region (point-min) (point-max)) | (if (string= "text/html" (w3m-content-type link)) | (replace-regexp-in-string "[ \t]+" " " | (replace-regexp-in-string | "\\(\n\\| \\)" "" | (w3m-current-title)))))) | ((string-match "file:\\([^:]+\\)::\\(.+\\)" link) | (let ((search (match-string-no-properties 2 link)) | (filename | (car (last | (split-string (match-string-no-properties 1 link) "/"))))) | (format "%s: %s" filename search))) | ((string-match "file:\\([^:]+\\)" link) | (car (last (split-string (match-string-no-properties 1 link) "/")))) | (t (or desc link)))) | | (setq org-make-link-description-function 'ahkt-link-description) `---- which fills in the descriptions for links with the title from the retrieved web page. > - Perhaps antenna can also be integrated with org-mode. > > + org merge org-annotate-file with remember code > to allow annotating anything > > also have a hook for opening files and w3m pages etc. that will print in the > minibuffer "this file/page/directory is annotated. press ... to see the > annotation". Have you looked at org-registry.el in contrib? The `org-registry-show' function will list any org files which have links to the current buffer. > + brainstorm: support asking for the template after the note was entered. > > this might complicate things too much. > > this is a tricky one to design, but the philosophy is that the time between > having an idea and entering it should be minimal. choosing the template type > is a cognitive burden before you enter the idea. > > so dedicate a remember shortcut to the concept of "let me enter this now". > c-c c-c, it asks you details like is this a todo item? and which file does > it go to? > > you would have a remember template that allows for other remember templates > to be chosen after you enter the note. > > ideally, it works like this: > > 1. call org-remember like that > 2. enter note > 3. c-c c-c > 4. choose whether it's a note, journal, or shopping item > 5. if it's note or journal, choose whether it's todo > 6. if it's note or journal, choose tags (RET for none) > 7. show completed buffer > 8. y to accept; n to edit Personally I don't find selecting a template before making an entry a problem, but I can see what ypu're getting at. I think I can implement something which will do what you want. Suppose you have a set of templates as below: ("Note" ?n "* %^s %i%? %^g" "Notes.org" top) ("Journal" ?j "* %^s %u %^g\n%i%u%?" "Journal.org" bottom) ("Shopping" ?s "* %i%?" "Shopping.org" bottom) where %^s is a new expansion which allows entering a todo keyword. Currently if you call org-remember in the remember buffer, it prompts you for a template again and applies it, which wipes out everything you have entered. If this was changed so that the contents of the remember buffer are stored, and inserted into appropriate places in the new template, it would be possible to type your idea into the remember buffer, and then apply a template to it, provided the template contains suitable expansions. So the process would be (with org-remember bound to C-c m): 1. C-c m RET to run org-remember and select no template. 2. Enter your idea. 3. C-c m to run org-remember again. 4. Select the appropriate template. 5. Fill in any prompts for todo keywords and tags, or leave blank as appropriate. 6. C-c C-c to file the note. Would that be suitable? James -- |---|