comparison python/dmenu.py @ 297:618db1b1f34b

dmenu + emacs, baby
author Jeff Hammel <jhammel@mozilla.com>
date Sat, 11 May 2013 10:00:48 -0700
parents 8f92aa15406f
children
comparison
equal deleted inserted replaced
296:ee3c1b65d6d1 297:618db1b1f34b
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 2
3 import optparse 3 import optparse
4 import os 4 import os
5 import shlex
5 import subprocess 6 import subprocess
6 import sys 7 import sys
7 8
8 def choose_file(directory, dmenu='dmenu', 9 def choose_file(directory, dmenu='dmenu',
9 args=('-i', '-nb', 'black', '-nf', 'white', 10 args=('-i', '-nb', 'black', '-nf', 'white',
36 help="call this proram with the result") 37 help="call this proram with the result")
37 options, args = parser.parse_args(args) 38 options, args = parser.parse_args(args)
38 chosen = choose_file(options.directory) 39 chosen = choose_file(options.directory)
39 if chosen: 40 if chosen:
40 if options.executable: 41 if options.executable:
41 pass 42 # TODO: extract this pattern (see ims journal.txt)
42 print chosen 43 command = shlex.split(options.executable)
44 executable = command[0]
45 command.append(chosen)
46 os.execlp(executable, *command)
47 else:
48 print chosen
43 else: 49 else:
44 sys.exit(1) 50 sys.exit(1)
45 51
46 if __name__ == '__main__': 52 if __name__ == '__main__':
47 main() 53 main()