平时习惯用 org-babel-tangle
管理各种乱七八糟的配置文件
每次在其他机器 pull 下改动之后还得手动打开 emacs 去 tangle,然后再关闭,有点麻
有没有啥黑科技可以不打开 gui/tui emacs 就运行 emacs 函数?
平时习惯用 org-babel-tangle
管理各种乱七八糟的配置文件
每次在其他机器 pull 下改动之后还得手动打开 emacs 去 tangle,然后再关闭,有点麻
有没有啥黑科技可以不打开 gui/tui emacs 就运行 emacs 函数?
确实可以,emacs 有命令行参数支持,但我没用过, 你问下 chatgpt.
emacs --batch -l ~/.emacs.d/init.el --eval “(org-babel-tangle-file "path/to/your/config.org")”
我之前就是在命令行里进行批量测试的,emacs 本身可以作为命令行的命令使用。你可以参考以上命令。
靠谱!还真有内置,以后到新机器上直接 make 启动就好,这太爽了哈哈哈
emacs --batch emacs.org -f org-babel-tangle
关键词:emacs batch mode
官方链接:https://www.gnu.org/software/emacs/manual/html_node/elisp/Batch-Mode.html
说起来,之前我闲着没事去翻公司的EDA文档源码,发现全是自动生成的org文件。IP核的信号引脚说明,一个文件十几万行表格,用GUI打开看很卡。构建脚本就是拿emacs batch mode编译,也不知道这上百份文档编译一次要花多久,不知是哪位上古大神的手笔……
好…狠
那我就放心地把大部分配置放在一个文件里了(不是)
我习惯用写 build.ninja 。让 ninja 批量 emacs, 很方便的。
rule target
command = emacs --batch -l ~/.emacs.d/init.el --eval "( ... )"
...
很好奇,为啥要用 org 呢,客户难道都用 Emacs 吗?而且这么大表格,Emacs 打开也很卡呀
因为org方便从hdl代码批量生成表格。用org构建出pdf,再交付给客户
这是把 emacs
当作类似 rmd/quarto
那种工具了,org 不是最终交付产物,客户无感知