转载:http://space.uibe.edu.cn/u1/ryang/latex-bib.html

研究兴趣
相关资料
课程课件
相关资料
Linux 操作系统

LaTeX 排版软件

Emacs 文本编辑器
metapost 绘图程序
统计/计量软件

Debian Gnu/Linux
Fvwm 窗口管理器
LaTeX 简介
论文模板
图像处理
使用技巧
高级内容
宏包发布
R 统计/计量软件
gretl 软件

概述 中文参考文献的处理(作者年代式)
对 bib 文件的修改 文献引用宏包 natbib 文献引用风格文件 bst 辅助处理程序
中文参考文献的处理(数字上标式) 关于文中文献条目问题
应用的领域 使用 natbib 所带的 bibentry 宏包 使用 chapterbib 和 natbib 宏包 使用 footbib 宏包

概述

LaTeX 对参考文献的处理包含三个紧密相连的部分。

  1. 建立与维护文献数据库。
  2. 文中引用。
  3. 将文中引用与文献数据库建立联系,于文档末尾(或适当位置)生成所引文 献的列表。
建立与维护文献数据库
在 LaTeX 中,文献数据库文件为 .bib 文件,通常 放在主文档所在目录或 LaTeX 搜索路径下(由 BIBINPUTS 变量决定)。数据库 的条目依文献的不同类型划分,常用的如 article , book , InProceedings 等。 数据库字段的组织形式如下:
@Book{Mas-Colell-Whinston-Green_1995,

author =    {Mas-Colell, Andreu and Whinston, Michael D. and

Green, Jerry R.},

title =     {Microeconomic Theory},

publisher =     {Oxford University Press},

year =      1995,

address =   {New York}

}
文中引用
缺省情况下,LaTeX 可以使用 /cite 命令进行文献引用。不过, 这里推荐使用 natbib 宏包,该宏包提供下列常用引用命令:

引用命令 显示效果
/citet{Mas-Colell-Whinston-Green_1995} Mas-Colell, Whinston and Green (1995)
/citep{Mas-Colell-Whinston-Green_1995} (Mas-Colell, Whinston and Green 1995)
生成所引文献列表
LaTeX 使用 BibTeX 程序自动从前面建立的 bib 文件中将 所引文献的信息提取出来,按照一定规则生成 bbl 文件,LaTeX 则将 bbl 文件 插入到 /bibliography 命令处,从而生成所引文献列表。至于所引文献列表的排 版风格则由 bst 文件决定。

上述后两个过程可以由下面的命令行实现:

latex yourfile

bibtex yourfile

latex yourfile

latex yourfile

因此,对中文参考文献的处理也同样涉及到上述三个部分。中文参考文献处理的 特殊要求决定了要对上述三个部分加以适当调整和修改。

中文参考文献的处理(作者年代式)

bib 文件的修改

为了能够分别处理中英文参考文献的不同风格,需要在 bib 文件中所有中文参 考文献条目中增加一个字段 lang , 指定该字段值为 {chinese} 即可。如

@Book{Pindyck-Rubinfeld.cn_2000,

author =    {平狄克 and 鲁宾费尔德},

title =     {微观经济学},

publisher =     {中国人民大学出版社},

year =      2000,

address =   {北京},

edition =   4,

lang =      {chinese}

}

文献引用宏包 natbib

导言区设置

/usepackage[sort&compress,longnamesfirst]{natbib}

/bibpunct[, ]{(}{)}{;}{a}{}{,}

/addtolength{/bibsep}{-0.5 em} % 缩小参考文献间的垂直间距

/setlength{/bibhang}{2em}

/newcommand{/bibfont}{/normalfont}%文献列表的字体

%/renewcommand/bibnumfmt[1]{#1}  %去掉文末文献列表的[](数字或上标模式)

%/newcommand{/bibnumfont}[1]{/textit{#1}}

%文献列表中的姓氏字体设置,需要与适当的 bst 文件配合使用

/newcommand{/bibnamefont}[1]{{/bf/hei #1}}

%文献列表中的名字字体设置,需要与适当的 bst 文件配合使用

/newcommand{/bibfnamefont}[1]{{/bf/hei #1}}

处理中文问题

natbib 宏包缺省情况下会将中文忽略,得到的结果是所有中文都消失了。为了 解决这一问题,可以在导言区加上下面的代码:

%% 下面的代码来自 fixCJK.tex by Werner Lemberg <wl@gnu.org>,使得natbib 可

%% 以处理中文。注意如果使用了此文件,运行 fixbbl 时加上 -cjk 选项,以便生

%% 成可阅读的中文 bbl 文件,详情请访问 hooklee 主页,http://www.hooklee.com/。

/AtBeginDocument{%

/if@filesw

/immediate/write/@mainaux{%

/string/begin{CJK}{GBK}{song}}%

/immediate/write/@mainaux{%

/string/makeatletter}%

/fi}

/AtEndDocument{%

/if@filesw

/immediate/write/@mainaux{%

/string/end{CJK}}%

/fi}

% Enable Chinese in preamble (code from beamer)

/makeatletter

/def/beamer@activecjk{

% Activate all >128 characters.

/count@=127

/@whilenum/count@<255 /do{%

/advance/count@ by 1

/lccode`/~=/count@

/catcode/count@=/active

/lowercase{/def~{/kern1ex}}

}

}

/beamer@activecjk

/makeatother

也可以直接使用 hooklee 编写的 fixbbl 工具,具体用法请参考 hooklee 主页 。

文献引用风格文件 bst

对中英文文献采用不同的风格是处理中英文参考文献的关键。这里采用薛瑞尼 维 护的 thuthesis 的处理方法,即在 bib 文件中为中文参考文献增加 lang 字段 ,通过这一字段区分中英文文献。依照这一思路,读者可以调整和修改 natbib 自带的 plain.bst , unsrt.bst 等风格文件。下面是一个小小的例子:

FUNCTION {bbl.and}

{ lang empty$

{"and"}

{"和"}

if$

}

这样修改可以告诉 BibTeX 在生成 bbl 文件时,中文文献多个作者之间的 and 改用中文“和”。

下面是经过初步修改的 bst 文件,未经充分测试,供参考。

  • authordatenat.bst v0.1 2006-11-06 20:11

辅助处理程序

中文文献的排序问题
经过上述三步修改工作,基本上应该可以正常处理中文 参考文献了,但是有可能还会出现排序问题,即中文参考文献未按作者姓氏拼音 顺序排序。这一功能可以借助 hooklee 开发的 fixbbl 工具实现。Win 版本的 fixbbl 可以直接到 hooklee 主页下载使用。下面是可以在 Linux 系统下使用 的 fixbbl 程序(或者从 hooklee 主页下载源码,自己编译)。
  • fixbbl.tgz v0.3 by hooklee

中文参考文献的处理(数字上标式)

以下是导言区的相关代码。注意:如果同时使用了 hyperref 宏包,需要在 natbib 和 hyperref 两个宏包之后使用 hypernat 宏包,以解决数字上标的连 写问题。

/usepackage[numbers,sort&compress]{natbib}

/renewcommand{/citet}[1]{/textsuperscript{/cite{#1}}}

/renewcommand{/citep}[1]{/textsuperscript{/cite{#1}}}

/addtolength{/bibsep}{-0.5 em} % 缩小参考文献间的垂直间距

/setlength{/bibhang}{2em}

%/newcommand{/bibnumfont}[1]{/textit{#1}}

/newcommand{/bibfont}{/normalfont}% 不宜使用中文字号,因为中文字号定义中包含了多余的行距

%/renewcommand/bibnumfmt[1]{#1}  %去掉文末文献列表的[](数字或上标模式)

文中文献的引用方式:

命令 适用情况
citet 上标形式
citep 上标形式(同上)
cite 正文形式

对中文的处理,与作者年代式相同。

关于文中文献条目问题

应用的领域

  • 各章保持自己的参考文献列表;
  • 在文中直接列出文献条目,如用于表格下方的资料来源。
  • 所有引用到的参考文献不以文末文献列表的形式出现,而是在每页脚注中出 现。

使用 natbib 所带的 bibentry 宏包

该宏包提供 /bibentry 命令,用于在正文中插入对应的参考文献条目。主要用 法有两种:

不再出现参考文献列表
此时需要在使用 /bibentry 命令之前声明参考文献数 据库文件,形式为 /nobibliography{bibfile} 。注意:文献条目最末尾的标点 符号会自动去掉,以便作者在其后添加其他文字。
仍然出现参考文献列表
此时需要将上面的数据库文件声明命令改为 /nobibliography* ,然后在文末使用通常的 /bibliography{bibfile} 命令声明 数据库文件,两者需要使用同一个数据库文件,最好只有一个。这样的话,文档 中就可以混合使用 /bibentry/citet 等命令了。

使用 chapterbib 和 natbib 宏包

使用这两个宏包可以实现每章内容末尾出现自己的参考文献列表。但需要注意以 下几点:

  • natbib 在使用时需要加上 sectionbib 选项,并在其后载入 chapterbib 宏 包。
  • 每章内容均需要放在单独 tex 文档中,使用 /include 命令组合到主文档中 。
  • 编译时需要使用 bibtex 分别对每章加以处理,即 bibtex file1, bibtex file2 等。

其他步骤与通常编译 LaTeX 文档相同。

使用 footbib 宏包

使用该宏包可以将引用到的参考文献条目直接放到引用所在页的脚注中,并且如 果前后所引文献相同,该宏包还可以自动加上 ibid。


===

相关链接:

Latex 使用心得

Latex参考文献技巧(Latex编辑部)

Latex参考文献FAQ

LaTeX 参考文献的处理

文献管理软件 JabRef 入门简介

Latex之Natbib中文说明

latex+bibtex+jabref

LaTeX 参考文献的处理相关推荐

  1. LaTeX 参考文献的排版与引用

    6. LaTeX 参考文献的排版与引用_Training.L的博客-CSDN博客_latex参考文献格式

  2. latex参考文献太长,换行处理

    latex参考文献换行: 1) 添加包和URL断行: \usepackage{url} \def\UrlBreaks{\do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H\ ...

  3. latex 参考文献 网站

    这篇好棒,但是代码写在什么位置看下一篇(26条消息) Latex中如何制作参考文献_bluenight专栏-CSDN博客_latex中参考文献  https://blog.csdn.net/chl03 ...

  4. latex参考文献中修改指定作者的格式来突出显示

    latex参考文献中修改指定作者的格式来突出显示 1.引言 在撰写学位论文过程中,特别是在附作者在学期间的研究或工作成果的时候,往往需要突出显示文献列表作者的信息方便他人看到(假设研究成果以文献表的形 ...

  5. Latex 参考文献

    Latex 参考文献 参考文献格式的设置 总结 先后顺序 名是否缩写 姓和名的顺序 unsrt样式 plain样式 elsarticle-num样式 elsarticle-harv样式 elsarti ...

  6. 1.6 LaTex参考文献

    文章目录 文档内参考文献库 外部参考文献库   一篇正儿八经的的论文都需要有参考文献,表示你说的每句话都有正确的来源,不是胡说八道.LaTex参考文献有两种使用方式,一是文档外参考文献库,二是文档内参 ...

  7. Latex参考文献排版、引用及跳转

    @关于Latex参考文献引用及跳转Latex 一.参考文献排版 方法一:在文章最后\end{document}之前直接使用以下代码即可: \begin{thebibliography}{50} % 5 ...

  8. Latex参考文献生成与跳转(使用bibitem)

    最开始用的时候,用的bibtex,开开心心,还算比较简单的,但其实bibtex里面也有语法,在tex源文件中调用的时候,也会设置一些语法编译规则以及风格.但是往往有那种比较简单的,全部写在tex文件里 ...

  9. LaTeX参考文献规范(以IEEE Trans为例)

    LaTeX参考文献规范(以IEEE Trans为例) 在用LaTeX排版参考文献的时候,我们一般导入 \usepackage{cite} 后写一个references的bib文件,比如(Ref.bib ...

  10. latex参考文献Bib Tex的使用

    参考https://blog.csdn.net/caiandyong/article/details/70258670 1,新建文件,名为references.bib 2,找到文件,如arXiv中,点 ...

最新文章

  1. 赠票 | 2019,GMIS归来!杨强、吴恩达等全球重磅嘉宾共话数据智能(上海)
  2. 【对讲机的那点事】节日出游对讲机选择你了解多少?
  3. 推荐系统炼丹笔记:推荐系统Bias/Debias大全
  4. 2020牛客暑期多校训练营(第三场)
  5. Android N 去电流程,【私人备忘录】Android P 去电代码流程
  6. silverlight动态添加xaml物件
  7. 问题 J: 输出是m的倍数或n的倍数、但不是m和n的公倍数的数
  8. Linux centos hook,centos7 U盘安装卡在 starting dracut initqueue hook
  9. 自行车测速器怎么调_怎么测甲醛?
  10. 20190830每日一句
  11. 发动机冒黑烟_发动机总冒黑烟 用这招解决最快!
  12. 在MATLAB中的图例标注及实例说明
  13. HyperLPR车牌识别算法学习
  14. 首度亮相服贸会,亚马逊云科技如何演绎“大象起舞”?
  15. win10自动修复-无限循环【通用完美】超简单解决办法
  16. 14. Setting Ta and RTO【设置Ta和RTO】
  17. 数据库总结(五):创建与使用视图
  18. kermit的安装、配置、使用等
  19. java timsort_JDK(二)JDK1.8源码分析【排序】timsort
  20. 打造“财务中台”,浪潮云ERP助推企业业财融合、强化管控

热门文章

  1. 觉醒:游戏迷学了计算机
  2. 数字逻辑:时序逻辑元件——锁存器
  3. webwell安全工具-BeEF
  4. 代挂php源码,[PHP源码]开心QQ等级代挂源码,无后门任意搭建分站
  5. 《程序员健康指南》读书笔记
  6. 二进制炸弹--拆弹实验
  7. 数据分析课堂笔记Day10(20221123)
  8. 2021-07-06淘宝,天猫超市
  9. sigmoid和softmax
  10. 春招面经总结(获携程Offer)