我有一个 .bib 文件,由于历史原因,它混合了几种简洁的风格(我确信我不是第一个遇到这个问题的人)。有一件事让我很恼火,那就是有些条目只有名字的第一个字母,而其他的则有完整的名字。
有没有办法通过 .tex bib 命令缩短名字,以便在所有这些条目中选择最低的共同点(即始终是名字的首字母)?
我确实希望有一种方法可以真正适当地扩展名字,但这当然有点像科幻小说……
答案1
姓名的处理取决于参考书目样式。有些样式会自动缩写所有名字。或者修改您使用的样式如这里所述。
答案2
正如@Tyler 给你的链接中解释的那样,有些样式会自动使用f.~
而不是ff
in来缩写名字format.names$
。因此,如果你仍然可以自由选择参考书目样式,你可以选择一种这里,或者检查哪些样式文件使用上述格式。此脚本
styles=`find /usr/share/texmf -name "*.bst" -exec grep -H "f\.~" {} \; |cut -d: -f1| uniq`
for f in $styles; do
echo `basename $f .bst`
done
给了我这个列表:
osajnl sweabbrv pccp revcompchem elsart-num-names elsart-num-sort elsart-num active2006 mslapa ltugbib apacitex apacite spiebib abbrvurl IEEEtranSN IEEEtranSA IEEEtranS IEEEtran IEEEtranN phaip chicago phapalik phpf phjcp newapa humannat phnflet phreport phnf is-abbrv phrmp phiaea phcpc phppcf jas99 econometrica chicagoa law smfplain smfalpha gatech-thesis agsm kluwer siam-letters abbrv-letters aiaa acmtrans plabbrv savetrees aunsnot aabbrv anotit dk-abbrv ier econometrica-fr ajae ecta econometrica xagsm texsis ieeetr abbrv acm siam angew-mc angew rsc-mc rsc abbrvnat gerapali gerabbrv agufull agu