用于unsrt样式的biblatex,带有超紧凑型数字,置于乳胶或rmarkdown中的方括号中

cl25kdpy  于 2023-01-15  发布在  其他
关注(0)|答案(2)|浏览(210)

我的问题来自here,在@shafee@samcarter_is_at_topanswers.xyz的帮助下,其中还提供了.tex.rmd演示。
我的想法是我想使用biblatex而不是natbib来达到相同的目标。有几个障碍,因为默认的biblatex不支持unsrt风格,方括号中有超紧凑的数字。我尽我所能一个接一个地解决它们。

unsrt样式(围嘴样式)

https://tex.stackexchange.com/questions/58152/开始,我们在biblatex-trad中求助于style=trad-unsrt,即

\usepackage[backend=bibtex,style=trad-unsrt]{biblatex}

压缩数字(citestyle)

https://tex.stackexchange.com/questions/61524开始,我们在biblatex中求助于citestyle=numeric-comp,即

\usepackage[backend=bibtex,style=trad-unsrt,citestyle=numeric-comp]{biblatex}

超级风格(Citestyle;引用位置)

https://tex.stackexchange.com/questions/355111/开始,我们在biblatex中求助于autocite=superscript,即

\usepackage[backend=bibtex,style=trad-unsrt,citestyle=numeric-comp,autocite=superscript]{biblatex}

最后;当前.tex.rmd文件

特克斯

\documentclass{article}

\usepackage[hidelinks]{hyperref}
\usepackage[backend=bibtex,style=trad-unsrt,citestyle=numeric-comp,autocite=superscript]{biblatex}
\addbibresource{ref.bib}

\newcommand{\citep}[1]{\autocite{#1}}

\begin{document}

statistics \citep{anderson2003introduction,efron2004least,hastie2009elements}

\printbibliography[heading=bibliography,title=References]
\nocite{*}

\end{document}

远程管理

---
output: 
  pdf_document:
    keep_tex: yes
    citation_package: biblatex
bibliography: ref.bib
biblatexoptions:
  - backend=biber
  - style=trad-unsrt
  - citestyle=numeric-comp
  - autocite=superscript
link-citations: yes
colorlinks: no
header-includes:
  - \newcommand{\citep}[1]{\autocite{#1}}
---

statistics [@anderson2003introduction; @efron2004least; @hastie2009elements]

\nocite{*}

问题?

.tex.rmd都可以顺利编译,几乎成功,而the remaining one thing我不知道如何将square brackets添加到super-compact-numeric引用中.顺便说一句,我也搜索了类似的问题,如here,其中的biblatex-ext可能会有帮助.然而,我不知道如何使biblatex-extbiblatex-trad兼容,还有别的方法吗?

64jmpszr

64jmpszr1#

通常你可以重新定义\mkbibsuperscript宏来添加方括号,不幸的是rmarkdown由于一些无法解释的原因延迟了biblatex包的加载,直到头文件include之后,所以需要做一些修改:

---
output: 
  pdf_document:
    keep_tex: yes
    citation_package: biblatex
bibliography: ref.bib
biblatexoptions:
  - backend=biber
  - style=trad-unsrt
  - citestyle=numeric-comp
  - autocite=superscript
link-citations: yes
colorlinks: no
header-includes:
  - \newcommand{\citep}[1]{\autocite{#1}}
  - \makeatletter\AtEndPreamble{\renewrobustcmd{\mkbibsuperscript}[1]{\unspace\allowhyphens\textsuperscript{[\begingroup\protected\long\def\mkbibsuperscript##1{\blx@warning{Nested superscript}\mkbibbrackets{##1}}#1\endgroup]}}}\makeatother
---

statistics [@anderson2003introduction; @efron2004least; @hastie2009elements]

\nocite{*}

t98cgbkg

t98cgbkg2#

可以使用chem-angew样式:

\documentclass{article}

\usepackage[hidelinks]{hyperref}
\usepackage[style=chem-angew,autocite=superscript]{biblatex}
\addbibresource{ref.bib}

\newcommand{\citep}[1]{\autocite{#1}}

\begin{document}

statistics \citep{anderson2003introduction,efron2004least,hastie2009elements}

\printbibliography[heading=bibliography,title=References]
\nocite{*}

\end{document}

相关问题