Pandoc LaTeX 转 epub,包含词汇表、页面注释、带链接的索引和其他功能

Pandoc LaTeX 转 epub,包含词汇表、页面注释、带链接的索引和其他功能

我有一个 LaTeX 文档,需要编译多次才能包含所有目录、参考文献、词汇表、页面注释、总索引和作者索引,以及书中位置的链接。我可以创建具有正确格式和链接的 pdf,但当我使用 pandoc 将其转换为 epub 时,我只有文本和标题。我查看了文档中一些关于如何添加其他内容的示例,但不清楚如何继续,而且我在搜索中还没有找到任何东西。

据我了解,我需要为该过程创建一个模板文件。我不确定该怎么做。一些例子会很好。出于某种原因,当我从命令行运行 pandoc 时,它不喜欢我的某些环境,但如果我在 emacs 中运行它,它至少会创建带有文本的 epub 文档,缺少我设置的小环境。我使用 ArArA 来设置 xelatex、biber 和 makeglossaries 的编译过程。一切都编译成 pdf 时运行良好。

也许对 ArArA 的一个功能建议是包含带有选项的 pandoc。那会很好,但是命令提示符示例也可以。如果我知道 pandoc 命令,我相信我可以为其创建一个 ArAra yaml 文件。如果有人知道一个好的链接,那么使用 pandoc 的更好的指南或教程会很有帮助。或者有更好的程序吗?Pandoc 似乎是我发现的最好的。也许有人可以提供一些关于如何进行的线索。

以下是pdf的编译过程:

% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = arara
% arara: xelatex
% arara: biber
% arara: makeglossaries
% arara: xelatex
% arara: xelatex: { synctex: yes }

% some of the header
\documentclass[ebook, showtrims, 11pt, draft]{memoir}

%%%%%INDEX
\usepackage[makeindex]{imakeidx}
\usepackage{multind}
\makeindex[intoc, name=general, title=General Index, columns=2]
\makeindex[intoc, name=aut,title=Authors Index,columns=2]

%%%%%BIBLIOGRAPHY
\usepackage[style=italian]{csquotes}

\usepackage[natbib,style=philosophy-modern,backend=biber, backref]{biblatex}
\addbibresource{references.bib}

%%%PAGENOTE
\makepagenote
\notepageref

%HYPERREF
\usepackage[unicode=true, bookmarks=true, bookmarksnumbered=false,
bookmarksopen=false, breaklinks=false, pdfborder={0 0 1}, colorlinks=false]
 {hyperref}
...

\backmatter
\clearpage
\printpagenotes \printbibliography \printglossaries
\printindex[general] \printindex[aut]
\end{document}

现在我看了一下,我不确定是否需要对 xelatex 进行额外的编译。我肯定在某个时候把它放进去了。我喜欢 ArArA,因为当我在处理文档时,我可以轻松禁用某些编译过程,而不必经历整个过程。

理想情况下,我只想将如下几行添加到 ArArA 部分:

% arara: pandoc: { ..options, epub, html, etc... }
% arara: pandoc: { ..options, html, etc... }

我可以通过添加这个来关闭它们 -

-% arara: pandoc: { ..options, epub,, etc... }}
-% arara: pandoc: { ..options, html, etc... }

然后有这些:

 % arara: clean: { files: [ *.aux, *.bbl ] }
 % arara: clean: { files: [ *.bcf, *.cod ] }
 % arara: clean: { files: [ *.blg, *.lof ] }
 % arara: clean: { files: [ *.lot, *.out ] }
 % arara: clean: { files: [ *.toc, *.log ] }
 % arara: clean: { files: [ *.acr, *.alg ] }
 % arara: clean: { files: [ *.ent, *.glg ] }
 % arara: clean: { files: [ *.glo, *.gls ] }
 % arara: clean: { files: [ *.nlg, *.acn ] }
 % arara: clean: { files: [ *.xdy, *.idx ] } 
 % arara: clean: { files: [ aut.ilg, aut.ind ] }
 % arara: clean: { files: [ general.idx, general.ilg ] }
 % arara: clean: { files: [ general.ind, *.run.xml ] }

只需一个 ArArA 命令,即可轻松控制整个编译过程。使用文档顶部的一个键即可打开或关闭。在较长的文档中,我可能不需要生成所有内容或电子书,只是为了预览 PDF 中的几个部分,但如果我需要,它可以轻松在那里找到它。

那么,当我保存对 .tex 文件的更改时,最好运行一个 araramk 来执行编译。这比重新配置和运行不同的命令以进行不同的编译方式要容易得多。我可以在帮助下进行操作,但我不知道使用 pandoc 的正确方法以及现有选项已经提供哪些功能。

我在 stack overflow 上发布了一个关于使用 latex 与 org-mode 纠缠部分的 emacs 问题。

https://stackoverflow.com/questions/35834715/emacs-org-mode-kill-trailing-space-on-line-and-kill-subtree-tell-if-it-is-curre

我认为使用 arara 或代替 arara 为各种编译配置创建一些 emacs 命令会更容易(如果我可以在每次构建完成后连续运行它们,并在一切顺利时输出简单的日志)。现在我想起来,这比跳到顶部并禁用我不想运行的编译操作要容易一些。以前在文件顶部使用 arara 很容易,如果我想更改它,跳到顶部勾选我想运行的那些。

也许我可以将不同的 arara 编译配置纠缠在源块中,然后使用宏打开,然后运行 ​​org-babel-tangle。当 .tex 文件从那里更改时,我将设置一些东西来监视文件以触发其上的 arara 命令。使用 emacs 会更好。如果我想将其更改为使用不同的选项进行编译,则无需跳转到顶部,只需在文档中使用不同的按键或命令即可。但我不会经常更改它们,所以这可能有点过头了。不过,我喜欢在 emacs 中做这样的事情。我仍然无法使用正确的选项创建 pandoc 命令,这是我生活中的新目标。哈哈

非常感谢您提供的任何帮助。

我没有看到 pagenotes 的标签。

相关内容