org-babel新语言

时间:2012-05-01 22:47:48

标签: emacs org-mode org-babel

我想通过stdin通过二进制文件运行一些代码并粘贴输出。语言是foma,有没有快速的方法,或者我必须编写自己的定义?我试过了http://sprunge.us/DjOV,但这给了我一个if: Wrong type argument: stringp, (:colname-names)

1 个答案:

答案 0 :(得分:5)

如果foma可以运行一个文件(而不是STDIN),那么简单地评估以下函数定义应该可行。这会将body写入临时文件,在该文件上调用foma并返回输出(从STDOUT收集)。

(defun org-babel-execute:foma (body params)
  "Execute a block of Foma code with org-babel."
  (message "executing Foma source code block")
  (org-babel-eval "foma" body))

如果foma坚持通过STDIN获取输入,那么您可以将上面的foma替换为foma-helper,其中foma-helper是一个类似

#!/bin/sh
cat $1|foma

希望这有帮助