forked from hushidong/biblatex-gb7714-2015
-
Notifications
You must be signed in to change notification settings - Fork 0
/
biblatex-gb7714-2015.tex
2680 lines (1992 loc) · 183 KB
/
biblatex-gb7714-2015.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
\documentclass[11pt]{article} %用draft选项找到badbox的位置 twoside,
\input{biblatex-gb7714-2015-preamble} %宏包和一些格式设置
\usepackage{microtype}
%\usepackage[russian,french,english]{babel}
%\DefineHyphenationExceptions{english}{conf-erence}
\begin{document}
\hyphenpenalty=100 %断词阈值,值越大越不容易出现断词
\tolerance=9000 %丑度,10000为最大无溢出盒子,参考the texbook 第6章
%------------------------------------------------------------
% 标题和目录
%------------------------------------------------------------
\pagestyle{plain}
\pagenumbering{Roman}
\titleformanual{符合GB/T 7714-2015标准的biblatex参考文献样式
\footnote{This Manual was created with biblatex v\versionofbiblatex, last revised at \today;\\%
Style Files (gb7714-2015*.*) have version number: \versionofgbtstyle.}
\footnote{repository address: \url{https://github.com/hushidong/biblatex-gb7714-2015}}}
\authorformanual{胡振震\setcounter{footnote}{0}\footnote{Email: [email protected]}}
\dateformanual{2016-07-01}
\titleandauthor
\begin{quotation}
biblatex-gb7714-2015 宏包是为满足《GB/T 7714-2015~~信息与文献~~参考文献著录规则》要求而开发的 biblatex 样式包。宏包提供两种编制样式: 一、顺序编码制(gb7714-2015);二、著者-出版年制(gb7714-2015ay),能够精确地实现国标提出的著录和标注格式,且具备易用、兼容、灵活等特点,能为国内\LaTeX{}用户提供一个可靠的参考文献生成工具。
%old:
%biblatex-gb7714-2015 样式宏包提供了符合《GB/T 7714-2015 信息与文献 参考文献
%著录规则》要求的 biblatex 参考文献样式。分为两种编制方式: 一、顺序编码制;二、著
%者-出版年制。配合 biblatex 宏包使用具有较高的兼容性、易用性和灵活性。宏包提供了
%详细的使用说明,为国内用户生成符合国标的参考文献表提供帮助。
\end{quotation}
\phantomsection
%\addcontentsline{toc}{section}{目录}
\tableofcontents
%\renewcommand{\numberline}[1]{#1~}
%\phantomsection
%\addcontentsline{toc}{section}{示例}
\listoffigures
\listoftables
\listofegcode
\newlength{\textparwd}
%------------------------------------------------------------
\newpage
\pagenumbering{arabic}
\pagestyle{fancy}
\section{概述}
《GB/T 7714-2015~~信息与文献~~参考文献著录规则》是国内科技文档参考文献著录的一般标准,国内多数大学、出版社、期刊编辑部对于学位论文、出版物、期刊论文的参考文献要求通常都基于该标准。对于\LaTeX{}用户来说,参考文献生成是典型的自动化应用,通常有两种方法,一是基于bibtex的传统方法,二是基于biblatex的新方法。生成符合GB/T 7714 标准要求的参考文献,这两条路子都已经实践多年。
基于biblatex的方法,早期有李志奇(icetea)的gbtstyle实现以及Casper Ti. Vector的caspervector样式,然而由于biblatex宏包升级、样式包维护和完善方面的问题,未能达到精确符合国标要求、且具备高可用性、兼容性和可维护性的理想状态。开发biblatex-gb7714-2015 样式包的初衷首先是基于当时这样的状态,其次也为解决很多实际应用中的问题,因此考虑如下原则:
\subsection{设计原则}
\begin{enumerate}
\item 兼容性
由于biblatex的持续升级,一些接口和功能的变化,会使得样式无法使用或者输出结果产生异变。因此biblatex-gb7714-2015宏包设计之初,就一直秉承兼容性原则,力图兼容各版本的biblatex,希望与biblatex v2.8 (in texlive2014) 以上所有版本适配(注意 ctex 2.9.4 的用户需升级 biblatex)。
出于兼容一些旧的bib文件的考虑,增加对传统参考文献条目类型比如www/electronic/conference/mastersthsis/phdthsis/techreport/standard等的支持。根据国标要求,考虑增加newspaper(报纸析出的文献)、database(数据库)、dataset(数据集)、 software(软件)、map(舆图)、archive(档案)等类型。也为兼容适用于不同样式的bib数据源,增加对一些自定义域的支持,比如gbt7714宏包的bst样式中mark和medium域。此外,也试图去完善样式在不同文档类包括beamer类中的使用问题。
\item 易用性
参考文献是\LaTeX{}自动化应用之一,尽可能让其自动完成,减少用户的人工干预,包括数据的准备、格式的调整等等。因此宏包试图减少用户对于bib文件的调整,只需要简单地输入文献本身的信息,或者从各类学术网站或利用zotero等工具下载参考文献数据即可,而不需要为了符合国标格式而去手动增添参考文献类型和载体标识等一些数据域,也不必为了文献语言分集、文献排序等去增加语言、排序关键字等数据域,这些所有工作都由宏包自动完成。
为了符合国标要求以及中文参考文献标注习惯,提供丰富的标注(引用)命令,用户只需熟悉几个命令的特性即能够完成两种编制样式下多样的标注格式,包括:顺序编码制的 \verb|\cite|(上标可设置页码)、 \verb|\parencite|(非上标可设置页码)、 \verb|\pagescite|(上标加自动页码)、 \verb|\textcite|(提供作者为主语加非上标编号)、 \verb|\authornumcite|(提供作者为主语加上标编号)、 \verb|\footfullcite|(脚注方式);著者-年份制的\verb|\cite|(作者加年份用括号包围可设置页码)、 \verb|\pagescite|(作者加年份用括号包围自动页码)、
\verb|\yearcite|(提供年份用括号包围)、 \verb|\yearpagescite|(提供年份用括号包围自动页码)、
\verb|\textcite|(提供主语作者加括号包围年份)、 \verb|\footfullcite|(脚注方式)。
习惯natbib的用户也可以直接使用 \verb|\citet| 和 \verb|\citep| 命令,
也提供一些习惯使用的命令,比如\verb|\citetns|、\verb|\citepns|、
\verb|\upcite|、\verb|\inlinecite|等让用户可以无缝衔接从bibtex转到biblatex。
另外,增加并完善对多语言混合文献表、多语言对照文献表的支持。不同语言文献可按文献自身语言录入,宏包自动识别语言并通过autolang选项自动完成语言切换,针对多语言对照文献表提供了基于条目集和关联条目概念的两种实现方式。
\item 灵活性
在考虑实现严格符合GB/T 7714-2015标准的格式外,也希望能够针对用户的特殊格式需求,提供方便灵活的定制方式,比如通过设置选项来达到格式的变化。为此,增加了多个方面的设置选项,使用户可以根据自己的需求灵活地调整。主要包括:
著录表排序选项:
sorting选项值(gb7714-2015支持以语言著者-出版年标题升序排列,gbnytd支持以语言著者-出版年标题降序排列,gbynta支持以语言年份作者标题升序排列,gbyntd支持以语言年份作者标题降序排列)、gblanorder 选项(可以设置不同的文种(语言)文献的排列顺序)、sortlocale 选项(可以设置本地语言的排序调整方案,比如zh\_\_pinyin支持汉字字符以拼音排序,zh\_\_stroke以笔画排序,auto/zh以unicode编码排序,zh\_\_gb2312han 以gb2312编码排序)。使用拼音排序时遇到多音字也可以利用key域解决。
著录项格式选项:
姓名格式调整(gbnamefmt选项,可以设置大写、小写、西语习惯用法、拼音习惯用法)、
出版项控制(gbpub选项,可设置出版项缺失时是否填补信息)、类型和载体标识控制(gbtype选项,可设置不输出)、
析出文献标识符控制(gbpunctin选项,可设置\texttt{//}不输出或其它表示形式)、
标题超链接控制(gbtitlelink选项,可设置标题超链接)、
作者项处理(gbnoauthor选项,可设置作者缺失时是否填补信息);
著录表格式选项和命令:
标签对齐控制(gbalign选项,可设置左、右、居中、项对齐方式)、
标签格式控制(gbbiblabel选项,可设置标签数字不同的包围符号)、
条目格式控制(gbstyle选项,利用gb7714-2015ms样式可实现中英文献分设不同格式)、
编制样式设置命令(利用\verb|\setaystylesection|和gb7714-2015mx样式实现不同文献节不同的编制方式)、
格式命令\verb|\bibauthorfont|可设置作者项字体、
格式命令\verb|\bibtitlefont|可设置标题项字体、
格式命令\verb|\bibpubfont|可设置出版项字体、
格式尺寸\verb|\bibitemindent|和\verb|\bibhang|可设置文献表的缩进、
文献标题控制(gbctexset选项,可设置标题内容由\verb|\bibname|或\verb|\refname|宏调整);
编码设置选项:
GBK编码兼容(gbcodegbk选项,可设置GBK编码文档编译)等等。
配合biblatex提供的选项、\verb|\bibfont|命令、\verb|\bibitemsep|间距等可以实现丰富的格式,包括标注和文献表采用不同样式、url/doi/isbn输出控制、标注和文献表中作者数量控制、文献表拼音或笔画排序等等。
\item 可维护性
宏包的长期使用价值体现在宏包的维护和更新上面,追求宏包具有高的可读性、可理解性、可维护性,可为宏包长期发挥作用提供帮助。由于biblatex已经是一个相当成熟完善的宏包,即便是在样式方面考虑也相当全面,这可能与西方出版界对于参考文献的多样且细致的要求有关。而国内只有一个通用标准就是GB/T 7714标准,且除了一些特殊需求要具体实现外,标准中大多数格式要求的实现完全可以借用biblatex提供的标准样式,因此既不需要重新造轮子,也可以使gb7714-2015样式与biblatex宏包的标准样式保持一致的结构、风格和习惯,这样可以大大增加代码可读性和可维护性。通过在biblatex原有样式基础上增加有限修改的方式,并且对代码加上详细注释,可以使得样式包维护者,只需通过学习biblatex,即可轻松理解gb7714-2015样式做的工作,比如做了哪些修改,为什么这么修改,实现了什么样的效果。
另外,为方便用户,样式包提供了全面、详实的说明,包括
GB/T 7714标准的理解和解释(\ref{sec:gbt:std}节)、
条目类型和域的理解和录入方法(\ref{sec:bib:bibtex}节)、
参考文献引用和文献表打印及其格式控制方法(\ref{sec:cbx:usage},\ref{sec:usage:bbx}节)、
\href{https://github.com/hushidong/biblatex-gb7714-2015/wiki}{biblatex和样式包基本使用方法}、
\href{https://github.com/hushidong/biblatex-solution-to-latex-bibliography/blob/master/biblatex-solution-to-latex-bibliography.pdf}%
{biblatex高级使用方法和样式包设计实现方法}等,可为用户快速入门和维护者深入理解提供有效帮助。
\end{enumerate}
%具体来讲,完成了4个方面的工作:
%\begin{enumerate}
% \item 完成了GB/T 7714-2015标准的完整实现,包括两种编制方式下的各类型参考文献著录格式和标注格式等基本内容,还包括: 双语文献格式,带页码的标注格式,著者年份制下仅有年的标注格式和文献按语言集中并自动排序,起止卷期自动解析,增加gbnoauthor选项控制著者年份制责任者缺省的处理,增加gbpub选项控制出版信息缺省时的处理,增加gbalign选项控制顺序编码制文献表的标签对齐方式,提供右对齐、左对齐和项对齐三种方式。
% \item 实现了用户文献数据录入优化,用户在录入参考文献数据时,只需要录入文献的实际信息即可,不需要录入文献标识符和载体标识符,无需录入language或者其它域信息来区分中英文参考文献,实现中英文自动判断并处理。支持一些特殊或老的条目类型,比如standard,newspaper,www,mastersthesis,phdthesis等。
% \item 实现了对biblatex不同版本的兼容,能够应用于biblatex3.2以前的老版本,也能用于3.3版姓名处理方式改变后的版本。即可以与texlive2014/2015/2016/2017配合使用,无需升级biblatex情况下直接使用biblatex-gb7714-2015宏包(即本样式)。
% \bc{当然 ctex2.9.4 的用户可能要升级一下biblatex,因为ctex多年没有更新,其中的biblatex版本过低}。
% \item 测试了样式文件在book/report/article文档类以及beamer类下的适用性,结果表明均能满足要求。文档详细介绍了样式文件的使用方法和注意事项,说明了各条目类型的著录格式及其在biblatex 中对应信息域的构成,以及域信息的录入方法,并严格按照GB/T 7714-2015 标准测试了各种类型的文献。
%\end{enumerate}
\subsection{宏包结构}
宏包文件结构如图\ref{fig:pkg:structure}所示:
\begin{figure}[!htb]
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\centering\footnotesize
\begin{tikzpicture}[node distance=1.5cm]
%\definecolor{bluea}{rgb}{0.05,0.62,0.94}
\ttfamily
\node[align=center,fill=gbyellow!15,text width=4cm,inner sep=8pt] (project) {\textcolor{black}{Biblatex-gb7714-2015}};
\node[align=center,below of=project,draw=red,thick,text width=3.5cm] (manual) {\textcolor{black}{Manual of Package}};
\node[align=center,left of=manual,xshift=-3cm,draw=blue,thick,text width=3.5cm] (style) {\textcolor{black}{Style Files}};
\node[align=center,right of=manual,xshift=3cm,draw=orange,thick,text width=3.5cm] (script) {\textcolor{black}{Compiling Scripts}};
\draw[color=cyan,thick] (project.south) -- (manual.north) ;
\draw[color=cyan,thick] (style.north) -- ($(style.north)+(0mm,3mm)$) ;
\draw[color=cyan,thick] (script.north) -- ($(script.north)+(0mm,3mm)$) ;
\draw[color=cyan,thick] ($(style.north)+(0mm,3mm)$) -- ($(script.north)+(0mm,3mm)$);
\node[below of=style,fill=gbgrey!20,yshift=0.5cm,xshift=2mm,text width=2cm] (numcbbx) {\tiny \textcolor{black}{gb7715-2015.c/bbx}};
\node[below of=numcbbx,fill=gbgrey!20,yshift=8mm,text width=2cm] (aycbbx) {\tiny \textcolor{black}{gb7715-2015ay.c/bbx}};
\node[below of=aycbbx,fill=gbgrey!20,yshift=8mm,text width=2cm] (mscbbx) {\tiny \textcolor{black}{gb7715-2015ms.c/bbx}};
\node[below of=mscbbx,fill=gbgrey!20,yshift=8mm,text width=2cm] (mxcbbx) {\tiny \textcolor{black}{gb7715-2015mx.c/bbx}};
\node[below of=mxcbbx,fill=gbgrey!20,yshift=8mm,text width=2cm] (gbkdef) {\tiny \textcolor{black}{gb7715-2015-gbk.def}};
\node[below of=gbkdef,fill=gbgrey!20,yshift=8mm,text width=2cm] (erjcbbx) {\tiny \textcolor{black}{chinese-erj.c/bbx}};
%\node[below of=msbbx,fill=gbgrey!20,yshift=8mm,text width=2cm] (mscbx) {\tiny \textcolor{black}{gb7715-2015ms.cbx}};
\draw[color=blue,semithick] (numcbbx.west) -- ($(numcbbx.west)+(-3mm,0mm)$) ;
\draw[color=blue,semithick] (aycbbx.west) -- ($(aycbbx.west)+(-3mm,0mm)$) ;
\draw[color=blue,semithick] (mscbbx.west) -- ($(mscbbx.west)+(-3mm,0mm)$) ;
\draw[color=blue,semithick] (mxcbbx.west) -- ($(mxcbbx.west)+(-3mm,0mm)$) ;
\draw[color=blue,semithick] (gbkdef.west) -- ($(gbkdef.west)+(-3mm,0mm)$) ;
\draw[color=blue,semithick] (erjcbbx.west) -- ($(erjcbbx.west)+(-3mm,0mm)$) ;
%\draw[color=blue,semithick] (mscbx.west) -- ($(mscbx.west)+(-3mm,0mm)$) ;
\draw[color=blue,semithick] ($(erjcbbx.west)+(-3mm,0mm)$) -- ($(style.center)+(-12mm,-2.5mm)$) ;
\node[below of=manual,fill=gbsteelblue!15,yshift=0.5cm,xshift=2mm,text width=2.8cm] (mtex) {\tiny \textcolor{black}{biblatex-gb7714-2015.tex}};
\node[below of=mtex,fill=gbsteelblue!15,yshift=8mm,text width=2.8cm] (mpdf) {\tiny \textcolor{black}{biblatex-gb7714-2015.pdf}};
\node[below of=mpdf,fill=gbsteelblue!15,yshift=8mm,text width=2.8cm] (egtex) {\tiny \textcolor{black}{example}};
\node[below of=egtex,fill=gbsteelblue!15,yshift=8mm,text width=2.8cm] (egbib) {\tiny \textcolor{black}{egfigure}};
\node[below of=egbib,fill=gbsteelblue!15,yshift=8mm,text width=2.8cm] (egthesis) {\tiny \textcolor{black}{egthesis}};
\draw[color=red,semithick] (mtex.west) -- ($(mtex.west)+(-3mm,0mm)$) ;
\draw[color=red,semithick] (mpdf.west) -- ($(mpdf.west)+(-3mm,0mm)$) ;
\draw[color=red,semithick] (egtex.west) -- ($(egtex.west)+(-3mm,0mm)$) ;
\draw[color=red,semithick] (egbib.west) -- ($(egbib.west)+(-3mm,0mm)$) ;
\draw[color=red,semithick] (egthesis.west) -- ($(egthesis.west)+(-3mm,0mm)$) ;
\draw[color=red,semithick] ($(egthesis.west)+(-3mm,0mm)$) -- ($(manual.center)+(-16mm,-2.5mm)$) ;
\node[below of=script,fill=gbblue!10,yshift=0.5cm,xshift=2mm,text width=2cm] (cpall) {\tiny \textcolor{black}{makeall.bat/sh}};
\node[below of=cpall,fill=gbblue!10,yshift=8mm,text width=2cm] (cpfil) {\tiny \textcolor{black}{makefile.bat/sh}};
\node[below of=cpfil,fill=gbblue!10,yshift=8mm,text width=2cm] (cpcln) {\tiny \textcolor{black}{makeclear.bat/sh}};
\node[below of=cpcln,fill=gbblue!10,yshift=8mm,text width=2cm] (plspt) {\tiny \textcolor{black}{gb7714text*.pl/dat}};
\draw[color=orange,semithick] (cpall.west) -- ($(cpall.west)+(-3mm,0mm)$) ;
\draw[color=orange,semithick] (cpfil.west) -- ($(cpfil.west)+(-3mm,0mm)$) ;
\draw[color=orange,semithick] (cpcln.west) -- ($(cpcln.west)+(-3mm,0mm)$) ;
\draw[color=orange,semithick] (plspt.west) -- ($(plspt.west)+(-3mm,0mm)$) ;
\draw[color=orange,semithick] ($(plspt.west)+(-3mm,0mm)$) -- ($(plspt.west)+(-3mm,28.1mm)$) ;
\end{tikzpicture}
\end{tcolorbox}
\caption{宏包文件结构}\label{fig:pkg:structure}
\end{figure}
其中,\zd{gb7714-2015.bbx/cbx}、\zd{gb7714-2015ay.bbx/cbx}分别为顺序编码制和著者年份制样式文件。
\zd{gb7714-2015ms.bbx/cbx}是混合样式,支持区分中英文语言分设不同标准的著录格式。
\zd{gb7714-2015mx.bbx/cbx}是混合样式,支持在不同的参考文献分节中使用不同的编制样式,比如有的节使用顺序编码制,有的节使用著者年份制。
\zd{gb7715-2015-gbk.def}为GBK编码文档编译所需的支撑文件。
\zd{chinese-erj.bbx/cbx} 是经济学研究期刊的文献样式。后三者仅支持较新的biblatex版本。
\zd{biblatex-gb7714-2015.tex} 为宏包说明文档,\zd{example}目录下为各种选项的测试用例,
\zd{egfigure}目录下为说明文档中的图例文档,\zd{egthesis}为国内一些大学学位论文文献样式的测试用例,包括完全按照国标的BUPT、CAU、ECNU、FDU、SJTU、THU、USTC、XJTU、ZJU,与国标略有差异的UCAS,以及与国标有较大差异的NWAFU、SEU等。\zd{*.bat}、\zd{*.sh}分别为windows和linux下说明文档的编译脚本。\zd{*.pl}为gb7714格式著录文献表到bib文件的perl转换脚本,\zd{*.dat}为转换测试文献表。
\subsection{最小示例}
基于biblatex宏包的参考文献生成方法非常简单,例 \ref{code:doc:structrue} 是一个最小工作示例。示例代码中给出了详细注释,介绍了使用biblatex 的tex源文档基本结构,其中gb7714-2015 样式随biblatex宏包加载,
参考文献数据文件example.bib(bib文件需另外准备,详见\ref{sec:bib:bibtex}节)利用 \verb|\addbibresource|加载,文献表利用 \verb|\printbibliography| 命令输出(可在正文任意位置)。所有基于 biblatex 生成参考文献的文档无论大小万变不离其宗。
若需更全面了解biblatex及参考文献生成高级功能另可参考:
\href{https://github.com/plk/biblatex}{biblatex宏包手册}
\footnote{地址:\url{https://github.com/plk/biblatex}}、
\href{https://github.com/hushidong/biblatex-zh-cn}{中文版}
\footnote{地址:\url{https://github.com/hushidong/biblatex-zh-cn}}
或者
\href{https://github.com/hushidong/biblatex-solution-to-latex-bibliography}{LaTeX 文档中文参考文献的biblatex解决方案}
\footnote{地址:%
\url{https://github.com/hushidong/biblatex-solution-to-latex-bibliography}}。
\begin{example}{biblatex参考文献生成的最小工作示例}{code:doc:structrue}
\begin{texlist}
\documentclass{article}%文档类 %导言区开始:
\usepackage{ctex}%加载ctex宏包,中文支持
%加载geometry宏包,定义版面
\usepackage[left=20mm,right=20mm,top=25mm, bottom=15mm]{geometry}
%加载hyperref宏包,使用超链接
\usepackage[colorlinks=true,pdfstartview=FitH,linkcolor=blue,anchorcolor=violet,citecolor=magenta]{hyperref}
%参考文献工具,加载biblatex宏包,,其后端backend使用biber,%标注(引用)样式citestyle,著录样式bibstyle都采用gb7714-2015样式,两者相同时可以合并为一个选项style
\usepackage[backend=biber,style=gb7714-2015]{biblatex}
%biblatex宏包的参考文献数据源加载方式
\addbibresource[location=local]{example.bib}
\begin{document}%正文区开始:
%正文内容,引用参考文献
详见文献\cite{Peebles2001-100-100}\parencite{Babu2014--}
另见文献\cite[49]{于潇2012-1518-1523}\parencite[106]{Babu2014--}
%打印参考文献表
\printbibliography[heading=bibliography,title=参考文献]
\end{document}
\end{texlist}
\end{example}
\subsection{编译方式}
与基于bibtex传统方法的四步编译不同,基于biblatex生成参考文献一般只需三步编译,第一遍xelatex,第二遍biber,第三遍xelatex。如若需要后向超链接,则除设置backref 选项外,还需第四遍 xelatex 编译。例\ref{eg:compile:cmd} 给出编译命令,其中\verb|--synctex=-1| 选项也可以是-synctex=1。另外四步命令可以用一条 latexmk 命令代替。
关于非utf-8编码文档和使用pdflatex命令编译的细节另见第\ref{sec:pkg:hints}节。
\begin{example}{文档编译命令}{eg:compile:cmd}
\begin{texlist}
%四步编译命令
xelatex --synctex=-1 jobname.tex
biber jobname
xelatex --synctex=-1 jobname.tex
xelatex --synctex=-1 jobname.tex
%或采用latexmk,则仅需一条命令
latexmk -xelatex jobname.tex
\end{texlist}
\end{example}
前述的最小工作示例的编译结果如图\ref{fig:eg:ref}所示。
\begin{refsection}
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\includegraphics*[page=1,viewport=0cm 0.4cm 14cm 6.1cm,clip=true]{egfigure/egmwe.pdf}
%\deflength{\textparwd}{\linewidth-1.5cm}
%\begin{minipage}{\textparwd}
%\fbox{\parbox{\textparwd}{%\raggedright
%详见文献\cite{Peebles2001-100-100}\parencite{Babu2014--}
%另见文献\cite[49]{于潇2012-1518-1523}\parencite[106]{Babu2014--}
%\renewcommand{\bibfont}{\zihao{-5}}
%{
%\hyphenation{conference}
%\hyphenpenalty=100 %断词阈值,值越大越不容易出现断词
%\tolerance=100 %丑度,10000为最大无溢出盒子,参考the texbook 第6章
%\printbibliography[heading=subbibliography,title=参考文献]
%\par}
%}}
%\end{minipage}
\end{tcolorbox}
\caption{最小工作示例编译生成的PDF文档}\label{fig:eg:ref}
\end{figure}
\end{refsection}
\section{使用说明}
\subsection{样式及选项加载}
\subsubsection{几种样式}
例\ref{code:doc:structrue}中给出了宏包和样式的基本加载方式,选项的加载也类似。比如:
\pdfbookmark[4]{gb7714-2015}{stygb7714-2015}
\begin{example}{顺序编码制(gb7714-2015)加载方式}{eg:gb7714numeric}
\begin{texlist}
%简单方式:
\usepackage[backend=biber,style=gb7714-2015]{biblatex}
%设置gbalign选项以改变文献表序号标签对齐方式,设置gbpub=false取消缺省出版项自填补信息,比如:
\usepackage[backend=biber,style=gb7714-2015,gbalign=gb7714-2015,gbpub=false]{biblatex}
%当文档为GBK编码且用pdflatex/latex编译时,应设置选项gbcodegbk=true:
\usepackage[backend=biber,style=gb7714-2015,gbcodegbk=true]{biblatex}
\end{texlist}
\end{example}
\pdfbookmark[4]{gb7714-2015ay}{stygb7714-2015ay}
\begin{example}{著者-出版年制(gb7714-2015ay)加载方式}{eg:gb7714authoryear}
\begin{texlist}
%简单方式:
\usepackage[backend=biber,style=gb7714-2015ay]{biblatex}
%设置gbnoauthor=true以使用佚名或NOAUTHOR填补缺失的author信息:
\usepackage[backend=biber,style=gb7714-2015ay,gbnoauthor=true]{biblatex}
\end{texlist}
\end{example}
\pdfbookmark[4]{gb7714-2015ms}{stygb7714-2015ms}
\begin{example}{同一文献表中不同语言区分著录格式的样式(gb7714-2015ms)}{eg:gb7714ms}
\begin{texlist}
%默认方式,所有文献使用一种著录格式,即GB/T 7714-2015样式
\usepackage[backend=biber,style=gb7714-2015ms]{biblatex}
%设置gbstyle=false,则中文文献使用GB/T 7714-2015著录格式,而其它语言文献使用biblatex标准样式
\usepackage[backend=biber,style=gb7714-2015ms,gbstyle=false]{biblatex}
\end{texlist}
\end{example}
格式效果如图\ref{fig:eg:ms}所示。
\pdfbookmark[4]{gb7714-2015mx}{stygb7714-2015mx}
\begin{example}{同一文档中不同文献分节区分不同著录格式的样式(gb7714-2015mx)}{eg:gb7714mx}
\begin{texlist}
%默认方式使用顺序编码制样式
\usepackage[backend=biber,style=gb7714-2015mx]{biblatex}
%如需在某一参考文件分节使用著者年份制样式,比如第2个refsection中使用时,则在导言区设置:
\setaystylesection{2}
\end{texlist}
\end{example}
格式效果如图\ref{fig:eg:mx}所示。
\begin{example}{参考文献文本转换为bib文件perl脚本使用方式}{eg:transtobib}
\begin{texlist}
perl gb7714texttobib.pl in=textfilename out=bibfilename
\end{texlist}
\end{example}
其中,v1.0m版本增加的gb7714-2015ms样式文件,主要是为了在一个文献表中针对不同语言使用不同多种样式,比如中文文献使用GB/T 7714-2015规定的著录格式,而其它语言文献使用biblatex提供的标准样式。v1.0r版本增加了gb7714-2015mx样式,主要是为了在一个文档中针对不同参考文献分节使用不同的参考文献样式,比如某些节使用著者年份制,某些节使用顺序编码制。尽管这些方式不常用,但偶尔也有需求,所以都做了实现。
另外应ddswhu要求,v1.0r版本增加了chinese-erj样式用于生成经济研究期刊的文献。且在egthesis文件夹内,针对国内一些大学的学位论文文献要求,基于国标样式做了一些定制和测试。
\pdfbookmark[4]{chinese-erj}{chinese-erj}
\begin{example}{经济研究期刊文献样式(chinese-erj)}{eg:gbchineseerj}
\begin{texlist}
%使用经济研究期刊文献样式
\usepackage[backend=biber,style=chinese-erj]{biblatex}
\end{texlist}
\end{example}
\subsubsection{新增选项}\label{sec:added:opt}
样式包新增了一些选项,用于标签对齐方式、出版项缺省处理、责任者(作者)缺省处理等功能的控制,其使用方式与biblatex宏包选项完全相同:
\begin{description}
\pdfbookmark[4]{gbalign}{gbalign}
\item[gbalign]=\textbf{right},left,center,gb7714-2015. \hfill default is right
为顺序编码制增加的选项,用于选择参考文献表序号标签的对齐方式。
\begin{itemize}
\item gbalign=right,默认的list环境中的标签右对齐;
\item gbalign=left,是list环境中的标签左对齐;
\item gbalign=center,是list环境中的等宽标签,数字在[]内居中;
\item gbalign=gb7714-2015,是项对齐方式,即段落环境中标签使用原始宽度,标签与条目内容等间距。
\end{itemize}
该选项对著者年份制无效。顺序编码制序号标签对齐方式测试,
数字在标签内居中见:
\href{run:./example/opt-gbalign-center.tex}{opt-gbalign-center.tex},
标签左对齐见:
\href{run:./example/opt-gbalign-left.tex}{opt-gbalign-left.tex},
项对齐(标签与内容等间距)见:
\href{run:./example/opt-gbalign-gb.tex}{opt-gbalign-gb.tex}。
效果示例如图\ref{fig:eg:optgbalign}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbalign=right 即右对齐]{\parbox{0.5\linewidth}{\includegraphics*[page=4,viewport=1cm 0cm 8cm 4.5cm,clip=true]{egphoto/opt-gbalign-right.pdf}}}
\subfigure[\heiti gbalign=left 即左对齐]{\parbox{0.5\linewidth}{\includegraphics*[page=4,viewport=1cm 0cm 8cm 4.5cm,clip=true]{egphoto/opt-gbalign-left.pdf}}}\\
\subfigure[\heiti gbalign=center 即中对齐]{\parbox{0.5\linewidth}{\includegraphics*[page=4,viewport=1cm 0cm 8cm 4.5cm,clip=true]{egphoto/opt-gbalign-center.pdf}}}
\subfigure[\heiti gbalign=gb7714-2015 即项对齐]{\parbox{0.5\linewidth}{\includegraphics*[page=4,viewport=1cm 0cm 8cm 4.5cm,clip=true]{egphoto/opt-gbalign-gb.pdf}}}
\end{tcolorbox}
\caption{文献表标签对齐选项gbalign效果}\label{fig:eg:optgbalign}
\end{figure}
\pdfbookmark[4]{gbpub}{gbpub}
\item[gbpub]=\textbf{true},false. \hfill default is true
为控制出版信息缺失处理增加的选项。
\begin{itemize}
\item gbpub=true,自动利用:[出版地不详]、[出版者不详]、[S.l.]、[s.n.]等填补缺省信息;
\item gbpub=false 则取消自动处理,使用标准样式的方式取消相应项的输出。
\end{itemize}
顺序编码制测试(著者年份制类似)见:
\href{run:./example/opt-gbpub-true.tex}{opt-gbpub-true.tex},
\href{run:./example/opt-gbpub-false.tex}{opt-gbpub-false.tex}。
效果示例如图\ref{fig:eg:optgbpub}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbpub=false 出版项缺省]{\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0cm 9cm 4.5cm,clip=true]{egphoto/opt-gbpub-false.pdf}}}
\subfigure[\heiti gbpub=true 出版项补充]{\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0cm 10cm 4.5cm,clip=true]{egphoto/opt-gbpub-true.pdf}}}
\end{tcolorbox}
\caption{文献表出版项缺失处理选项gbpub效果}\label{fig:eg:optgbpub}
\end{figure}
\pdfbookmark[4]{gbnoauthor}{gbnoauthor}
\item[gbnoauthor]=true,\textbf{false}. \hfill default is false
为著者年份制增加的选项,用于控制责任者缺失时的处理。
\begin{itemize}
\item gbnoauthor=false,当作者信息缺失时默认不做处理,使用标准样式的处理方式;
\item gbnoauthor=true,则根据GB/T 7714-2015 的要求进行处理,中文文献使用“佚名”来代替author,英文文献用“Anon”来代替author。
\end{itemize}
测试结果见:
\href{run:./example/opt-gbnoauthor-true.tex}{opt-gbnoauthor-true.tex},
\href{run:./example/opt-gbnoauthor-false.tex}{opt-gbnoauthor-false.tex}。
效果示例如图\ref{fig:eg:optgbnoauthor}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbnoauthor=true] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.4cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gbnoauthor-true.pdf}}}
\subfigure[\heiti gbnoauthor=false] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.4cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gbnoauthor-false.pdf}}}
\end{tcolorbox}
\caption{文献表作者缺失处理选项gbnoauthor效果}\label{fig:eg:optgbnoauthor}
\end{figure}
\pdfbookmark[4]{gbbiblabel}{gbbiblabel}
\item[gbbiblabel]=\textbf{bracket},parens,plain,dot,box,circle. \hfill default is bracket
为顺序编码制增加的选项,用于选择参考文献表序号数字的格式。
\begin{itemize}
\item gbbiblabel=bracket,序号数字由方括号包围,比如[1];
\item gbbiblabel=parens,序号数字由圆括号包围,比如(1);
\item gbbiblabel=dot,序号数字数字后面加点,比如1.;
\item gbbiblabel=plain,序号数字无装饰,比如1;
\item gbbiblabel=box,序号数字由方框包围,比如\framebox{1};
\item gbbiblabel=circle,序号数字由圆圈包围,比如\textcircled{1}。
\end{itemize}
效果示例如图\ref{fig:eg:optgbbiblabel}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbbiblabel=box] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbbiblabela.pdf}}}
\subfigure[\heiti gbbiblabel=bracket] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbbiblabelb.pdf}}}\\
\subfigure[\heiti gbbiblabel=parens] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbbiblabelc.pdf}}}
\subfigure[\heiti gbbiblabel=dot] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbbiblabeld.pdf}}}\\
\subfigure[\heiti gbbiblabel=plain] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbbiblabele.pdf}}}
\subfigure[\heiti gbbiblabel=circle] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbbiblabelf.pdf}}}\\
\end{tcolorbox}
\caption{文献表标签数字格式选项gbbiblabel效果}\label{fig:eg:optgbbiblabel}
\end{figure}
\pdfbookmark[4]{gbnamefmt}{gbnamefmt}
\item[gbnamefmt]=\textbf{uppercase},lowercase,givenahead,familyahead,pinyin. \hfill default is uppercase
为姓名大小写格式控制增加的选项。
\begin{itemize}
\item gbnamefmt=uppercase,使大小写符合GB/T 7714-2015 的要求;
\item gbnamefmt=lowercase,大小写由输入信息确定不做改变;
\item gbnamefmt=givenahead,姓名的格式与biblatex标准样式的given-family格式一致,即名在前姓在后,类似于ieee的样式;
\item gbnamefmt=familyahead时,姓名的格式与biblatex 标准样式的family-given格式一致,即姓在前名在后,类似于APA 的样式;
\item gbnamefmt=pinyin 时,姓名的格式采用一种常见的中文拼音方式,比如对于 Zhao, Yu Xin 或 Yu Xin Zhao 这个姓名拼音格式化为ZHAO Yu-xin。
\item gbnamefmt=reverseorder 时,姓名的格式与biblatex 标准样式的family-given/ given-family格式一致,常用于经济学类的文献。
\end{itemize}
\bc{注意:还可以利用 nameformat 域为某一具体条目设置该条目的姓名格式,比如:要在一个文献表中实现英文文献是givenahead 格式,而拼音的文献是pinyin风格,那么可以设置拼音文献的 nameformat 域为pinyin,而gbnamefmt设置为givenahead。条目中nameformat 域的局部设置优先于gbnamefmt的全局设置。}\par
\emph{注意:使用pinyin选项时,bib文件中文献的作者应给出完整的名而不是缩写,否则出来的效果未必令人满意}。
测试结果见:
\href{run:./example/opt-gbnamefmt.tex}{opt-gbnamefmt.tex},
\href{run:./example/opt-gbnamefmt-default.tex}{opt-gbnamefmt-default.tex}。
效果示例如图\ref{fig:eg:optgbnamefmt}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbnamefmt=uppercase] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbnamefmt-a.pdf}}}
\subfigure[\heiti gbnamefmt=lowercase] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbnamefmt-b.pdf}}}\\
\subfigure[\heiti gbnamefmt=givenahead] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbnamefmt-c.pdf}}}
\subfigure[\heiti gbnamefmt=familyahead] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbnamefmt-d.pdf}}}\\
\subfigure[\heiti gbnamefmt=pinyin] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbnamefmt-e.pdf}}}
\subfigure[\heiti gbnamefmt=reverseorder] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbnamefmt-f.pdf}}}\\
\end{tcolorbox}
\caption{文献表姓名格式选项gbnamefmt效果}\label{fig:eg:optgbnamefmt}
\end{figure}
\pdfbookmark[4]{gbtype}{gbtype}
\item[gbtype]=\textbf{true},false. \hfill default is true
为控制是否输出题名后面的文献类型和载体标识符而增加的选项。
\begin{itemize}
\item gbtype=true,根据GB/T 7714-2015 要求输出标识符,例如“在线的期刊析出文献题名[J/OL]”。
\item gbtype=false,则不输出标识符,例如“在线的期刊析出文献题名”。
\end{itemize}
效果示例如图\ref{fig:eg:optgbtype}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbtype=true] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbtype-true.pdf}}}
\subfigure[\heiti gbtype=false] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbtype-false.pdf}}}
\end{tcolorbox}
\caption{文献类型标识符输出控制选项}\label{fig:eg:optgbtype}
\end{figure}
\pdfbookmark[4]{gbmedium}{gbmedium}
\item[gbmedium]=\textbf{true},false. \hfill default is true
为控制是否输出题名后面的文献载体标识符而增加的选项。
\begin{itemize}
\item gbmedium=true,根据GB/T 7714-2015 要求输出载体标识符,例如“在线的期刊析出文献题名[J/OL]”。
\item gbmedium=false,则不输出标识符,例如“在线的期刊析出文献题名[J]”。
\end{itemize}
注意:gbtype选项是更大范围的控制,包括了gbmedium。当gbtype=false时,无所谓gbmedium设置什么,因为整个文献类型和载体标识符整个都不显示,而gbmedium只是设置载体标识的。
效果示例如图\ref{fig:eg:optgbmedium}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbmedium=true] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbmedium-true.pdf}}}
\subfigure[\heiti gbmedium=false] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 8cm 2.8cm,clip=true]{egphoto/opt-gbmedium-false.pdf}}}
\end{tcolorbox}
\caption{文献载体标识符输出控制选项}\label{fig:eg:optgbmedium}
\end{figure}
\pdfbookmark[4]{gbfieldtype}{gbfieldtype}
\item[gbfieldtype]=true,\textbf{false}. \hfill default is false
为控制是否输出type域而增加的选项。
\begin{itemize}
\item gbfieldtype=true,输出type域,例如学位论文的phdthesis或博士学位论文。输出该域时做中英文区分。
\item gbfieldtype=false,不输出type域。
要设置博士或硕士学位论文的输出,有两种途径: 一是设置本地化字符串: \\
\lstinline!\DefineBibliographyStrings{english}{mathesis={str you want ma thesis}}!, \\
\lstinline!\DefineBibliographyStrings{english}{mathesiscn={硕士学位论文}}!, \\
\lstinline!\DefineBibliographyStrings{english}{phdthesis={str you want for phd thesis}}!, \\
\lstinline!\DefineBibliographyStrings{english}{phdthesiscn={博士学位论文}}!, \\
之所以用加cn的本地化字符串是为了适应某些样式对中英文文献的区别设置。
二是设置type域,比如在bib文件直接设置需要输出的字符,比如type=\{[博士学位论文]\}。
\end{itemize}
效果示例如图\ref{fig:eg:optgbfieldtype}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbfieldtype=true] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=8cm 0.2cm 14.5cm 2.8cm,clip=true]{egphoto/opt-gbfieldtype-true.pdf}}}
\subfigure[\heiti gbfieldtype=false] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=8cm 0.2cm 14.5cm 2.8cm,clip=true]{egphoto/opt-gbfieldtype-false.pdf}}}
\end{tcolorbox}
\caption{文献表类型(type)域输出控制选项}\label{fig:eg:optgbfieldtype}
\end{figure}
\pdfbookmark[4]{gbpunctin}{gbpunctin}
\item[gbpunctin]=\textbf{true},false. \hfill default is true
为控制inbook,incollection,inproceedings中析出来源文献前的\texttt{//}符号而增加的选项。
\begin{itemize}
\item gbpunctin=true,根据GB/T 7714-2015 要求输出\texttt{//}。
\item gbpunctin=false,则输出默认的本地字符串,
在英语中是\texttt{in:},若要完全去掉该符号则可以在导言区增加命令
\lstinline!\DefineBibliographyStrings{english}{in={}}!,\lstinline!\DefineBibliographyStrings{english}{incn={}}!。
之所以用加cn的本地化字符串是为了适应某些样式对中英文文献的区别设置。
\end{itemize}
效果示例如图\ref{fig:eg:optgbpunctin}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbpunctin=true] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gbpunctin-true.pdf}}}
\subfigure[\heiti gbpunctin=false] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gbpunctin-false.pdf}}}
\end{tcolorbox}
\caption{析出文献标识符号控制选项}\label{fig:eg:optgbpunctin}
\end{figure}
\pdfbookmark[4]{gbtitlelink}{gbtitlelink}
\item[gbtitlelink]=true,\textbf{false}. \hfill default is false
为设置标题的超链接增加的选项。
\begin{itemize}
\item gbtitlelink=false,即默认不给标题设置超链接。
\item gbtitlelink=true,当文献存在url 域时为文献标题设置超链接。
\end{itemize}
测试文件见:
\href{run:example/opt-gbtitlelink.tex}{opt-gbtitlelink.tex}。
效果示例如图\ref{fig:eg:optgbtitlelink}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbtitlelink=true] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gbtitlelink-true.pdf}}}
\subfigure[\heiti gbtitlelink=false] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gbtitlelink-false.pdf}}}
\end{tcolorbox}
\caption{文献标题超链接控制选项}\label{fig:eg:optgbtitlelink}
\end{figure}
\pdfbookmark[4]{gblocal}{gblocal}
\item[gblocal]=\textbf{gb7714-2015},chinese,english. \hfill default is gb7714-2015
\item[gbcitelocal]=\textbf{gb7714-2015},chinese,english. \hfill default is gb7714-2015
\item[gbbiblocal]=\textbf{gb7714-2015},chinese,english. \hfill default is gb7714-2015
为设置引用标注标签和文献表中的本地化字符串而增加的选项。其中gbcitelocal 用于控制标注中的本地化字符串,而gbbiblocal用于控制文献表中的本地化字符串,gblocal选项等价于同时设置gbcitelocal 和 gbbiblocal。
配合\lstinline[breaklines=true]!\DefineBibliographyStrings!命令对本地化字符串进行设置可以实现一些特殊的效果。图\ref{fig:content:fmtc}就是该选项的一个使用示例。
\begin{itemize}
\item gblocal=gb7714-2015,即默认区分中英文,不同语言采用不同的字符串比如中文使用“等”“和”,而英文使用“et al.”“and”。
\item gblocal=chinese,强制设置所有的本地化字符串使用中文。
\item gblocal=english,强制设置所有的本地化字符串使用英文。
\end{itemize}
测试文件见:
\href{run:egfigure/egcontentfmtc.tex}{egcontentfmtc.tex}。
效果示例如图\ref{fig:eg:optgblocal}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\centering
\subfigure[\heiti gblocal=gb7714-2015] {\parbox{0.45\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gblocal-gb.pdf}}}\hfill
\subfigure[\heiti gblocal=chinese] {\parbox{0.45\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gblocal-chinese.pdf}}}\\
\subfigure[\heiti gblocal=english] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 2.8cm,clip=true]{egphoto/opt-gblocal-english.pdf}}}
\end{tcolorbox}
\caption{常用本地化字符串的中英文控制选项}\label{fig:eg:optgblocal}
\end{figure}
\pdfbookmark[4]{mergedate}{mergedate}
\item[mergedate]=true,false,none.
为著者年份制是否在文献表中作者后面输出日期信息而增加了选项值none。
\begin{itemize}
\item mergedate=true,著者年份制文献表仅在作者后输出日期
\item mergedate=false,著者年份制文献表在作者后和出版项中输出日期
\item mergedate=none,著者年份制文献表仅在出版项中输出日期。该选项用于满足中科院大学的著者年份制格式要求。
\item no mergedate,即不给出该选项,这是gb7714-2015ay默认的情况,仅在作者后输出日期且已经根据国标格式化。
\end{itemize}
效果示例如图\ref{fig:eg:optmergedate}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti mergedate 不给出] {\parbox{\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 14.5cm 2.8cm,clip=true]{egphoto/opt-mergedate-a.pdf}}}\\
\subfigure[\heiti mergedate=true] {\parbox{\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 14.5cm 2.8cm,clip=true]{egphoto/opt-mergedate-b.pdf}}}\\
\subfigure[\heiti mergedate=false] {\parbox{\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 14.5cm 2.8cm,clip=true]{egphoto/opt-mergedate-c.pdf}}}\\
\subfigure[\heiti mergedate=none] {\parbox{\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 14.5cm 2.8cm,clip=true]{egphoto/opt-mergedate-d.pdf}}}\\
\end{tcolorbox}
\caption{作者年制文献表年份格式控制选项}\label{fig:eg:optmergedate}
\end{figure}
\pdfbookmark[4]{gblanorder}{gblanorder}
\item[gblanorder]=\textbf{chineseahead},englishahead,userdefinedstr like:cn;en;ru;fr;jp;kr . \hfill default is chineseahead
为著者年份制文献不同文种分集排序而增加的选项。
\begin{itemize}
\item gblanorder=chineseahead,即默认做中文文献在前英文文献在后的排序,各语言顺序为: cn;jp;kr;en;fr;ru。
\item gblanorder=englishahead,做英文在前中文文献在后的排序,各语言顺序为: en;fr;ru;cn;jp;kr。
\item gblanorder=自定义字符串,比如cn;en;ru;fr;jp;kr。这是一个用分号分隔的语言缩写名构成的字符串,缩写名的前后顺序代表文献表中文种分集的顺序。
\end{itemize}
测试文档见:\href{run:./example/opt-gblanorder.tex}{opt-gblanorder.tex}。
效果示例如图\ref{fig:eg:optgblanorder}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\centering
\subfigure[\heiti gblanorder=chineseahead] {\parbox{0.45\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 4.0cm,clip=true]{egphoto/opt-gblanorder-chineseahead.pdf}}}\hfill
\subfigure[\heiti gblanorder=englishahead] {\parbox{0.45\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 4.0cm,clip=true]{egphoto/opt-gblanorder-englishahead.pdf}}}\\
\subfigure[\heiti gblanorder=cn;en;ru;fr;jp;kr] {\parbox{0.5\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 7.5cm 4.0cm,clip=true]{egphoto/opt-gblanorder-udf.pdf}}}
\end{tcolorbox}
\caption{多语言文献表语言排序控制选项}\label{fig:eg:optgblanorder}
\end{figure}
\pdfbookmark[4]{gbannote}{gbannote}
\item[gbannote]=true,\textbf{false}. \hfill default is false
为控制是否在文献条目后面输出由annotation或annote域提供的注释信息而增加的选项。
\begin{itemize}
\item gbannote=false,即默认不输出。
\item gbannote=true,输出注释信息。
\end{itemize}
测试文档见:\href{run:./example/opt-gbannote.tex}{opt-gbannote.tex}。
效果示例如图\ref{fig:eg:optgbannote}所示。
\begin{figure}[!htb]
\centering
\begin{tcolorbox}[left skip=0pt,right skip=0pt,%
width=\linewidth,colframe=gblabelcolor,colback=white,arc=0pt,%
leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\subfigure[\heiti gbannote=true] {\parbox{\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 16cm 2.8cm,clip=true]{egphoto/opt-gbannote-true.pdf}}}\\
\subfigure[\heiti gbannote=false] {\parbox{\linewidth}{\includegraphics*[page=1,viewport=1cm 0.2cm 16cm 2.8cm,clip=true]{egphoto/opt-gbannote-false.pdf}}}
\end{tcolorbox}
\caption{文献的附加注释输出控制选项}\label{fig:eg:optgbannote}
\end{figure}
\pdfbookmark[4]{gbctexset}{gbctexset}
\item[gbctexset]=\textbf{true},false. \hfill default is true
为控制参考文献标题内容的设置方式增加的选项。
\begin{itemize}
\item gbctexset=true,参考文献标题内容可以通过重定义 bibname 或 refname 宏设置。比如利用ctex宏包进行设置:
\lstinline[breaklines]!\ctexset{bibname={title you want}}!
\item gbctexset=false,参考文献标题内容可以通过重定义本地字符串设置,比如:
\lstinline[breaklines=true]!\DefineBibliographyStrings{english}{bibliography={title you want}}!
\lstinline[breaklines=true]!\DefineBibliographyStrings{english}{references={title you want}}!。
\end{itemize}
当然除此之外,利用 printbibliography 命令的 title 选项进行设置依然是最有效方式,比如:
\lstinline[breaklines=true]!\printbibliography[title=title you want]!。
\pdfbookmark[4]{gbcodegbk}{gbcodegbk}
\item[gbcodegbk]=true,\textbf{false}. \hfill default is false
为兼容GBK编码的文档增加的选项。
\begin{itemize}
\item gbcodegbk=false,即默认是utf-8编码的文档。
\item gbcodegbk=true,为利用pdflatex/latex编译GBK编码文档时使用。
\end{itemize}
当在源文档前面增加 XeTeX 原语:\lstinline!\XeTeXinputencoding "GBK"! 后,GBK编码的文档也可以使用xelatex编译,这时应设置为false或不给出该选项。测试文件见:
\href{run:example/codeopt-gbcodegbk.tex}{codeopt-gbcodegbk.tex}。
\pdfbookmark[4]{gbstyle}{gbstyle}
\item[gbstyle]=\textbf{true},false. \hfill default is true
为实现多种样式并存而增加的选项。仅用于gb7714-2015ms样式中。
\begin{itemize}
\item gbstyle=true,即默认全部文献使用gb7714-2015样式。
\item gbstyle=false,仅中文文献使用gb7714-2015样式,其它语言文献使用biblatex默认样式。
\end{itemize}
该选项的实现原理是把所有国标格式设置局部化到每一条文献打印时,处理时首先判断gbstyle 选项及文献的语言,当满足要求则使用这些局部化格式,否则使用默认的标准样式。这种实现为一篇文档内实现两种样式提供解决思路,尽管目前非中文语言文献的著录格式是标准样式,但只要对标准样式做进一步的修改就可以形成符合某种格式规范的样式,比如像ieee,nature等的样式。因此存在中文使用GB/T 7714-2015 著录格式,而英文文献使用ieee等著录格式的可能性。测试文档见:\href{run:./example/opt-gbstyle.tex}{opt-gbstyle.tex}。
\pdfbookmark[4]{gbfootbib}{gbfootbib}
\item[gbfootbib]=true,\textbf{false}. \hfill default is false
为实现国标样式的脚注文献表格式而增加的选项。
\begin{itemize}
\item gbfootbib=true,即默认做处理使脚注文献表满足国标要求。
\item gbfootbib=false,不做任何附加处理。
\end{itemize}
该选项的实现主要是两个方面:
一是实现国标要求的脚注标签和段落格式,利用对
\verb|\@makefnmark|重定义实现正文脚注标签带圈上标,
利用对\verb|\@makefntext|做patch局部化重设\verb|\@makefnmark|使得脚注中的标签不上标,利用对latex核心代码和hyperref宏包代码的重定义实现悬挂缩进的格式。
二是实现国标要求的相同文献不输出内容,而是用标签代替,比如同\textcircled{4} ,主要利用citetracker 选项实现对文献引用的追踪,然后利用ifciteseen 判断和对footfullcite 命令做修改实现。
测试文档见:\href{run:./example/opt-gbfootbib.tex}{opt-gbfootbib.tex}。
同时为了方便脚注的对齐格式控制增加了两个尺寸:\verb|\footbibmargin|和\verb|\footbiblabelsep|,分别表示脚注文本的左侧缩进距离和悬挂的脚注标记标签与脚注文本的间隔距离,默认分别是1em和0.5em。如果要修改悬挂对齐为其它对齐方式,那么需要重定义\verb|\@makefntext|宏,目前悬挂对齐的实现方式见bbx文件。比如示例中重定义这两个尺寸为2em 和1em:
{\small
\vspace{1ex}
\centering
\fbox{
\setlength{\footbibmargin}{2em}%脚注的段落左侧缩进距离
\setlength{\footbiblabelsep}{1em}%脚注中标记号与脚注段落的间距
\begin{minipage}{0.75\linewidth}
脚注\footnote{中文脚注中文脚注中文脚注中文脚注中文脚注中文脚注中文脚注中文脚注中文脚注中文脚注}
脚注\footnote{English footnote English footnote English footnote English footnote English footnote}
\end{minipage}}
\vspace{1ex}
}
需要注意的是,由于图表标题(caption)环境的特殊性,在其中使用footfullcite可能无法得到正常的脚注文献表。而通常的方法是利用footnotemark和footnotetext来实现脚注,对于文献表也是类似的,因此也不能简单使用footfullcite命令,而是要使用footnotemark和footnotetext以及fullcite命令配合来实现, 比如:
\begin{example}{图表标题中产生的脚注文献表}{eg:footbib:incaption}
\begin{texlist}
\begin{figure}[h]
\centering
\fbox{abc}
\caption{示意图见文献\protect\footnotemark}
\end{figure}
\footnotetext{\fullcite{bibtex-key}}
\end{texlist}
\end{example}
但要注意由于hyperref本身的原因,这种方式产生的脚注文献表可能没有超链接功能。
对于表格环境中的引用无法产生脚注文献表的问题,可以将其置于小页环境中实现或者采用前述图标标题中的类似处理方式。
注意:latex核心代码参考latex.ltx,而hyperref代码参考hyperref.STY。
\pdfbookmark[4]{gbfnperpage}{gbfnperpage}
\item[gbfnperpage]=true,\textbf{false}. \hfill default is false
为脚注计数器根据页码更新而增加的选项。
\begin{itemize}
\item gbfnperpage=true,每页更新脚注编号,即根据page计数器重设footnote计数器。
\item gbfnperpage=false,不根据页码重设脚注计数器。
\end{itemize}
注意,若要让脚注计数器与其它计数器比如chapter等关联,那么采用latex的常规方法就能解决,比如使用latex内核常用的\verb|\@addtoreset|命令。
\item[gbstrict]=\textbf{true},false. \hfill default is true
为避免输出bib文件中多余的域信息而增加选项,目的是为了兼容一些bib文件,因为某些bst样式文件进行中英文判断需要在bib文件中增加类似language这样的域作为支撑,而其中某些域在标准的biblatex样式文件中是默认输出的。
\begin{itemize}
\item gbstrict=true,即默认不输出。
\item gbstrict=false,需要还原标准样式的输出情况时使用。
\end{itemize}
\item[gbfieldstd]=true,\textbf{false}. \hfill default is false
为控制一些域如标题,网址,卷域的格式而增加选项。目的是使用一些标准样式的处理来增加格式多样性。
\begin{itemize}
\item gbfieldstd=false,即默认使用GB/T 7714-2015要求的样式。
\item gbfieldstd=true,即还原使用标准样式的格式,比如使用引号,字体,加引导词等。当然要调整这些格式也可采用biblatex提供的更为直接的设置域格式的方式。
\end{itemize}
\end{description}
\subsubsection{兼容的标准选项}\label{sec:old:opt}
绝大部分biblatex标准样式选项可与gb7714-2015样式联合使用,下面给出一些经过兼容性测试的选项说明。需要注意的是:使用gb7714-2015样式时(即style=gb7714-2015),backend选择应指定为biber,还有一些选项已经在样式设计中固定,如果要严格使用国标样式,一般不应做修改,比如sorting,maxnames,minnames,date,useprefix,giveninits等,但如果用户有自己的其它需求,则可按需修改。
\begin{description}
\item[url]=true, false. \hfill default: true
该选项控制是否打印 url 域并获取日期。该选项只影响 url 信息是可选的那些条目类型。而 @online 条目的 url 域总是会打印出来。它是导言区选项,与样式相关,gb7714-2015样式做了特别支持,可以兼容使用。
\item[giveninits]=true, false. \hfill default: true
启用该选项时姓名中的名部分会用首字母表示。
\item[uniquelist]=true, false, minyear \hfill default: minyear
该选项用于著者-出版年制样式,用于正文中引用(标注)标签的作者列表控制(目的是消除歧义)。当uniquelist=true时,自动利用扩展作者姓名列表长度的方式消除labelname 列表的歧义; 当=false 时则禁用扩展,标签仅使用一个作者,消除歧义通过跟在年份后面的字母实现; 默认使用minyear,即当被截短的作者姓名列表存在歧义时,只有当年份相同,才会扩展列表长度以消除歧义。
注意当使用uniquelist=false后标签只有一个作者,但文中可能有同姓作者的文献,这时根据uniquename选项的设置,biblatex会使用姓名的其它部分比如名来消除歧义,但如果想强制要求仅用姓作为文中的标注标签,那么可以设置uniquename=false,但此时标注是可能存在歧义的。
\item[maxnames]=整数 \hfill default: 3
影响所有名称列表(\bibfield{author}、\bibfield{editor} 等)的阈值。如果某个列表超过了该阈值,即,它包含的姓名数量超过 \prm{integer},那么就会根据 \opt{minnames} 选项的设置进行自动截断。\opt{maxnames} 是设置 \opt{maxbibnames} 和 \opt{maxcitenames} 两个选项的支配选项。
\item[minnames]=整数 \hfill default: 3
影响所有名称列表(\bibfield{author}、\bibfield{editor} 等)的限制值。如果某个列表包含的姓名数量超过 \prm{integer},那么就会自动截断至\opt{minnames}个姓名。\prm{minnames} 的值必须小于或等于 \prm{maxnames}。\opt{minnames} 是设置 \opt{minbibnames} 和 \opt{mincitenames} 两个选项的支配选项。
\item[maxbibnames]=整数 \hfill default: \prm{maxnames}
类似于 \opt{maxnames} 但只影响参考文献表。
\item[minbibnames]=整数 \hfill default: \prm{minnames}
类似于 \opt{minnames} 但只影响参考文献表。
\item[maxcitenames]=整数 \hfill default: \prm{maxnames}
类似于 \opt{maxnames} 但只影响正文中的标注(引用)。
\item[mincitenames]=整数 \hfill default: \prm{minnames}
类似于 \opt{minnames} 但只影响正文中的标注(引用)。
\item[hyperref]=true, false, auto. \hfill default: auto
是否将引用和后向引用转化为可点击的超链接。这是宏包的载入时选项,与样式无关,自然可以使用。
\item[backref]=true, false. \hfill default: false
是否在文献中打印出反向引用。这是宏包的载入时选项,与样式无关,自然可以使用。
\item[refsection]=none, part, chapter, section, subsection. \hfill default: none
该选项自动在文档分段处(例如一章或一节)开始一个新的参考文献分节。是宏包的载入时选项,与样式无关,自然可以使用。需要注意与titlesec宏包联用时,该选项会失效。
\item[refsegment]=none, part, chapter, section, subsection. \hfill default: none
类似于refsection选项,但开始的是一个新的参考文献片段。
\item[citereset]=none, part, chapter, section, subsection. \hfill default: none
该选项在文档分段处(例如一章或一节)自动执行citereset 命令。
\item[labeldate]=year, short, long, terse, comp, ymd, iso. \hfill default: year
类似于 date 选项,但控制的是由DeclareLabeldate 选择的日期域的格式。
\item[doi]=true,false. \hfill default: true
该选项控制是否打印 \bibfield{doi} 域。
\item[isbn]=true,false. \hfill default: true
该选项控制是否打印 \bibfield{isbn}\slash \bibfield{issn}\slash \bibfield{isrn} 等域。
\item[sortlocale]=auto, locale. \hfill default: auto
该选项控制排序的本地化调整方案。对于英文文献,该选项不需要设置。对于中文文献当有按拼音或笔划等进行排序的需求时,可以设置相应的本地化调整方案。主要的调整方案有:
\begin{itemize}
\item \verb|sortlocale=auto| 或者不设置该选项,为unicode编码顺序
\item \verb|sortlocale=zh|,为unicode编码顺序
\item \verb|sortlocale=zh__pinyin|,为拼音顺序
\item \verb|sortlocale=zh__big5han|,为big5 编码顺序
\item \verb|sortlocale=zh__gb2312han|,为GB-2312 顺序
\item \verb|sortlocale=zh__stroke|,为笔划数顺序
\item \verb|sortlocale=zh__zhuyin|,为注音顺序
\end{itemize}
\item[language]=autobib, autocite, auto, \prm{language}. \hfill default: autobib
详细说明见biblatex手册。
\item[autolang]=none, hyphen, other, other*, \prm{langname}. \hfill default:
结合langid/langidopts域,结合babel/polyglossia宏包,可以对西文做基于条目的本地化处理。详细说明见biblatex 手册。
\item[sortcites]=true, false. \hfill default: false
详细说明见biblatex手册。
\item[autocite]=plain, inline, footnote, superscript. \hfill default: plain
详细说明见biblatex手册。
\item[block]=none, space, par, nbpar, ragged. \hfill default: none
详细说明见biblatex手册。
\item[indexing]=true, false, cite, bib. \hfill default: false
详细说明见biblatex手册。
\item[其它]=下面还有很多选项,有些是宏包载入时选项,与样式无关,一般可以使用,但笔者没有做测试,各位用户可以测试使用。选项的作用可以参考biblatex 使用手册,以及文博与笔者翻译的中文版。
\begin{itemize}
\item related=true, false. default: true
\item defernumbers=true, false default: false
\item maxitems=integer default: 3
\item minitems=integer default: 1
\item autopunct=true, false default: true
\item clearlang=true, false default: true
\item notetype=foot+end, footonly, endonly default: foot+end
\item backrefstyle=none, three, two, two+, three+, all+ default: three
\item backrefsetstyle=setonly, memonly, setormem, setandmem, memandset, setplusmem default: setonly
\item loadfiles=true, false default: false