如何将 biblatex/authoryear-icomp 数据导出为 HTML?

如何将 biblatex/authoryear-icomp 数据导出为 HTML?

六年前有人问了这个问题但没有得到任何答案,他的问题也被关闭了。现在我也有同样的问题要问:

我已经为即将出版的论文准备了 BIB 数据(biblatex 格式),并且想将书目参考列表放在出版商的网站上。

因此,我只需要相同的输出(斜体、粗体、拉丁文、希腊文、西里尔文、阿拉伯文、日文、中文和马拉雅拉姆文脚本),采用 HTML 格式,使用与 PDF(authoryear-icomp)中相同的 biblatex 样式,例如以下条目:

@BOOK{bib243,
   AUTHOR = {{al-Qalqašandī, Abū l-ʿAbbās ʾAḥmad ibn ʿAlī}},
   AUTHOR_ORIGINAL = {{القلقشندي أبو العبّاس أحمد بن علي بن أحمد}},
   AUTHOR+AN = {1=ar-Arab},
   TITLE = {{{\amirismall\beginR صبح الأعشى في صناعة الإنشاء\endR} [The Morning of the Dim-Sighted [Treatise] on the Art of Composition]}},
   PUBLISHER = {{\amirismall\beginR الهية العامة للكتاب\endR} [al-Hayʾa l-ʿāmma li-l-Kitāb]},
   ADDRESS = {Cairo},
   YEAR = {1985},
}

应该变成authoryear-icomp

<li>al-Qalqašandī, Abū l-ʿAbbās ʾAḥmad ibn ʿAlī [القلقشندي أبو العبّاس أحمد بن علي بن أحمد] (1985).
صبح الأعشى في صناعة الإنشاء <i>[The Morning of the Dim-Sighted [Treatise] on the Art of Composition]</i>.
Cairo: الهية العامة للكتاب [al-Hayʾa l-ʿāmma li-l-Kitāb].</li>

看起来像这样:

  • al-Qalqašandī,Abū l-ʿAbbās ʾAḥmad ibn ʿAlī [القلقشندي أبو العبّاس أحمد بن علي بن أحمد] (1985)。 صبح الأعشى ؁ي صناعة الإنشاء《昏昏欲睡者的早晨:作文艺术论述》。开罗:阿拉伯联合酋长国 [al-Hayʾa l-ʿāmma li-l-Kitāb]。

该程序必须读取 BBL 文件中适当的字段命令,并在authoryear-icomp文件中应用它们的定义以获得适当的 HTML 输出。

有没有什么工具可以做到这一点?

(我尝试使用 htxelatex,预防措施是删除 TeX 文件内容并只留下一个\nocite{*}命令,它在内存耗尽之前生成了一个包含 31,669(!!!)页的 XDV 文件……)

答案1

我可以使用 .TeX MWE 转换您的示例文件make4ht

\documentclass{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{english}
\setotherlanguages{arabic}
\newfontfamily\amirismall{Amiri}[Language=Arabic]

\usepackage[style=authoryear-icomp]{biblatex}
\addbibresource{hello.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}

因为您要使用许多不同的 Unicode 字符,所以最好使用 LuaTeX 而不是 XeTeX tex4ht。原因是它需要使用 XeTeX 激活每个支持的字符,这可能会导致一些问题。然后需要提供 LuaTeX 不支持的\beginR\endR命令的定义。尝试以下配置文件config.cfg

\Preamble{xhtml}
\def\beginR{\HCode{<span dir="rtl">}\NoFonts}
\def\endR{\EndNoFonts\HCode{</span>}}
\begin{document}
\EndPreamble

它将<span>向 HTML 文件插入一个具有正确方向信息的元素。该\NoFonts命令禁用默认创建的大量不必要元素。

使用以下方式编译文件

make4ht -ul -c config.cfg filename.tex

结果如下:

在此处输入图片描述

HTML 代码如下:

<h3 class="sectionHead"><a 
 id="x1-1000"></a>References</h3>
<!--l. 9--><p class="noindent" >   
</p>
<dl class="thebibliography"><dt id="X0-bib243" class="thebibliography">
</dt><dd 
id="bib-1" class="thebibliography">   
<!--l. 9--><p class="noindent" ><a id="page.1"></a><a 
href="biblatexsample.html" id="X0-" ></a>al-Qalqašandī,  Abū  l-ʿAbbās  ʾAḥmad  ibn  ʿAlī  (1985).  <span dir="rtl">صبح  الأعشى  في
صناعة الإنشاء</span> <span 
class="rm-lmri-10">[The Morning of the Dim-Sighted [Treatise] on the Art of</span>
<span 
class="rm-lmri-10">Composition]</span>. Cairo: <span dir="rtl">الهية العامة للكتاب</span> [al-Hayʾa l-ʿāmma li-l-Kitāb].</p></dd></dl>

相关内容