如何对 BibLaTeX 的结果进行排序?我希望在注释之前显示年份。
我目前只使用
\usepackage{biblatex}
%preamble end
\printbibliography[title={Internet}, type=misc]
我将互联网来源定义为
@misc{t100b,
author = {Interbrand},
title = {{Best Global Brands 2012}},
howpublished = "\url{http://www.interbrand.com/en/best-global-brands/2012/Best-Global-Brands-2012-Brand-View.aspx}",
year = {2012},
note = "Visited the 19/12/2012"
}
在我的 internet.bib 文件中。
它看起来像
跨品牌。2012 年全球最佳品牌。 http://www.interbrand.com/en/best-global-brands/2012/Best-Global-Brands-2012-Brand-View.aspx。访问于 2012 年 12 月 19 日。2012 年。
我希望如此
跨品牌。2012 年全球最佳品牌。 http://www.interbrand.com/en/best-global-brands/2012/Best-Global-Brands-2012-Brand-View.aspx。2012 年。访问于 2012 年 12 月 19 日。
是否可以获取注释之前的年份?它目前按外观列表排序,我想继续使用。
答案1
最简单的做法是选择已经实现的引用样式。例如,常用的authoryear
引用样式:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{t100b,
author = {Interbrand},
title = {{Best Global Brands 2012}},
howpublished = "\url{http://www.interbrand.com/en/best-global-brands/2012/Best-Global-Brands-2012-Brand-View.aspx}",
year = {2012},
note = "Visited the 19/12/2012"
}
\end{filecontents}
\usepackage[style=authoryear,natbib=true,backend=biber]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
\cite{t100b}
\printbibliography[title={Internet}, type=misc]
\end{document}
运行pdflatex
,,将得到以下输出biber
:pdflatex
注释前有年份。
如果您想要不同的风格,只需查看您的$TEXMFLOCAL/tex/latex/biblatex/bbx
目录(或 Win/Mac 上的并行目录)即可查看那里有哪些可用的风格。
如果你找不到适合自己的风格,那么你可能需要设计自己的风格。查看后standard.bbx
你会发现它的misc
定义如下:
\DeclareBibliographyDriver{misc}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{howpublished}%
\newunit\newblock
\printfield{type}%
\newunit
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\usebibmacro{organization+location+date}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\usebibmacro{related}%
\usebibmacro{finentry}}
将其复制到新.bbx
文件并切换字段应该会得到您想要的输出。但不要忘记使用以下几行来启动文件:
\ProvidesFile{my_style.bbx}% replace this with your style name
\RequireBibliographyStyle{standard}% replace this with the style you'd like to build upon
答案2
正如我在评论中提到的,由于您正在使用biblatex
,您可以选择更广泛的条目类型(完整列表在文档中)biblatex
。
就您而言,您引用了一个在线资源,可以使用 biblatex 来描述该@online
资源。
biblatex
还允许您访问其他字段,这些字段在描述在线资源时非常有用。 和url
就是urldate
这样的条目。 使用 url 条目,您无需将实际 url 括在命令中,\url{}
因为它会自动完成; 并且urldate
(接受与条目相同的日期格式date
- 即 ISO 格式)将被格式化为“(访问于 )”。
使用您提供的源码位,并将这些更改放到位,您将获得:
\documentclass[a4paper,12pt]{article}
\usepackage {biblatex}
\usepackage {filecontents}
\begin{filecontents}{\jobname.bib}
@online{t100b,
author = {Interbrand},
title = {Best Global Brands 2012},
url = {http://www.interbrand.com/en/best-global-brands/2012/Best-Global-Brands-2012-Brand-View.aspx},
year = {2012},
urldate = {2012-12-19},
}
\end{filecontents}
% use graphics and floating figures
\addbibresource{\jobname.bib}
\begin{document}
Some text with a citation \cite{t100b}
\printbibliography[title={Internet}, type=online]
\end{document}