From 3f8b486d70d3eda8f8f15ae06507f0cdefa558bb Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 31 Mar 2013 23:45:32 +0000 Subject: biblatex-caspervector (30mar13) git-svn-id: svn://tug.org/texlive/trunk@29577 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/biblatex-caspervector/ChangeLog.txt | 10 ++ .../doc/latex/biblatex-caspervector/readme.pdf | Bin 243735 -> 259494 bytes .../doc/latex/biblatex-caspervector/readme.tex | 123 ++++++++++++++------- .../biblatex-caspervector-gbk.def | 2 +- .../biblatex-caspervector-utf8.def | 2 +- .../latex/biblatex-caspervector/caspervector.bbx | 6 +- .../latex/biblatex-caspervector/caspervector.cbx | 2 +- 7 files changed, 98 insertions(+), 47 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt b/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt index 2b3a039f8c8..5efca9e7984 100644 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt @@ -1,3 +1,13 @@ +2013-03-30, v0.1.7 + * Changes to package code: + - Default to `defernumbers = true' and `sorting = none'. + + * Changes to documentation: + - Add hint for split sorting. + + * Misc: + - Minor fixes and improvements. + 2013-01-10, v0.1.6 * Changes to package code: diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf b/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf index 1cafb2e588d..41327417228 100644 Binary files a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf and b/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf differ diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.tex b/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.tex index df465475cdf..3a7aca1030b 100644 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.tex +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.tex @@ -1,8 +1,6 @@ \documentclass[UTF8, fancyhdr, hyperref]{ctexart} \usepackage[margin = 2cm, centering, includefoot]{geometry} -\usepackage[ - backend = biber, defernumbers = true, style = caspervector, utf8 -]{biblatex} +\usepackage[backend = biber, style = caspervector, utf8]{biblatex} \usepackage{CJKspace, enumitem, fancyvrb, hologo} \pagestyle{fancy}\fancyhf{}\cfoot{\thepage} @@ -13,18 +11,17 @@ \DeclareBibliographyCategory{cited} \AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}} \addbibresource{readme.bib} -\nocite{*} \newcommand{\myemph}[1]{\emph{\textcolor{red}{#1}}} \begin{document} -\title{\textbf{biblatex 参考文献和引用样式:\texttt{caspervector} v0.1.6}} +\title{\textbf{biblatex 参考文献和引用样式:\texttt{caspervector} v0.1.7}} \author{% Casper Ti.\ Vector\thanks{\ % \href{mailto:CasperVector@gmail.com}{\texttt{CasperVector@gmail.com}}.% }% } -\date{2013/01/10} +\date{2013/03/30} \maketitle \section{引言} @@ -102,10 +99,10 @@ mpm --install=biblatex-caspervector backend = biber, style = caspervector, gbk, sorting = centy, ... ]{biblatex} \end{Verbatim} -其中 \verb|sorting| 选项用于指定按哪些字段排序, -除 biblatex 提供的标准选项\supercite{biblatex}外, +其中 \verb|sorting| 选项用于(全局)指定按哪些字段排序, +除 biblatex 提供的标准选项\supercite{biblatex}外,% \verb|caspervector| 样式还提供 \verb|centy| 和 \verb|ecnty| 两种排序方案 -(后者为 \verb|caspervector| 的默认选择), +(\verb|caspervector| 默认设置为 \verb|none| 排序方案,即按引用顺序排序), 表示依次按文献语言 (\textbf{ce}nty 表示中文文献在前,\textbf{ec}nty 表示英文文献在前; 文献语言根据 \verb|userf| 字段进行区分,详见第 \ref{sec:fields} 部分)、 @@ -157,11 +154,17 @@ mpm --install=biblatex-caspervector \begin{itemize} \item \verb|title = 标题|: 可以用于指定文献列表的标题(默认为“参考文献”)。 - \item \verb|heading = 样式|: + \item \verb|heading = 标题样式|: 最常用的是当 \verb|heading| 的值为 \verb|bibintoc| 时, 可以将参考文献加入目录中; 当其值为 \verb|bibnumbered| 时, 参考文献列表参与章节编号(当然也会被自动加入目录中)。 + \item \verb|sorting = 排序方案|: + 对这一部分的文献按照指定的方案排序。此设置会覆盖全局设置。\myemph{% + 注: + 只有同时使用 2.x 或之后版本的 biblatex 和相应兼容版本的 biber, + 才能对每个 \texttt{\string\printbibliography} 命令采用不同的排序方案。% + } \end{itemize} 例如,用 @@ -179,10 +182,11 @@ mpm --install=biblatex-caspervector # “pdflatex”可改为其它 TeX 程序,使用纯 latex 编译时可能还需要运行 dvipdfmx。 # 如果系统上无法使用 biber,可将执行 biber 的一行改为 # bibtex texfile -# 但将无法按拼音排序。 +# 但将无法按拼音排序或进行分类排序。 pdflatex texfile biber -l zh__pinyin texfile pdflatex texfile +pdflatex texfile \end{Verbatim} 即可实现正确的排版。 某些情况下(详见 biblatex 手册\supercite{biblatex}), @@ -190,7 +194,7 @@ pdflatex texfile 之后运行两次 \verb|pdflatex|(或 \verb|xelatex|、\verb|latex|) 才能获得正确的引用标记。 -另外,上述执行 \verb|biber| 的一行命令中, +另外,上述执行 \verb|biber| 的一行命令中,% \verb|-l| 的参数 \verb|zh__pinyin| 可改为其它 被 Perl 的 \verb|Unicode::Collate| 模块支持的 locale\footnote{\ % \url{http://search.cpan.org/~sadahiro/Unicode-Collate/Collate/Locale.pm}.% @@ -246,16 +250,16 @@ pdflatex texfile \section{条目类型}\label{sec:entries} \subsection{\texttt{@book} 类型} -\verb|@book| 类型对应于 GB/T 7714--2005 中所指的“专著”和“电子文献”类型, -其支持的常见别名包括 \verb|@booklet|、\verb|@proceedings|、 +\verb|@book| 类型对应于 GB/T 7714--2005 中所指的“专著”和“电子文献”, +其支持的常见别名包括 \verb|@booklet|、\verb|@proceedings|、% \verb|@report|、\verb|@thesis|、\verb|@unpublished|。 \verb|@book| 类条目必需的基本字段为 \verb|title|。 -除必需字段之外,\verb|@book| 类条目也支持以下基本字段: -\verb|author|、\verb|editor|、\verb|translator|、 -\verb|type|、\verb|location|、\verb|publisher|、 -\verb|year|/\verb|date|、\verb|pages|、 +除必需字段之外,\verb|@book| 类条目也支持以下基本字段:% +\verb|author|、\verb|editor|、\verb|translator|、% +\verb|type|、\verb|location|、\verb|publisher|、% +\verb|year|/\verb|date|、\verb|pages|、% \verb|url|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@incollection} 类型} @@ -266,10 +270,10 @@ pdflatex texfile \verb|@incollection| 类条目必需的基本字段为 \verb|title| 以及 \verb|booktitle|。 -除必需字段之外,\verb|@incollection| 类条目也支持以下基本字段: -\verb|author|、\verb|editor|、\verb|translator|、\verb|bookauthor|、 -\verb|type|、\verb|location|、\verb|publisher|、 -\verb|year|/\verb|date|、\verb|pages|、 +除必需字段之外,\verb|@incollection| 类条目也支持以下基本字段:% +\verb|author|、\verb|editor|、\verb|translator|、\verb|bookauthor|、% +\verb|type|、\verb|location|、\verb|publisher|、% +\verb|year|/\verb|date|、\verb|pages|、% \verb|url|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@periodical} 类型} @@ -279,23 +283,23 @@ pdflatex texfile \verb|@periodical| 类条目必需的基本字段为 \verb|title|/\verb|journal|/\verb|journaltitle| 三者中的至少一个。 -除必需字段之外,\verb|@periodical| 类条目也支持以下基本字段: -\verb|author|/\verb|editor|/\verb|translator| -\verb|type|、\verb|location|、\verb|publisher|、 -\verb|year|/\verb|date|、\verb|volume|、\verb|number|、\verb|pages|、 +除必需字段之外,\verb|@periodical| 类条目也支持以下基本字段:% +\verb|author|/\verb|editor|/\verb|translator|、% +\verb|type|、\verb|location|、\verb|publisher|、% +\verb|year|/\verb|date|、\verb|volume|、\verb|number|、\verb|pages|、% \verb|url|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@article} 类型} -\verb|@article| 类型对应于 GB/T 7714--2005 中所指的“连续出版物”。 +\verb|@article| 类型对应于 GB/T 7714--2005 中所指的“连续出版物中的析出文献”。 \verb|@article| 类条目必需的基本字段为 \verb|journal|/\verb|journaltitle| 两者中的至少一个, 以及 \verb|year|/\verb|date| 两者中的至少一个。 -除必需字段之外,\verb|@article| 类条目也支持以下基本字段: -\verb|author|、\verb|title|、\verb|type|、 -\verb|volume|、\verb|number|、\verb|pages|、 +除必需字段之外,\verb|@article| 类条目也支持以下基本字段:% +\verb|author|、\verb|title|、\verb|type|、% +\verb|volume|、\verb|number|、\verb|pages|、% \verb|url|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@patent} 类型} @@ -305,9 +309,9 @@ pdflatex texfile \verb|@patent| 类条目必需的基本字段为 \verb|title|, 以及 \verb|year|/\verb|date| 两者中的至少一个。 -除必需字段之外,\verb|@article| 类条目也支持以下基本字段: -\verb|author|、\verb|title|、\verb|type|、 -\verb|location|、\verb|number|、 +除必需字段之外,\verb|@article| 类条目也支持以下基本字段:% +\verb|author|、\verb|title|、\verb|type|、% +\verb|location|、\verb|number|、% \verb|url|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@customf} 类型} @@ -327,6 +331,40 @@ pdflatex texfile 进行排序。 % } +\section{对参考文献进行分类排序} + +使用 biblatex 2.6 和 biber 1.6(或两者的更高版本)的用户可以通过 +对不同的 \verb|\printbibliography| 命令传递不同的 \verb|sorting| 选项来实现 +对不同部分文献按不同方案排序。 +例如,如需对被引用的文献按照引用顺序排序, +而对未引用的文献按照英文文献在前、中文文献在后排序, +则可以在导言区中加入下列几行代码: +\begin{Verbatim}[frame = single] +% 新建条目分类(category)用于区分被引用和未引用的文献条目。 +\DeclareBibliographyCategory{cited} +% 每执行一次除 \nocite 之外的 \cite 类命令,将被引用的文献加到“cited”分类中。 +\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}} +\end{Verbatim} +在正文中准备排版文献列表的位置使用如下代码: +\begin{Verbatim}[frame = single] +% 按引用顺序排版“cited”分类,即被引用的文献条目。 +\printbibliography[category = cited, ..., sorting = none, title = {References}] +% 按英文文献在前、中文文献在后排版“cited”分类之外,即未被引用的文献条目。 +\printbibliography[notcategory = cited, sorting = ecnty, title = {Works Not Cited}] +\end{Verbatim} +并在最后一个除 \verb|\nocite| 之外的 \verb|\cite| 类命令之后、% +\verb|\end{document}| 之前的任意合适位置\footnote{\ % + 因为 biblatex 中的引用顺序记录是按每个条目被第一次引用的顺序计算的, + 所以 \texttt{\string\nocite\{*\}} 时导入文献的顺序会覆盖掉后面 + \texttt{\string\cite} 类命令的引用顺序。 +}(例如,在本说明文档中,就是在两个 \verb|\printbibliography| 命令之间) +加入以下代码: +\begin{Verbatim}[frame = single] +% 将 .bib 文件中所有的参考文献都加到引用列表中,但不将它们加到“cited”分类中, +% 也不会排版引用标号,只是在最后的 \printbibliography 命令中排版相应的文献条目。 +\nocite{*} +\end{Verbatim} + \section{FAQ 和其它使用提示} 用户可以通过省略可选字段的方式来避免排版相应的内容。 @@ -344,24 +382,25 @@ year = {1845\textmd{\emph{(清同治四年)}}} \section{存在的问题} +biber 1.6 之前的版本存在一个 bug\footnote{\ % + \url{https://github.com/plk/biblatex/issues/101}.% +}:在源代码中任意位置出现的 \verb|\nocite{*}| 都会覆盖整个引用顺序记录, +导致即使在 \verb|sorting = none| 的设定下, +排版出来的文献列表依然不是按照引用顺序排序的情况。 +因此,如果需要使用相关功能,\myemph{强烈建议将 biblatex 和 biber 升级到最新版本}。 + 如上文所述,因为 babel 宏包目前不支持中文, 故对中英文的分别处理只能通过比较麻烦的方式实现, 指定语言也只能通过一个自定义的字段(\verb|userf|)进行。 -biblatex/biber 所支持的排序方式仍有一定限制,例如这样的需求目前就无法实现: -参考文献数据库中被引用过的参考文献按引用顺序排在最前, -未被引用的参考文献按字母和拼音顺序排序。 -不过根据 biber 主页\footnote{\ % - \url{http://biblatex-biber.sourceforge.net/}.% -}上的说明,biblatex 2.x 系列将支持这一功能。 - \section{更新记录} \VerbatimInput[tabsize = 4, baselinestretch = 1]{ChangeLog.txt} \printbibliography% - [heading = bibnumbered, title = {本文参考文献}, category = cited] + [category = cited, heading = bibnumbered, sorting = none, title = {本文参考文献}] +\nocite{*} \printbibliography[ - heading = bibnumbered, notcategory = cited, + notcategory = cited, heading = bibnumbered, sorting = ecnty, title = {% 其它参考文献示例 (引自\texorpdfstring{文献 \parencite{gbt7714-2005}}{ GB/T 7714-2005}) diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-gbk.def b/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-gbk.def index 0402326e6f5..1190ca54fce 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-gbk.def +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-gbk.def @@ -22,7 +22,7 @@ % biblatex-caspervector-utf8.def \ProvidesFile{biblatex-caspervector-gbk.def}% - [2013/01/10 v0.1.6 Chinese punctuations and captions in GBK] + [2013/03/30 v0.1.7 Chinese punctuations and captions in GBK] \providecommand\cnldquot{} \providecommand\cnrdquot{} diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-utf8.def b/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-utf8.def index c8e8a759928..f98755b58b1 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-utf8.def +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-utf8.def @@ -22,7 +22,7 @@ % biblatex-caspervector-utf8.def \ProvidesFile{biblatex-caspervector-utf8.def}% - [2013/01/10 v0.1.6 Chinese punctuations and captions in UTF-8] + [2013/03/30 v0.1.7 Chinese punctuations and captions in UTF-8] \providecommand\cnldquot{“} \providecommand\cnrdquot{”} diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx index 0e8d2d5ecfd..7780751e9c8 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx @@ -22,14 +22,16 @@ % biblatex-caspervector-utf8.def \ProvidesFile{caspervector.bbx}% - [2013/01/10 v0.1.6 Casper Ti. Vector's biblatex bibliography style] + [2013/03/30 v0.1.7 Casper Ti. Vector's biblatex bibliography style] \RequireBibliographyStyle{numeric} \newtoggle{bbx:gbk} \DeclareBibliographyOption{utf8}[true]{\togglefalse{bbx:gbk}} \DeclareBibliographyOption{gbk}[true]{\toggletrue{bbx:gbk}} -\ExecuteBibliographyOptions{alldates = iso8601, gbk, sorting = ecnty} +\ExecuteBibliographyOptions{ + alldates = iso8601, gbk, defernumbers = true, sorting = none +} \AtEndOfPackage{% \iftoggle{bbx:gbk}{ \input{biblatex-caspervector-gbk.def} diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx index 5c7fcfcb038..b20c4d9e3f7 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx @@ -22,7 +22,7 @@ % biblatex-caspervector-utf8.def \ProvidesFile{caspervector.cbx}% - [2013/01/10 v0.1.6 Casper Ti. Vector's biblatex citation style] + [2013/03/30 v0.1.7 Casper Ti. Vector's biblatex citation style] \RequireCitationStyle{numeric-comp} \ExecuteBibliographyOptions{ -- cgit v1.2.3