我正在写一个文档,希望ISBN
在书籍中显示 s,因此我打开了该isbn
选项。这样,ISSN
当我引用一篇文章时,就会显示期刊的 s。有没有办法启用ISBN
s 但禁用ISSN
s?它们似乎由引用手册时的相同选项控制。如果有帮助的话,biblatex
我也在使用样式。biblatex-chem
答案1
您可以清除该字段的内容issn
。这个帖子为您提供两个选择:
- 调用
\clearfield{issn}
(\AtEveryBibitem
也许\AtEveryCitekey
)。 - 使用的源映射功能将字段设置
issn
为空。biber
这是第一种方法的示例。
\documentclass{article}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[backend=bibtex,style=chem-rsc,isbn=true]{biblatex}
\AtEveryBibitem{\clearfield{issn}}
\AtEveryCitekey{\clearfield{issn}}
\begin{filecontents}{\jobname.bib}
@Periodical{jcg,
title = {Computers and Graphics},
issuetitle = {Semantic {3D} Media and Content},
volume = {35},
number = {4},
year = {2011},
issn = {0097-8493}}
@Article{sarfraz,
author = {M. Sarfraz and M. F. A. Razzak},
title = {Technical section: {An} algorithm for automatic capturing of the font outlines},
journal = {Computers and Graphics},
volume = {26},
number = {5},
pages = {795--804},
year = {2002},
issn = {0097-8493}}
@Manual{cms,
label = {CMS},
title = {The Chicago Manual of Style},
subtitle = {The Essential Guide for Writers, Editors, and Publishers},
edition = {15},
publisher = {University of Chicago Press},
location = {Chicago, Ill.},
date = {2003},
isbn = {0-226-10403-6}}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\fullcite{jcg,sarfraz,cms}
\printbibliography
\end{document}
你可以issn
更有选择地抑制该场。例如
\AtEveryBibitem{\ifentrytype{article}{\clearfield{issn}}{}}
将打印issn
参考书目@periodical
中的条目。
在第二种方法中,源映射可以通过两种方式完成:
\DeclareSourcemap
biblatex 2.0
在文档序言中。此功能在/中引入biber 1.0
。sourcemap
文件中的选项。biber.conf
配置文件将覆盖序言中完成的任何源映射。
为了演示,\DeclareSourcemap
我们使用相同的文档,但带有序言:
\documentclass{article}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=chem-rsc,isbn=true]{biblatex}
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\pertype{article}
\step[fieldset=issn, null]
}
}
}
\begin{filecontents}{\jobname.bib}
...
此源映射将issn
仅在@article
条目中抑制。要issn
在所有条目类型中省略,请删除\pertype{article}
。
下面的biber
配置文件将执行相同的源映射:
<?xml version="1.0" encoding="UTF-8"?>
<config>
<sourcemap>
<maps datatype="bibtex" map_overwrite="1">
<map>
<per_type>ARTICLE</per_type>
<map_step map_field_set="ISSN" map_null="1"/>
</map>
</maps>
</sourcemap>
</config>
在这里我们可以删除所有条目类型中的<per_type>ARTICLE</per_type>
抑制内容issn
。将此文件保存biber.conf
在与文档相同的文件夹中。
在任何一种源映射方法中,假设文档保存为test.tex
。在命令行中,您可以调用:
latex test
biber test
latex test
有关源映射的更多详细信息,请参阅biber
手册。有关更多\DeclareSourcemap
示例,请参阅biblatex
手册。