![我如何分发排序方案](https://linux22.com/image/279827/%E6%88%91%E5%A6%82%E4%BD%95%E5%88%86%E5%8F%91%E6%8E%92%E5%BA%8F%E6%96%B9%E6%A1%88.png)
我为我的最终书目制定了一个个人排序方案。它类似于该nty
方案,但匿名作品在非匿名作品之前。
由于这是我的领域(古典语言学)的常见需求,所以我想出版它。
但是,据我所知,没有办法biblatex
在文件中发布排序方案,例如 .cbx 或 .bbx 文件。
当然,我可以将其作为 .sty 文件分发,但这意味着用户应该:
- 装载包裹进行分类
biblatex
使用排序选项加载包。
这将是两步且非直观的方法。
还有人对你有其他想法吗?
答案1
您可以将排序方案作为普通 biblatex 样式分发,并选择加载其他 biblatex 样式。这是一个概念证明
mystyle.bbx
\RequireBibliographyStyle{standard}
\DeclareBibliographyOption{loadMySortingSchemaOnTopOf}[numeric]{
\RequireBibliographyStyle{#1}
\RequireCitationStyle{#1}
}
\DeclareSortingScheme{mysortingschema}{
\sort[direction=descending]{\field{author}}
}
\ExecuteBibliographyOptions{loadMySortingSchemaOnTopOf,sorting=mysortingschema}
mystyle.cbx
\ifcsundef{ifcbx:parens}{}{\csundef{ifcbx:parens}}
\RequireCitationStyle{numeric}
然后排序模式可以简单地与
\documentclass{article}
\usepackage[style=test]{biblatex}
\addbibresource{bibfile.bib}
\begin{document}
\cite{key1}
\cite{key2}
\printbibliography
\end{document}
或者通过指定要使用新排序模式进行扩展的样式
\documentclass{article}
\usepackage[style=test,loadMySortingSchemaOnTopOf=authoryear]{biblatex}
\addbibresource{bibfile.bib}
\begin{document}
\cite{key1}
\cite{key2}
\printbibliography
\end{document}