我怎样才能截断http://adsabs.harvard.edu/abs/
每个adsurl
看起来像的字段
adsurl = {http://adsabs.harvard.edu/abs/2015EPJST.224.2217S}.
可以通过改变渲染来实现吗
\DeclareFieldFormat{adsurl}{#1}
我希望该字段作为链接出现在参考文献的末尾
作者(年份)、标题、...、ADS:2015EPJST.224.2217S
这个问题出现在如何将 adsurl 字段添加为参考书目的链接。
答案1
似乎我根据 Joseph Wright 的评论找到了第一个解决方案,即先剪切文本,然后再添加,如下所示
\usepackage{filecontents}
\begin{filecontents}{biblatex-dm.cfg}
\DeclareDatamodelFields[type=field,datatype=verbatim]{adsurl}
\DeclareDatamodelEntryfields{adsurl}
\end{filecontents}
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=adsurl, match={http://adsabs.harvard.edu/abs/},
replace={}]
}
}
}
\DeclareFieldFormat{adsurl}{ADSURL: \href{http://adsabs.harvard.edu/abs/#1}{#1}}
\renewbibmacro{finentry}{\printfield{adsurl}\finentry}
它会产生类似如下的结果:
Kundu, M. R. (1965). Solar radio astronomy. New York: Interscience Publication,
1965. ADSURL: 1965sra..book.....K.
尽管1965sra..book.....K是一个链接。请参阅如何将 adsurl 字段添加为参考书目的链接。
我想知道这是否是最简单的方法。