在.org文件中C-c C-e #
可以看到几个org-export-insert-default-template
:
选择后能在org文件头插入一些配置。
我想请教两个问题: 我想设置一个自己的template该怎么做? 能不能让每次新建org文件时自动在文件头插入我的配置?
因为我用org比较多,所以只问了org里该怎么做。刚刚网上查了一下,有提到AutoInsertMode,据说能够依据文件后缀自动插入一些内容,不知道坛里有没有用这个的。
在.org文件中C-c C-e #
可以看到几个org-export-insert-default-template
:
选择后能在org文件头插入一些配置。
因为我用org比较多,所以只问了org里该怎么做。刚刚网上查了一下,有提到AutoInsertMode,据说能够依据文件后缀自动插入一些内容,不知道坛里有没有用这个的。
AutoInsert 完全是在拼字符串,要在里边调个函数还得转义。用起来也死板,比如要区别各种不同类型的 org 文件。必须扩展后缀名:.foo.org,.bar.org,。。。你在 *.foo.org 文件里边不能插入 *.bar.org 的模版。
用 Snippet 就可以随意组合了,在同一篇 org 里插入optsfoo,optsbar,。。。假设你定义了这些。
<sTAB
的那些模版。写一个新的 Emacs Lisp 文件的时我一直用 M-x auto-insert
插入模版,不然复制粘贴加修改会麻烦的多。
看了下 org-export-insert-default-template
函数,它的模版来源其实是:
name backend
--------- ---------------
default ox.el
ascii ox-ascii.el
html ox-html.el
icalendar ox-icalendar.el
latex ox-latex.el
odt ox-odt.el
... ox-....el
扩展起来有点麻烦,还是 Snippet 和 org-structure-template-alist 容易实现,使用上比起 AutoInsert 也更自由。