biblatex中参考文献期刊名缩写的实现
biblatex中参考文献期刊名缩写的实现
可以存在非常多的实现方法,这里介绍7种常用的方法:
对于下面这样的一个文献:
@article{Chen1990a,author = {Chen, S. and Billing, S. A. and Cowan, C. F. and others},title = {Practical identification of MARMAX models},journal = {Int Journal of Control},year = {1990},volume = {52},number={6},pages = {1327-1350},
}
假设其中期刊Int Journal of Control的缩写名为Int J Control,那么可以采用如下方法实现:
首先是域内容替换的方法:
- 使用jabref等工具软件替换
首先可以利用jabref维护一个期刊缩写的列表,接口在菜单:选项下的管理期刊缩写,
使得Int Journal of Control对应缩写名为Int J Control
接着选择需要转换的参考文献条目,然后利用菜单:工具下的缩写期刊名选项进行替换
- 使用其他工具,比如写一个脚本来对bib文件的期刊内容进行替换
比如使用biblatex-map.PY工具
在py文件中设置
sourcemaps=[#maps[#map1:根据标题的字符编码范围确定标题的语言类型[{"fieldsource":"journal","match":r'Int Journal of Control',"final":True}],#step1[{"fieldset":"journal","fieldvalue":r'Int J Control'}]#step2],
]
然后设置输入bib文件为需要修改的bib文件,接着运行该py脚本。
- 在bib文件中利用string进行替换
修改bib文件内容为:
%@string{CHENJOURNAL="Int Journal of Control"}
@string{CHENJOURNAL="Int J Control"}
@article{Chen1990a,author = {Chen, S. and Billing, S. A. and Cowan, C. F. and others},title = {Practical identification of MARMAX models},journal = CHENJOURNAL,year = {1990},volume = {52},number={6},pages = {1327-1350},
}
- 在bib文件中直接手动修改域内容进行替换
这就是最笨的方法,手动将bib文件中的Int Journal of Control更改为Int J Control。
接着介绍不进行域内容替换的方法:
- 利用biblatex的动态数据修改
在导言区增加:
\DeclareStyleSourcemap{\maps[datatype=bibtex]{\map{\step[fieldsource=journal,match={Int Journal of Control},final]%当存在booktitle域是映射为inbook\step[fieldset=journal,fieldvalue={Int J Control}]}}}
- 增加shortjournal域结合期刊域输出的设置
条目内容更改为:
@article{Chen1990a,author = {Chen, S. and Billing, S. A. and Cowan, C. F. and others},title = {Practical identification of MARMAX models},journal = {Int Journal of Control},shortjournal={Int J Control},year = {1990},volume = {52},number={6},pages = {1327-1350},
}
期刊名域输出格式修改为:
\renewbibmacro*{journal}{%
\iffieldundef{shortjournal}{\ifboolexpr{test {\iffieldundef{journaltitle}}andtest {\iffieldundef{journalsubtitle}}}%{}%{\printtext[journaltitle]{%\printfield[titlecase]{journaltitle}%\setunit{\subtitlepunct}%\printfield[titlecase]{journalsubtitle}}%}%}%{\printtext[journaltitle]{%\printfield[titlecase]{shortjournal}}%}%
}
- 增加shortjournal域结合域的临时保持和恢复
条目内容更改为:
@article{Chen1990a,author = {Chen, S. and Billing, S. A. and Cowan, C. F. and others},title = {Practical identification of MARMAX models},journal = {Int Journal of Control},shortjournal={Int J Control},year = {1990},volume = {52},number={6},pages = {1327-1350},
}
在导言区增加,如下设置:
%在输出文献表时使用钩子
\AtEveryBibitem{\savefield{shortjournal}{\temptitle}%\restorefield{journaltitle}{\temptitle}%
}
后两种的示例测试见:biblatex 简明使用手册
总结:
从实践看采用jabref这种工具是最便捷的方法,当然增加shortjournal的方法在有更多格式定制要求时会是更好的选择。
biblatex中参考文献期刊名缩写的实现相关推荐
- Endnote中设置期刊名缩写
- IEEE Transactions模板中参考文献作者缩写、期刊名缩写
IEEE Transactions模板中参考文献作者缩写.期刊名缩写 本文章记录如何在IEEE Transactions的模板中,解决参考文献的作者缩写.期刊名字缩写的问题. 目录 IEEE ...
- SCI期刊名缩写查询的三种方法
SCI期刊名缩写查询的三种方法 在参考文献中,常会用到期刊的缩写名,这里介绍三种用于查询SCI期刊名缩写的方法,便于查询各个期刊的缩写. 1.方法一 进入justscience查询, https:// ...
- SCI期刊名缩写查询
亲测比较实用的几个查询地址 (其中包含有些博主整理的): 1.https://pubmed.ncbi.nlm.nih.gov/ 2.https://www.letpub.com.cn/index.ph ...
- endnote导入参考文献期刊名不能显示解决办法
针对endnote导入参考文献不能显示Journal名的问题的解决办法. https://endnote.com/wp-content/uploads/plugins/filters/EndNote% ...
- 【论文写作】Endnote插入参考文献对应的英文期刊名全称如何修改为缩写形式(内附最新Endnote参考文献期刊名26627种全称和对应缩写表)
文章目录 1. 在Endnote中导入对应的期刊全称与缩写对照表 2. 修改参考文献样式使用期刊名缩写 3. 在Word中点击Update Citation and Bibliography 在使用E ...
- 英文期刊名中常见的单词缩写 (个人整理不全面),后续还会整理。。。。
有些期刊参考文献要求期刊名写为缩写形式,在网上找了一遍没有比较合适的软件可以自动生成缩写词,也没有统一的规律,所以笨重的整理了一下,希望以后有人能搞出自动缩写英文期刊名(反之,由缩写名能自动写出期刊全 ...
- 期刊英文名缩写如何查询或编辑?
文章目录 0.引言 1.英文期刊名缩写查询 2.中文期刊英文名缩写查询 3.中文期刊英文名缩写编辑 0.引言 在整理论文参考文献时,参考文献格式需要按照所投期刊要求进行编写,有的期刊会要求引用的参 ...
- 如何设定Endnote中的期刊缩写格式
当参考文献中的期刊名称不符合要求时,需要自行更改期刊名.具体操作方法如下: [1]选择一种最接近的引文格式,并创建副本(笔者投稿OE,这里使用官方下载的引文格式为例): [2]对该格式进行编辑.选择左 ...
最新文章
- 童年记忆-莴苣姑娘的故事
- 中小企业实施ERP更多是需要发展的眼光与坚定的决策
- 转载:使用sklearn进行数据挖掘
- RPC 和 RESTful对比
- 如何理解和运用策略模式
- python在城市规划中的运用_温州市城市规划展示厅
- XSS 跨站脚本攻击 的防御解决方案
- 面试今日头条Android开发,结束时我问了面试官是否有女朋友,结果你猜?
- java 性能优化:35 个小细节,让你提升 java 代码的运行效率
- 台州学院计算机翁黄格,中国高校计算机大赛-团体程序设计天梯赛全国总决赛获奖.DOC...
- ATSHA204A加密芯片
- 【JAVA小游戏】炸飞机
- 在c语言的switch 语句中,的case后面的表达式,什么值必须在switch语句中case后面
- 唯品会开源分布式作业调度平台Saturn
- 用加密算法给女朋友写封情书
- 针对华为产品,如何在小红书宣传中发布有关图文笔记并达到最佳效果?
- 1011: [HNOI2008]遥远的行星
- MFC Windows 程序设计[323]之噪声特征流显示gribble2(附源码)
- 高精度计算-大整数除法
- 客户端iOS 的自动化测试