[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Orgmode] My Python solution to generating unique Ids in headlines
From: |
Charles Cave |
Subject: |
[Orgmode] My Python solution to generating unique Ids in headlines |
Date: |
Thu, 05 Mar 2009 10:20:13 +1100 |
Recently I asked about a method of inserting a unique number in a
headline. My requirement is to be able to uniquely identify a
particular headline when exporting data to another system
(ListPro on Palm/Windows).
I settled on using a small Python script, since I am not
a Lisp programmer.
1. I created a text file todononum.txt which contains
the next number to use.
2. I created the following script to read this file, return the
next available number formatted in a unique, easy to find string,
for example [#310].
# script next_todo.py
import sys
nextnum_file = "C:/charles/gtd/todonum.txt"
try:
f = open(nextnum_file, 'r')
except IOError:
print "Unable to open %s. Program terminating." % nextnum_file
sys.exit(1)
val = int(f.readline()) + 1
f.close()
of = open(nextnum_file, 'w')
of.write("%d\n" % val)
of.close()
print "[#%s]" % val
3. I created a one line batch file nextnum.bat (I'm on Windows!)
containing:
python c:/charles/gtd/next_todo.py
4. In org-mode I insert the unique id by positioning the
cursor at the end of the headline text, then entering the command
ESC-1 ESC-! nextnum RET Ctl-D
The Ctrl D is needed to remove a carriage return (not sure why it is
there.
Can someone give me Lisp code equivalent of
the command sequene above? I know it is something to do
with (shell command .... )
The end result now looks like
*** Post to org-mode list about next sequential [#315] :COMPUTER:
Once I have Lisp code to implement the command sequence I will have
a satisfactory solution to generating the unique id when I need it.
-------------------------------------------
Charles Cave
Sydney, NSW, Australia
Email: address@hidden
Follow me on Twitter: www.twitter.com/ozcaveman
-------------------------------------------