3

我想使用emacsclient -e "command"将 org 模式文件转换为 html 文件,例如:

emacsclient -e "(org-html-export-as-html ./mynote.org)" > ./mynote.html

希望它将输出保存到 mynote.html 文件。
但我还不熟悉elisp。实际上,org-html-export-as-html有很多参数我不知道如何使用它。

4

2 回答 2

3

A/ 你可以“自己”做:

emacsclient -e "(progn (find-file \"file.org\") (org-html-export-to-html) (kill-buffer))" 

警告:要使其正常工作,您应该使用 Emacs 启动

emacs --daemon 

或者如果您已经运行了 Emacs,请键入M-x server-start

B/ 使用 github 包

https://github.com/nhoffman/org-export

它创建了一些编译的 lisp 可执行文件:

  • 组织导出 html
  • 组织出口纠结
  • ...

但是我的个人经验是命令行方法更快。

C/ 奖金,纠缠文件

您可以使用相同的命令行方法来处理文件:

emacsclient -e "(org-babel-tangle-file \"file.org\")"

更新,提供有关 C/ 的更多详细信息

“缠结”是从文学编程中创造出来的一个术语

文学编程 (LP) 工具用于从文学源文件中获取两种表示形式:一种适合由计算机进一步编译或执行,即“缠结”的代码,另一种用于作为格式化文档查看,称为“编织” “来自文学来源。 [3] 虽然第一代有文化的编程工具是特定于计算机语言的,但后来的那些与语言无关,并且存在于编程语言之上。

您有一个独特的文件:

#+TITLE: My Org file

* Configuration

#+BEGIN_SRC bash :tangle yes :tangle "tangled.sh" :shebang "#!/bin/bash"
echo "This is my configuration script"
echo "..do something interesting here.."
#+END_SRC

您可以通过 html 导出它(A/ 或 B/ 部分),但也可以导出它包含的代码,这里是一个 shell 脚本。在 Emacs 中,这可以使用我在C/部分C-c C-v t中提供的命令来完成,或者从 shell中完成。结果是文件的自动生成。tangled.sh

您可以在这里查看:Babel:Org-mode 中的活动代码以获取更多详细信息。

于 2018-01-05T21:27:56.437 回答
0

恕我直言,正确的方法应该是

emacsclient -e "(org-html-publish-to-html '()  \"file.org\" \".\")"

但它抱怨*ERROR*: ‘org-publish-cache-get’ called, but no cache present- 对我来说,它看起来像 Org-mode 中的一个错误

于 2018-01-05T08:57:43.357 回答