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