CSL 文件接近标准 bibtex 样式,特别是 amsplain

CSL 文件接近标准 bibtex 样式,特别是 amsplain

是否已经有人浪费时间研究以下内容:

哪一个数百个可用的 csl 文件最接近 bibtex 风格阿姆斯普兰(或者可能只是普通的)?

即,理想情况下应该使用与 amsplain 中完全相同的字段,并且应该按照相同的顺序和大致相同的样式打印这些字段。

请注意,许多 csl 文件似乎忽略了该note条目,这对我来说很重要,但这可以手动修复;但可能还有其他我不知道的字段也可能缺失?顺便说一句,我无论如何都会忽略该条目;是否像 amsplain 中那样处理MRNUMBER并不重要。URL

备注:我对此感兴趣的原因如下:我想将 bibtex 书目转换为 html(使用 katex),输出结果接近我使用 latex 和(例如)amsplain bibstyle 获得的结果。看来 pandoc 是一个很好的工具。(而且我可能会用超链接替换打印的 url 字段,所以无论如何这都必须单独处理。)

更新:

  • 谢谢你的建议,但我不想使用bibtex2html。虽然这确实非常快速和强大,并且符合 bibtex 的规范,但我无法使用它,因为我需要与 katex 兼容的输出。例如,如果我$a+b$在标题中的某个地方有,那么pandoc --katex --bibliography test.bib test.tex给出的结果...<span class="math inline">\(a+b\)</span>...是可以有效地与 katex 一起使用以生成漂亮的 html。bibtex2html 生成类似的东西...<em>a</em>+<em>b</em>...
  • 感谢 CSL 编辑器等的链接。确实,在那里生成一些合理的东西似乎相当容易。为了完整起见,我想提一下我遇到的另一个问题:pandoc-citeproc(在任何 CSL 文件发挥作用之前,它会读取 bib 文件并从中准备 pandoc 兼容格式)拒绝解析非日期year条目。由于滥用 bibtex 年份字段to appear或类似信息似乎很常见,因此似乎需要另一种解决方法来保留此信息。(在我的情况下,我可能会自动将每个yearbibfield 复制到一个originalyear字段或类似字段;然后orginalyear在 CSL 中使用)

答案1

您可以使用bibtex2html产生与原始内容非常接近的 html 输出。

将此文件mweb.tex作为输入:

\documentclass{article}
\begin{document}

\nocite{*}
\bibliographystyle{amsplain}
\bibliography{mweb}

\end{document}

以下是样本书目(mweb.bib):

@article{einstein,
    author = "Albert Einstein",
    title = "{Zur Elektrodynamik bewegter K{\"o}rper}. ({German})
    [{On} the electrodynamics of moving bodies]",
    journal = "Annalen der Physik",
    volume = "322",
    number = "10",
    pages = "891--921",
    year = "1905",
    DOI = "http://dx.doi.org/10.1002/andp.19053221004",
    keywords = "physics"
}

@book{dirac,
    title = {The Principles of Quantum Mechanics},
    author = {Paul Adrien Maurice Dirac},
    isbn = {9780198520115},
    series = {International series of monographs on physics},
    year = {1981},
    publisher = {Clarendon Press},
    keywords = {physics}
}

@online{knuthwebsite,
    author = "Donald Knuth",
    title = "Knuth: Computers and Typesetting",
    url  = "http://www-cs-faculty.stanford.edu/~uno/abcde.html",
    addendum = "(accessed: 01.09.2016)",
    keywords = "latex,knuth"
}

@inbook{knuth-fa,
    author = "Donald E. Knuth",
    title = "Fundamental Algorithms",
    publisher = "Addison-Wesley",
    year = "1973",
    chapter = "1.2",
    keywords  = "knuth,programming"
}

你将得到以下输出:

在此处输入图片描述

现在执行bibtex2html

$ bibtex2html -s amsplain -nobibsource -nokeywords -nolinks -nodoi -a mweb.bib

输出与 pdf 非常接近:

在此处输入图片描述

通过该选项,-nobib您可以输出仅包含引用条目的表格,如下所示:

<tr valign="top">
<td align="right" class="bibtexnumber">
[<a name="einstein">2</a>]
</td>
<td class="bibtexitem">
Albert Einstein, <em>Zur Elektrodynamik bewegter K&ouml;rper. (German)
  [On the electrodynamics of moving bodies]</em>, Annalen der Physik <b>322</b>
  (1905), no.&nbsp;10, 891--921.

</td>
</tr>

相关内容