From: Aahz <aa...@py...> - 2010-05-01 23:44:41
|
On Sat, May 01, 2010, Roberto Alsina wrote: > > Has anyone written a directive to insert the output of an external command? Yes. Oh, you wanted something more concrete? I wrote the following code about six years ago, so it probably needs sprucing up (I'll leave you to guess what it does ;-): def include_output(name, arguments, options, content, lineno, content_offset, block_text, state, state_machine): document = state_machine.document dirname = _getDocDir(document) fname = os.path.join(dirname, arguments[0]) cmd = os.environ['PYTHON'] + ' ' + fname f_input, f_output = os.popen4(cmd) output = f_output.read() f_output.close() return [nodes.literal_block(output, output)] include_output.arguments = (0, 1, 0) Side note: this probably belongs on the docutils-develop list. -- Aahz (aa...@py...) <*> http://www.pythoncraft.com/ "It is easier to optimize correct code than to correct optimized code." --Bill Harlan |