myrefs.bib
考虑包含以下 biblatex 条目的文件:
@XDATA{pom,
EVENTDATE = {1999-12-31/2000-01-01},
EVENTTITLE = {Party},
VENUE = {Somewhere},
}
@PROCEEDINGS{pomp,
XDATA = {pom},
DATE = {2000},
EDITOR = {Me, Myself and I},
TITLE = {Party-report},
}
我想使用
biber --tool_resolve -g mybiber.conf --tool myrefs.bib
要得到
@PROCEEDINGS{pomp,
EVENTDATE = {1999-12-31/2000-01-01},
EVENTTITLE = {Party},
DATE = {2000},
EDITOR = {Me, Myself and I},
TITLE = {Party-report},
VENUE = {Somewhere},
}
可以这样做吗? 中的对应地图是什么样mybiber.conf
的?(我知道可以使用 删除字段map_null="1"
,但我还没有找到这样的条目选项。)
答案1
您的初始 .bib 中有一个小错误 - 您需要使用字段XDATA
而不是CROSSREF
:
@XDATA{pom,
EVENTDATE = {1999-12-31/2000-01-01},
EVENTTITLE = {Party},
VENUE = {Somewhere},
}
@PROCEEDINGS{pomp,
XDATA = {pom},
DATE = {2000},
EDITOR = {Me, Myself and I},
TITLE = {Party-report},
}
然后,这会在工具输出模式中为您提供所需的“pomp”条目。确实,原始“pom”XDATA
条目也在输出中,但这是无害的,因为它不再被引用。或者,您有什么理由必须在输出中消除它?有一个映射选项可以删除条目(map_entry_null
),但与所有映射一样,这应用于读取数据源,因此它会在进行任何处理之前删除条目 - 这不是您想要的。
您可以biber
在此后运行单独的工具来删除已解析的XDATA
条目。只需将其放入选项中提到的 conf 文件中-g
:
<config>
<sourcemap>
<maps datatype="bibtex" map_overwrite="1">
<map>
<map_step map_type_source="XDATA" map_final="1"/>
<map_step map_entry_null="1"/>
</map>
</maps>
</sourcemap>
</config>
map_entry_null
记录在biber
PDF 手册中。