直接使用orgmode选项导出和查看和odt文件应该是在libre / open office中查看它。但是,到目前为止,我还没有运气好工作;它始终作为emacs中的压缩存档打开。通过插入我的.emacs
(add-to-list 'org-file-apps '("\\.odt\\'" . "xdg-open %s"))
我在访问org文件中的文件链接时正确打开它们,但它似乎不会影响导出和查看选项。我已经考虑过改变org-odt-export-as-odf-and-open
,但未能看到它有所作为。任何帮助,将不胜感激。我再次希望org-odt-export-as-odf-and-open
用xdg-open或libreoffice打开odf,而不是Emacs。
谢谢!
答案 0 :(得分:0)
function you are calling用于导出OpenDocument 公式(.odf
文件),而不是OpenDocument文档文档(.odt
文件):
Export LaTeX fragment as OpenDocument formula and immediately open it. Use `org-odt-export-as-odf' to read LaTeX fragment and OpenDocument formula file.
由于导出的文件没有.odt
扩展名,因此您对org-file-apps
的添加不会对其产生影响。
我没有看到任何内置函数将Org模式文档导出到LibreOffice Writer文件并打开它们,但写起来很简单:
(defun my-org-export-to-odt-and-open ()
(interactive)
(org-open-file (org-odt-export-to-odt)))
答案 1 :(得分:0)
编辑在组织模式列表中提供了更优雅的解决方案,该列表不需要编辑任何打包的组织文件。只需将以下内容添加到.emacs中即可重新绑定系统正在执行的操作:
(setcdr (assq 'system org-file-apps-defaults-gnu ) "xdg-open %s")
<德尔>
当前版本的代码中存在错误。它可以通过编辑ox-odt.el的第97行来修复:
:菜单项
&#39;(?o&#34;导出到ODT&#34;
((?o&#34;作为ODT文件&#34; org-odt-export-to-odt)
(?O&#34;作为ODT文件并打开&#34;
(lambda(a s v b)
(如果是(org-odt-export-to-odt t s v)
(org-open-file(org-odt-export-to-odt nil s v)&#39; system)))))))
删除最后一个'&#39;系统`,所以你有:
:菜单项
&#39;(?o&#34;导出到ODT&#34;
((?o&#34;作为ODT文件&#34; org-odt-export-to-odt)
(?O&#34;作为ODT文件并打开&#34;
(lambda(a s v b)
(如果是(org-odt-export-to-odt t s v)
(org-open-file(org-odt-export-to-odt nil s v)))))))
如果您使用的是编译版本,则可能还需要等效编辑ox-odt.elc。
德尔>
答案 2 :(得分:0)
我尝试过WorldsEndless的解决方案,但它不适用于我,而是使用此变体
(setcdr (assq 'system org-file-apps-defaults-gnu ) '(call-process "xdg-open" nil 0 nil file))