[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] RFC: Improvements to org-remember

From: James TD Smith
Subject: Re: [Orgmode] RFC: Improvements to org-remember
Date: Sun, 30 Nov 2008 01:03:31 +0000
User-agent: Mutt/1.5.18 (2008-05-17)

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

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

> + 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

,----[ 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

>   - 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 
6. C-c C-c to file the note.

Would that be suitable?


|-<James TD Smith>-<email/address@hidden>-|

reply via email to

[Prev in Thread] Current Thread [Next in Thread]