emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Frequently used files/headings
@ 2010-04-29 15:47 Nathan Neff
  2010-05-06  7:06 ` Nathan Neff
  0 siblings, 1 reply; 7+ messages in thread
From: Nathan Neff @ 2010-04-29 15:47 UTC (permalink / raw)
  To: emacs-orgmode

Currently, I'm using org-id-get-create to generate a unique ID
for headings that I frequently go to in org-mode.

* Foo
:PROPERTIES:
:ID: F3B14102-A66D-408C-8833-1F9CF7E5047C
:END:

Then, I copy the newly created ID to the kill-ring,
and paste it into a block like this:

(global-set-key (kbd "<f6> f") (lambda () "Goto Foo Org File"
    (interactive)
    (org-id-goto "F3B14102-A66D-408C-8833-1F9CF7E5047C")))

This will map F6-f to jump to Foo.

I know that there are many ways to navigate org-files, but using the
ID is great because it requires only two keystrokes.

This works pretty good, except I'd like to improve three things:

1)  I'd like to be able to see a menu of where I've mapped my shortcuts
2)  I'd like to simplify the creation of these IDs and shortcut keys.
3)  I have about 10 quick-keys now, so I have 30 lines of very similar code

I'm sensing an org-babel type approach where I could define an org-mode
table like this:

| Name | Key       | ID |
| Foo    | "<f6> f"  | 123456779 |

Then, I could loop through the table, and for each row, I could
run this code:

(global-set-key (kbd <COLUMN 2>) (lambda () <COLUMN 1>
    (interactive)
    (org-id-goto <COLUMN 3>)))

Before I do something like this, I'd like to know if anyone's done something
similar or if anyone wants to chime in.

Thanks!

--Nate

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2010-05-11 15:42 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-29 15:47 Frequently used files/headings Nathan Neff
2010-05-06  7:06 ` Nathan Neff
2010-05-10 11:35   ` Štěpán Němec
2010-05-10 20:48     ` Nathan Neff
2010-05-10 21:08       ` Stephan Schmitt
2010-05-10 21:35         ` Štěpán Němec
2010-05-11 15:42           ` Nathan Neff

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).