# HG changeset patch # User Jeff Hammel # Date 1366326849 25200 # Node ID dc20e1fa93d0b1f9a68accfad62791793f62109f # Parent 7ffc6b1821f81a5911c5fe1a68342694568042f6 add a thing to make a temporary buffer diff -r 7ffc6b1821f8 -r dc20e1fa93d0 python/tmpbuffer.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/python/tmpbuffer.py Thu Apr 18 16:14:09 2013 -0700 @@ -0,0 +1,28 @@ +#!/usr/bin/env python + +# from http://k0s.org/hg/bitsyblog/file/5c04cf601aba/bitsyblog/blogme.py + +import os +import subprocess +import tempfile + +def tmpbuffer(editor=None): + """open an editor and retreive the resulting editted buffer""" + + if not editor: + editor = os.environ.get('EDITOR') + if not editor: + raise Exception("tmpbuffer: editor not supplied and EDITOR not defined") + tmpfile = tempfile.mktemp(suffix='.txt') + cmdline = editor.split() # XXX shlex would be more powerful + cmdline.append(tmpfile) + edit = subprocess.call(cmdline) + buffer = file(tmpfile).read().strip() + os.remove(tmpfile) + return buffer + +if __name__ == '__main__': + # purely for testing/illustration purposes + contents = tmpbuffer() + print contents +