如何隐藏 之前的“In: ” journaltitle
?像这样:
出处:应用物理学杂志
答案1
装入包后插入比布拉特克斯:
\renewbibmacro{in:}{}
或者如果您只需要它用于类型条目@article
(可以轻松扩展到其他条目类型 - 见下文):
[...]
\usepackage{biblatex}
\renewbibmacro{in:}{%
\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
[...]
如果您需要更多条目类型,请使用:
\renewbibmacro{in:}{%
\ifboolexpr{%
test {\ifentrytype{article}}%
or
test {\ifentrytype{inproceedings}}%
}{}{\printtext{\bibstring{in}\intitlepunct}}%
}
答案2
请注意,接受的答案要简单得多,这个答案可能不应该使用
我不知道是否有一种简单的方法可以在文档中执行此操作。我解决这个问题的方法是.bbx
在 biblatex 中定义我自己的样式,以修复其一些比较奇怪的默认值。[bibstyle=mybibstyle]
当您加载 biblatex 时,此样式(此处命名为“mybibstyle”)会使用该选项加载。(我想这可以添加到文档的序言中,但我更喜欢不要将这种长篇修改添加到文档中。(这是人们会一直使用的东西。))
这是一个示例;代码是从standard.bbx
biblatex 中的文件复制而来的。它假设authoryear-comp
biblatex 的样式作为起点,然后修改“文章”类型的参考书目驱动程序。(它还会从文章标题中删除引号;如果不需要,请删除该代码。)
如果有更简单的方法可以做到这一点,我会很高兴找到答案。
\ProvidesFile{mybibstyle.bbx}
\RequireBibliographyStyle{standard}
\RequireBibliographyStyle{authoryear-comp} % change this if you're not using author-year
\DeclareFieldFormat[article,incollection,unpublished]{title}{#1}%No quotes for article titles
\DeclareFieldFormat[thesis]{title}{\mkbibemph{#1}} % Theses like book titles
\DeclareBibliographyDriver{article}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
\newunit\newblock
\printfield{version}%
\newunit\newblock%
\usebibmacro{journal+issuetitle}%
\newunit
\usebibmacro{byeditor+others}%
\newunit
\usebibmacro{note+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\usebibmacro{finentry}}
如果你的资料库使用的是 bibstyle,而它本身会改变“文章”类型的格式,那么你应该复制那定义到您的自定义 bbx 文件中作为起点。从驱动程序中删除的相关代码是\usebibmacro{in:}
(这是我从标准 bbx 版本中删除的所有内容,以创建上述版本。)
答案3
因为它经常出现,biblatex-ext
样式有一个选项可以删除仅适用于 s 的“in:” @article
。
环境
articlein=false,
删除“in:”@article
。所有其他类型的“in:”均保留。另请参阅 §4.1常规选项的biblatex-ext
文档。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=ext-authoryear, articlein=false]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
\cite{sigfridsson,pines}
\printbibliography
\end{document}
如果应该删除所有条目类型的“in:”,则接受答案中的解决方案
\renewbibmacro{in:}{}
仍然是可行的方法(并且它并不比使用选项复杂得多)。