diff options
Diffstat (limited to 'Master/texmf-dist')
15 files changed, 1012 insertions, 519 deletions
diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt b/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt index ed57139ee8b..15fb808f8aa 100644 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/ChangeLog.txt @@ -1,3 +1,69 @@ +2018-06-29, v0.3.3 + + * Changes to package code: + - Add support for the `edition' field. + - Refine `maxcitenames'/`mincitenames'. + - blx-caspervector-base.def: fix "et al" for citations. + - blx-caspervector-base.def: improve spacing between `title' and `type'. + + * Changes to documentation: + - caspervector.tex: fix "需"/"须" typo. + + * Misc: + - Minor fixes and cosmetics. + +2018-06-01. v0.3.2 + + * Changes to package code: + - Fix punctuation for citations. + - blx-caspervector-base.def: fix `incollection' without bookauthor/editor. + - blx-caspervector-base.def: only `\providebibmacro*{bbx:ifnodate}'. + + * Changes to documentation: + - caspervector.bib: add more examples from GB/T 7714-2005. + + * Misc: + - Minor fixes and cosmetics. + +2018-05-30. v0.3.1 + + * API changes: + - Support eprint/doi using `eid'. + + * Changes to package code: + - blx-caspervector-base.def: fix misplaced `\clearname'. + - caspervector-ay.bbx: fix missing byspace. + - blx-caspervector-base.def: support the "date(number)" format. + - Remove support for `userf' set to `cn'. + + * Changes to documentation: + - "著者" -> "作者"; "英文" -> "西文". + + * Misc: + - Minor fixes and cosmetics. + +2018-05-28. v0.3.0 + + * API changes: + - Added the caspervector-ay style (`dashed' and `mergedate' supported). + - sorting: nty -> nyt. + - Reduced tolerance in `year'/`date'; `note' added for compensation. + - Support `useauthor'-related functionalities. + + * Changes to package code: + - caspervector.bbx mostly refactored into blx-caspervector-base.def. + - biblatex-caspervector-*.def -> blx-caspervector-*.def. + - blx-caspervector-base.def: improve the punctuation handling. + - blx-caspervector-base.def: fix some deprecation warnings. + + * Changes to documentation: + - readme.* -> caspervector.*; document the caspervector-ay style. + - doc/Makefile: fix missing accented characters with xelatex. + + * Misc: + - utils: update wrt the author-year style. + - Minor fixes and cosmetics. + 2017-03-01. v0.2.7 * API changes: @@ -100,7 +166,7 @@ * Changes to documentation: - No longer recommend the CTeX Suite. - - Remove install hints (already included in TeX Live). + - Remove installation hints (already included in TeX Live). - Use `%' for comments in `.bib' files, now supported by biber. * Misc: diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/Makefile b/Master/texmf-dist/doc/latex/biblatex-caspervector/Makefile index e610bfce1c8..e37bda40e6c 100644 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/Makefile +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/Makefile @@ -1,16 +1,19 @@ -# Copyright (c) 2011-2013 Casper Ti. Vector +# Copyright (c) 2011-2013,2015-2016,2018 Casper Ti. Vector # Public domain. +JOB = caspervector + doc: - latex readme - biber -l zh__pinyin readme - xelatex readme - xelatex readme + latex $(JOB) + biber -l zh__pinyin --output-safechars $(JOB) + xelatex $(JOB) + xelatex $(JOB) clean: - rm -f readme.{aux,bbl,bcf,blg,dvi,log,run.xml,out} {missfont,texput}.log + rm -f $(JOB).aux $(JOB).bbl $(JOB).bcf $(JOB).blg $(JOB).dvi $(JOB).log \ + $(JOB).run.xml $(JOB).out missfont.log texput.log distclean: clean - rm -f readme.pdf + rm -f $(JOB).pdf # vim:ts=4:sw=4 diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector-ay.pdf b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector-ay.pdf Binary files differnew file mode 100644 index 00000000000..ef68b0d0c11 --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector-ay.pdf diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector-ay.tex b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector-ay.tex new file mode 100644 index 00000000000..2b4fb867ec3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector-ay.tex @@ -0,0 +1,63 @@ +% Documentation for biblatex-caspervector +% +% Copyright (c) 2012-2016,2018 Casper Ti. Vector +% +% This work may be distributed and/or modified under the conditions of the +% LaTeX Project Public License, either version 1.3 of this license or (at +% your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX version +% 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% The current maintainer of this work is Casper Ti. Vector. +% +% This work consists of the following files: +% caspervector.tex +% caspervector-ay.tex + +\documentclass[UTF8]{ctexart} +\usepackage[margin = 2cm, centering, includefoot]{geometry} +\usepackage[ + backend = biber, style = caspervector-ay, utf8, + giveninits = true, sortgiveninits = true +]{biblatex} +\usepackage{fancyhdr, hyperref} + +\pagestyle{fancy}\fancyhf{}\cfoot{\thepage} +\renewcommand{\headrulewidth}{0pt} +\setlength{\hfuzz}{3pt} +\ctexset{linestretch = {\maxdimen}} +\renewcommand{\bibfont}{\small} + +\DeclareBibliographyCategory{cited} +\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}} +\addbibresource{caspervector.bib} + +\begin{document} +\title{\textbf{\texttt{caspervector-ay} 作者--年编码制示例}} +\author{} +\date{} +\maketitle +\vspace*{-1em} + +\begin{center} +\begin{tabular}{ll}\hline +引用命令 & 排版结果 \\\hline +\verb|\cite{10-5, 10-6}| & \cite{10-5, 10-6} \\ +\verb|\parencite[见][第 4 页]{perelman}| & \parencite[见][第 4 页]{perelman} \\ +\verb|\parencite{6-1, blx-gb7714-2015}| & \parencite{6-1, blx-gb7714-2015} \\ +\verb|\textcite{biblatex, a2-3}| & \textcite{biblatex, a2-3} \\\hline +\multicolumn{2}{l}{(更多用法请参考 \texttt{texdoc 50-style-authoryear}。)} \\ +\end{tabular} +\end{center} + +\printbibliography[category = cited, title = {本文参考文献}] +\printbibliography[notcategory = cited, title = {% + 其它参考文献示例 + (引自\texorpdfstring{文献 \parencite{gbt7714-2005}}{ GB/T 7714-2005})% +}] +\nocite{*} +\end{document} + diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.bib b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.bib index 3cfca57c425..ef920133ac0 100644 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.bib +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.bib @@ -1,25 +1,39 @@ @online{biber, author = {Kime, Philip and Charette, Fran\c{c}ois}, - title = {Biber: A backend bibliography processor for biblatex (Version 1.8)}, + title = {Biber: A backend bibliography processor for biblatex}, + edition = {Ver.\ 2.7}, type = {M/OL}, - date = {2013-10-18}, - url = {http://mirror.ctan.org/biblio/biber/}, - urldate = {2014-05-24}, + date = {2016-12-05}, + url = {https://ctan.org/pkg/biber}, + urldate = {2017-03-01}, language = {english}, } @online{biblatex, author = {Lehman, Philipp}, - title = {The biblatex Package: Programmable Bibliographies and Citations (Version 2.8a)}, + title = {The biblatex Package: Programmable Bibliographies and Citations}, + edition = {Ver.\ 3.7}, type = {M/OL}, - date = {2013-11-25}, - url = {http://mirror.ctan.org/macros/latex/exptl/biblatex/}, - urldate = {2014-05-24}, + date = {2016-11-16}, + url = {https://ctan.org/pkg/biblatex}, + urldate = {2017-03-01}, language = {english}, } +@online{blx-gb7714-2015, + author = {胡振震}, + title = {符合 GB/T 7714-2015 标准的 biblatex 参考文献样式}, + edition = {Ver.\ 1.0k}, + type = {M/OL}, + date = {2018-04-10}, + url = {https://ctan.org/pkg/biblatex-gb7714-2015}, + urldate = {2018-05-28}, + language = {chinese}, +} + @report{gbt7714-2005, - author = {中华人民共和国国家质量监督检验检疫总局 and 中国标准化管理委员会}, + author = {中华人民共和国国家质量监督检验检疫总局 and 中国国家标准化管理委员会}, + shortauthor = {国家质检总局 and 国家标准委}, title = {GB/T 7714--2005 文后参考文献著录规则}, type = {S}, date = {2005-03-23}, @@ -28,6 +42,16 @@ language = {chinese}, } +@report{perelman, + author = {Perelman, Grisha}, + title = {The entropy formula for the Ricci flow and its geometric applications}, + type = {M/OL}, + date = {2002-11-11}, + eid = {\printtext[eprint:arxiv]{math/0211159}}, + urldate = {2018-05-30}, + language = {english}, +} + @book{1-1, author = {余敏}, title = {出版集团研究}, @@ -42,8 +66,8 @@ @book{1-2, author = {昂温, G. and 昂温, P. S.}, title = {外国出版史}, - translator = {陈生铮}, type = {M}, + translator = {陈生铮}, location = {北京}, publisher = {中国书籍出版社}, year = {1988}, @@ -92,12 +116,13 @@ @book{1-7, author = {王夫之}, - title = {宋论(刻本)}, + title = {宋论}, + edition = {刻本}, type = {M}, location = {金陵}, publisher = {曾氏}, - sortyear = {1845}, - year = {1845\textmd{(\emph{清同治四年})}}, + origdate = {1845}, + note = {\textbf{1845}(\emph{清同治四年})}, language = {chinese}, } @@ -118,17 +143,18 @@ title = {The cataloguer's way through AACR2: from document receipt to document retrieval}, type = {M}, location = {London}, - publisher = {{The Library Association}}, + publisher = {The Library Association}, year = {1990}, language = {english}, } @book{1-10, author = {Peebles, Jr., P. Z.}, - title = {Probability, random variable, and random signal principles (4th ed.)}, + title = {Probability, random variable, and random signal principles}, + edition = {4}, type = {M}, location = {New York}, - publisher = {{McGraw Hill}}, + publisher = {McGraw Hill}, year = {2001}, language = {english}, } @@ -139,6 +165,7 @@ type = {C}, location = {Rotterdam}, publisher = {A. A. Balkema}, + year = {2001}, language = {english}, } @@ -236,8 +263,8 @@ author = {中国图书馆学会}, title = {图书馆学通讯}, type = {J}, - sortyear = {1957}, - year = {\textmd{\textbf{1957}(1) -- \textbf{1990}(4)}}, + origdate = {1957/1990}, + note = {\textbf{1957}(1) -- \textbf{1990}(4)}, location = {北京}, publisher = {北京图书馆}, language = {chinese}, @@ -250,8 +277,8 @@ year = {1883}, volume = {1}, number = {1}, - location = {Washington, D. C.}, - publisher = {{American Association for the Advancement of Science}}, + location = {Washington, D.C.}, + publisher = {American Association for the Advancement of Science}, language = {english}, } @@ -364,6 +391,7 @@ @online{6-1, title = {PACS-L: the public-access computer systems forum}, + shorttitle = {PACS-L}, type = {EB/OL}, location = {Houston, Tex}, publisher = {University of Houston Libraries}, @@ -391,6 +419,138 @@ language = {english}, } +@book{9-1, + author = {Baker, S. K. and Jackson, M. E.}, + title = {The future of resource sharing}, + type = {M}, + location = {New York}, + publisher = {The Haworth Press}, + year = {1995}, + language = {english}, +} + +@book{9-2, + author = {Chernik, B. E.}, + title = {Introduction to library services for library technicians}, + type = {M}, + location = {Littleton, Colo.}, + publisher = {Libraries Unlimited, Inc.}, + year = {1982}, + language = {english}, +} + +@book{9-3, + author = {尼葛洛庞帝}, + title = {数字化生存}, + type = {M}, + translator = {胡冰 and 范海燕}, + location = {海口}, + publisher = {海南出版社}, + year = {1996}, + language = {chinese}, +} + +@book{9-4, + author = {汪冰}, + title = {电子图书馆理论与实践研究}, + type = {M}, + location = {北京}, + publisher = {北京图书馆出版社}, + year = {1997}, + language = {chinese}, +} + +@article{9-5, + author = {杨宗英}, + title = {电子图书馆的现实模型}, + type = {J}, + journal = {中国图书馆学报}, + year = {1996}, + number = {2}, + pages = {24-29}, + language = {chinese}, +} + +@article{9-6, + author = {Dowler, L.}, + title = {The research university's dilemma: resource sharing and research in a transinstitutional environment}, + type = {J}, + journal = {Journal Library Administration}, + year = {1995}, + volume = {21}, + number = {1/2}, + pages = {5-26}, + language = {english}, +} + +@inproceedings{10-1, + author = {张忠智}, + title = {科技书刊的总编(主编)的角色要求}, + type = {C}, + booktitle = {中国科学技术期刊编辑学会建会十周年学术研讨会论文汇编}, + location = {北京}, + publisher = {中国科学技术期刊编辑学会学术委员会}, + year = {1997}, + pages = {33-34}, + language = {chinese}, +} + +@book{10-2, + author = {中国社会科学院语言研究所词典编辑室}, + title = {现代汉语词典}, + edition = {修订本}, + type = {M}, + location = {北京}, + publisher = {商务印书馆}, + year = {1996}, + language = {chinese}, +} + +@article{10-3, + author = {刘彻东}, + title = {中国的青年刊物:个性特色为本}, + type = {J}, + journal = {中国出版}, + year = {1998}, + number = {5}, + pages = {33-39}, + language = {chinese}, +} + +@inproceedings{10-4, + author = {裴丽生}, + title = {在中国科协学术期刊编辑工作经验交流会上的讲话}, + type = {C}, + booktitle = {中国科协学术期刊编辑工作经验交流会资料选}, + location = {北京}, + publisher = {中国科学技术协会工作部}, + year = {1981}, + pages = {2-10}, + language = {chinese}, +} + +@article{10-5, + author = {Kennedy, W. J. and Garrison, R. E.}, + title = {Morphology and genesis of nodular chalks and hardgrounds in the Upper Cretaceous of southern England}, + type = {J}, + journal = {Sedimentology}, + year = {1975}, + volume = {22}, + pages = {311-386}, + language = {english}, +} + +@article{10-6, + author = {Kennedy, W. J. and Garrison, R. E.}, + title = {Morphology and genesis of nodular phosphates in the Cenomanian of south-east England}, + type = {J}, + journal = {Lethaia}, + year = {1975}, + volume = {8}, + pages = {339-360}, + language = {english}, +} + @book{a1-1, author = {广西壮族自治区林业厅}, title = {广西自然保护区}, @@ -434,7 +594,8 @@ @book{a1-5, author = {汪昂}, - title = {本草备要(石印本,增补)}, + title = {(增补)本草备要}, + edition = {石印本}, type = {M}, location = {上海}, publisher = {同文书局}, @@ -444,29 +605,31 @@ @book{a1-6, author = {Crawford, W. and Gorman, M.}, - title = {Futuer libraries: dreams, madness \& reality}, + title = {Future libraries: dreams, madness \& reality}, type = {M}, location = {Chicago}, - publisher = {{American Library Association}}, + publisher = {American Library Association}, year = {1995}, language = {english}, } @book{a1-7, author = {{International Federation of Library Association and Institutions}}, - title = {Names of persons: national usages for entry in catalogues (3rd ed.)}, + title = {Names of persons: national usages for entry in catalogues}, + edition = {3}, type = {M}, location = {London}, - publisher = {{IFLA International Office for UBC}}, + publisher = {IFLA International Office for UBC}, year = {1977}, language = {english}, } @book{a1-8, author = {O'Brien, J. A.}, - title = {Introduction to information systems (7th ed.)}, + title = {Introduction to information systems}, + edition = {7}, type = {M}, - location = {Burr Ridge, III.}, + location = {Burr Ridge, Ill.}, publisher = {Irwin}, year = {1994}, language = {english}, @@ -474,9 +637,10 @@ @book{a1-9, author = {Rood, H. J.}, - title = {Logic and structured design for computer programmers (3rd ed.)}, + title = {Logic and structured design for computer programmers}, + edition = {3}, type = {M}, - publisher = {{Brooks/Cole-Thomson Learning}}, + publisher = {Brooks/Cole-Thomson Learning}, year = {2001}, language = {english}, } @@ -495,7 +659,7 @@ title = {Proceedings of the Fifth Canadian Mathematical Congress, University of Montreal, 1961}, type = {C}, location = {Toronto}, - publisher = {{University of Toronto Press}}, + publisher = {University of Toronto Press}, year = {1963}, language = {english}, } @@ -515,7 +679,7 @@ title = {Guidelines for handling excavated acid-producing materials, PB 91-194001}, type = {R}, location = {Springfield}, - publisher = {{U.S. Department of Commerce National Information Service}}, + publisher = {U.S. Department of Commerce National Information Service}, year = {1990}, language = {english}, } @@ -545,7 +709,7 @@ title = {Infrared spectroscopic studies on solid oxygen}, type = {D}, location = {Berkeley}, - publisher = {{Univ. of California}}, + publisher = {Univ. of California}, year = {1965}, language = {english}, } @@ -611,13 +775,13 @@ } @incollection{a6-3, - author = {Buseck, P. R. and Nord, Jr., G. L. and Veblen D. R.}, + author = {Buseck, P. R. and Nord, Jr., G. L. and Veblen, D. R.}, title = {Subsolidus phenomena in pyroxenes}, type = {M}, bookauthor = {Prewitt, C. T.}, booktitle = {Pyroxense}, - location = {Washington, D. C.}, - publisher = {{Mineralogical Society of America}}, + location = {Washington, D.C.}, + publisher = {Mineralogical Society of America}, year = {c1980}, pages = {117-211}, language = {english}, @@ -643,7 +807,7 @@ bookauthor = {Pattle, L. W. and Cox, B. J.}, booktitle = {Electronic resources: selection and bibliographic control}, location = {New York}, - publisher = {{The Haworth Press}}, + publisher = {The Haworth Press}, year = {1966}, pages = {85-96}, language = {english}, @@ -776,7 +940,7 @@ title = {Fractals and chaos in geology and geophysics}, type = {M/OL}, location = {New York}, - publisher = {{Cambridge University Press}}, + publisher = {Cambridge University Press}, year = {1992}, url = {http://www.seg.org/reviews/mccorm30.html}, urldate = {1998-09-23}, @@ -788,7 +952,7 @@ title = {Project scheduler}, type = {CP/DK}, location = {Sunnyvale, Calif.}, - publisher = {{Scitor Corporation}}, + publisher = {Scitor Corporation}, year = {c1983}, language = {english}, } diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.pdf b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.pdf Binary files differnew file mode 100644 index 00000000000..caf3071af00 --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.pdf diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.tex b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.tex index a2f6b8f9c05..a3e9e517457 100644 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.tex +++ b/Master/texmf-dist/doc/latex/biblatex-caspervector/caspervector.tex @@ -1,12 +1,12 @@ % Documentation for biblatex-caspervector % -% Copyright (c) 2012-2016 Casper Ti. Vector +% Copyright (c) 2012-2016,2018 Casper Ti. Vector % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at % your option) any later version. % The latest version of this license is in -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. % @@ -14,7 +14,8 @@ % The current maintainer of this work is Casper Ti. Vector. % % This work consists of the following files: -% readme.tex +% caspervector.tex +% caspervector-ay.tex \documentclass[UTF8]{ctexart} \usepackage[margin = 2cm, centering, includefoot]{geometry} @@ -24,28 +25,27 @@ ]{biblatex} \usepackage{fancyhdr, hyperref, enumitem, fancyvrb, hologo} +\hypersetup{colorlinks = true, allcolors = blue} \pagestyle{fancy}\fancyhf{}\cfoot{\thepage} \renewcommand{\headrulewidth}{0pt} \setlist{nolistsep} -\hypersetup{colorlinks = true, allcolors = blue} - -\DeclareBibliographyCategory{cited} -\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}} -\addbibresource{readme.bib} - \setlength{\hfuzz}{3pt} \ctexset{linestretch = {\maxdimen}} \renewcommand{\bibfont}{\small} \newcommand{\myemph}[1]{\emph{\textcolor{red}{#1}}} +\DeclareBibliographyCategory{cited} +\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}} +\addbibresource{caspervector.bib} + \begin{document} -\title{\textbf{biblatex 参考文献和引用样式:\texttt{caspervector} v0.2.7}} +\title{\textbf{biblatex 参考文献和引用样式:\texttt{caspervector} v0.3.3}} \author{% Casper Ti.\ Vector\thanks{\ % \href{mailto:CasperVector@gmail.com}{\texttt{CasperVector@gmail.com}}.% }% } -\date{2017/03/01} +\date{2018/06/29} \maketitle \section{引言} @@ -55,29 +55,27 @@ 使开发者难以入门和精通,更不便于一般用户进行自定义; 其次,其排序方式很单一, 无法直接实现中文 \hologo{TeX} 用户常常遇到的按汉语拼音排序等需求。 - -与此相对应, -biblatex\supercite{biblatex}/biber\supercite{biber} +与此相对应,biblatex\supercite{biblatex}/biber\supercite{biber} 是一套新兴的 \hologo{TeX} 参考文献排版引擎, 其样式文件(设定参考文献样式的 \verb|bbx| 文件和设定引用样式的 \verb|cbx| 文件) 使用 \hologo{LaTeX} 编写,便于学习; 同时,其支持根据 locale 进行排序。 -目前 \hologo{TeX} 社区中尚无人发布为中文用户设计的 biblatex 样式。 为了个人需要,同时也是为了给社区提供一个有益的参考, 本文作者根据实际应用中遇到的常见需求编写了 -\verb|caspervector| 这个用于顺序编码制的中英文 biblatex 样式。 -其逻辑框架基于 -国家标准 GB/T 7714--2005\supercite{gbt7714-2005}, -但在其基础上根据个人审美趣味和 biblatex 所能实现的功能而 +\verb|caspervector| 这个中西文 biblatex 样式。 +其逻辑框架基于国家标准 GB/T 7714--2005\supercite{gbt7714-2005}, +但在后者基础上根据个人审美趣味和 biblatex 所能实现的功能而 对参考文献和引用格式进行了较大幅度的修改。 +用户如果需要更严格符合国家标准的样式,可以参考 +\verb|gb7714-2015|\supercite{blx-gb7714-2015}。 \section{许可协议} -版权所有 \copyright\ 2012--2017 Casper Ti.\ Vector。% +版权所有 \copyright\ 2012--2018 Casper Ti.\ Vector。% \verb|caspervector| 参考文献和引用样式以 \hologo{LaTeX} Project Public License\footnote{\ % - \url{http://www.latex-project.org/lppl/}.% + \url{https://www.latex-project.org/lppl/}.% }发布。% \verb|caspervector| 样式目前由其作者维护。 @@ -100,23 +98,28 @@ biblatex\supercite{biblatex}/biber\supercite{biber} \section{使用简介} \subsection{样式调用} -用户应当通过以下命令调用 \verb|caspervector| 样式: +用户应当通过以下命令调用 \verb|caspervector| 样式(如果须要使用 +作者--年编码制,应将 \verb|caspervector| 换成 \verb|caspervector-ay|): \begin{Verbatim}[frame = single] -% “utf8”可能需要改为“gbk”,根据用户使用的字符编码而定。 +% “utf8”可能须要改为“gbk”,根据用户使用的字符编码而定。 % “...” 代表其它选项。 \usepackage[ - backend = biber, style = caspervector, utf8, sorting = centy, ... + backend = biber, style = caspervector, utf8, sorting = cenyt, ... ]{biblatex} \end{Verbatim} 其中 \verb|sorting| 选项用于(全局)指定按哪些字段排序, 除 biblatex 提供的标准选项\supercite{biblatex}外,% -\verb|caspervector| 样式还提供 \verb|centy| 和 \verb|ecnty| 两种排序方案 +\verb|caspervector| 样式还提供 \verb|cenyt| 和 \verb|ecnyt| 两种排序方案 (\verb|caspervector| 默认设置为 \verb|none| 排序方案,即按引用顺序排序), 表示依次按文献语言 -(\textbf{ce}nty 表示中文文献在前,\textbf{ec}nty 表示英文文献在前; +(\textbf{ce}nyt 表示中文文献在前,\textbf{ec}nyt 表示西文文献在前; 文献语言根据 \verb|language| 字段进行区分,详见第 \ref{sec:fields} 部分)、 -编著者姓名(\textbf{n}ame)、标题(\textbf{t}itle) -和出版年(\textbf{y}ear)排序。 +编著者姓名(\textbf{n}ame)、出版年(\textbf{y}ear) +和标题(\textbf{t}itle)排序\footnote{\ % + v0.2.x 和更早版本的 \texttt{caspervector} + 样式支持的额外排序方案为 \texttt{centy} 和 \texttt{ecnty}; + 为了支持作者--年编码制,之后的版本不再支持这两种方案。% +}。 参考文献数据库 (\verb|.bib| 文件,其格式见第 \ref{sec:fields}、\ref{sec:entries} 部分) @@ -124,14 +127,14 @@ biblatex\supercite{biblatex}/biber\supercite{biber} \myemph{注意不要省略扩展名 \texttt{.bib}}。 例如,本文的参考文献数据库就是通过下述命令导入的: \begin{Verbatim}[frame = single] -\addbibresource{readme.bib} +\addbibresource{caspervector.bib} \end{Verbatim} 用户可以多次使用 \verb|\addbibresource| 命令, 从多个参考文献数据库中导入参考文献。 \subsection{引用命令} -\verb|caspervector| 样式支持 biblatex 所提供的引用命令, +\verb|caspervector| 样式在顺序编码制下支持 biblatex 所提供的引用命令, 其中最常用的是 \verb|\supercite|、\verb|\parencite| 和 \verb|\cite|。 三个命令的用法类似: \begin{Verbatim}[frame = single] @@ -145,15 +148,15 @@ biblatex\supercite{biblatex}/biber\supercite{biber} 而 \verb|\supercite| 产生上标且带方括号的引用标记\footnote{\ % biblatex 的默认设置是只上标、不带方括号, 而 \texttt{caspervector} 样式中根据作者见到的常见需求加上了方括号。% -}。 +}。作者--年编码制下引用命令的用法请参考随 \verb|caspervector| +样式附带的 \verb|caspervector-ay.pdf|(可用 \verb|texdoc| 命令查看)。 例如,在本文中,% \verb|\parencite{gbt7714-2005}| 的输出是“\parencite{gbt7714-2005}”, -而 +而以下代码的输出是“\cite[文献][第 4 页]{gbt7714-2005}”: \begin{Verbatim}[frame = single] \cite[文献][第 4 页]{gbt7714-2005} \end{Verbatim} -的输出是“\cite[文献][第 4 页]{gbt7714-2005}”。 \subsection{文献列表} @@ -170,25 +173,22 @@ biblatex\supercite{biblatex}/biber\supercite{biber} 参考文献列表参与章节编号(当然也会被自动加入目录中)。 \end{itemize} -例如,用 +例如,以下代码可以将文献列表的标题改为 “文献”,并使文献列表参与章节编号: \begin{Verbatim}[frame = single] \printbibliography[title = {文献}, heading = bibnumbered] \end{Verbatim} -可以将文献列表的标题改为 “文献”, -并使文献列表参与章节编号。 \subsection{编译方法} -一般情况下,依次执行 +一般情况下,依次执行以下代码即可实现正确的排版: \begin{Verbatim}[frame = single] # “texfile”是被 TeX 编译的文件名中除去“.tex”的部分。 -# “pdflatex”可改为其它 TeX 程序,使用纯 latex 编译时可能还需要运行 dvipdfmx。 +# “pdflatex”可改为其它 TeX 程序,使用纯 latex 编译时可能还须要运行 dvipdfmx。 pdflatex texfile biber -l zh__pinyin texfile pdflatex texfile pdflatex texfile \end{Verbatim} -即可实现正确的排版。 上述执行 \verb|biber| 的一行命令中,% \verb|-l| 的参数 \verb|zh__pinyin| 可改为其它 @@ -204,8 +204,7 @@ pdflatex texfile \begin{itemize} \item \verb|author|、\verb|editor|、\verb|translator|: - 作者、编者、译者。\\ - \myemph{% + 作者、编者、译者。\\\myemph{% 注: 在析出文献条目中,% \texttt{author}、\texttt{editor}、\texttt{translator} @@ -215,15 +214,25 @@ pdflatex texfile } \item \verb|bookauthor|、\verb|booktitle|:析出文献所出自文献的作者和题名。 \item \verb|title|:文献题名。 + \item \verb|edition|:文献版本\footnote{\ % + v0.3.2 和更早版本的 \texttt{caspervector} 样式不支持 \texttt{edition} + 字段,但可手动在 \texttt{title} 字段中标注相应信息。% + },若为整数则会自动排版为“第 2 版”或“2nd ed.”等形式。 \item \verb|type|:文献类型和电子文献载体标志代码\supercite{gbt7714-2005}。 \item \verb|location|:出版地,或(在 \verb|@patent| 类条目中)专利申请地。 \item \verb|publisher|:出版者,或学位论文作者申请学位的单位。 - \item \verb|journal|/\verb|journaltitle|:连续出版物题名,这两个字段是等价的。 - \item \verb|year|/\verb|date|:出版年、日期,这两个字段只需填写一个即可。 + \item \verb|journal|/\verb|journaltitle|:连续出版物题名,两个字段互相等价。 + \item \verb|year|/\verb|date|:出版年、日期,这两个字段只须填写一个即可。 \item \verb|volume|:期刊中文献所处的卷号。 \item \verb|number|:期刊中文献所处的期号,或专利的申请号。 \item \verb|pages|:文献页码。 - \item \verb|url|:文献的 URL。 + \item \verb|url|/\verb|eid|: + 文献的 URL 和(arXiv 等平台的)电子标识码。\\\myemph{% + 注:% + \texttt{url} 字段会被自动排版成链接, + 但 \texttt{eid} 字段须要用户手工定义格式; + 后者的一个示例见第 \ref{sec:faq} 部分。% + } \item \verb|urldate|:检索日期,或 URL 的访问日期。 \item \verb|addendum|:补充说明,排版在文献列表中相应条目的最后。 \end{itemize} @@ -233,7 +242,8 @@ pdflatex texfile \begin{itemize} \item \verb|language|: 值为 \verb|chinese| 时,相应条目在文献列表中用中文排版; - 否则(为其他值或未定义时)用英文排版。 + 否则(为其他值或未定义时)用西文排版。 + \item \verb|note|:用于排版一些特殊内容,参考第 \ref{sec:faq} 部分。 \item \verb|userf|:\verb|caspervector| 样式内部使用。 \item 其它通用特殊字段,见 biblatex 手册\supercite{biblatex}。 \end{itemize} @@ -248,10 +258,10 @@ pdflatex texfile \verb|@book| 类条目必需的基本字段为 \verb|title|。 除必需字段之外,\verb|@book| 类条目也支持以下基本字段:% -\verb|author|、\verb|editor|、\verb|translator|、% +\verb|author|、\verb|editor|、\verb|translator|、\verb|edition|、% \verb|type|、\verb|location|、\verb|publisher|、% -\verb|year|/\verb|date|、\verb|pages|、% -\verb|url|、\verb|urldate|、\verb|addendum|。 +\verb|year|/\verb|date|(作者--年编码制中必需)、\verb|pages|、% +\verb|url|/\verb|eid|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@incollection} 类型} @@ -263,9 +273,9 @@ pdflatex texfile 除必需字段之外,\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|。 +\verb|edition|、\verb|type|、\verb|location|、\verb|publisher|、% +\verb|year|/\verb|date|(作者--年编码制中必需)、\verb|pages|、% +\verb|url|/\verb|eid|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@periodical} 类型} @@ -277,8 +287,9 @@ pdflatex texfile 除必需字段之外,\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|。 +\verb|year|/\verb|date|(作者--年编码制中必需)、% +\verb|volume|、\verb|number|、\verb|pages|、% +\verb|url|/\verb|eid|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@article} 类型} @@ -291,7 +302,7 @@ pdflatex texfile 除必需字段之外,\verb|@article| 类条目也支持以下基本字段:% \verb|author|、\verb|title|、\verb|type|、% \verb|volume|、\verb|number|、\verb|pages|、% -\verb|url|、\verb|urldate|、\verb|addendum|。 +\verb|url|/\verb|eid|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@patent} 类型} @@ -303,7 +314,7 @@ pdflatex texfile 除必需字段之外,\verb|@article| 类条目也支持以下基本字段:% \verb|author|、\verb|title|、\verb|type|、% \verb|location|、\verb|number|、% -\verb|url|、\verb|urldate|、\verb|addendum|。 +\verb|url|/\verb|eid|、\verb|urldate|、\verb|addendum|。 \subsection{\texttt{@customf} 类型} @@ -319,7 +330,7 @@ pdflatex texfile 这样虽不能自动根据这些字段排版, 但仍可以根据它们 (主要是 \texttt{language}、\texttt{author}、\texttt{title} - 和 \texttt{year} 四个字段) + 和 \texttt{year}/\texttt{date} 五个字段) 进行排序。 % } @@ -327,8 +338,8 @@ pdflatex texfile 使用 biblatex 3.4 或更新版本的用户可以通过对不同的 \verb|\printbibliography| 命令采用不同的调用环境来实现对不同部分文献按不同方案排序。 -例如,如需对被引用的文献按照引用顺序排序, -而对未引用的文献按照英文文献在前、中文文献在后排序, +例如,如须对被引用的文献按照引用顺序排序, +而对未引用的文献按照西文文献在前、中文文献在后排序, 则可以在导言区中加入下列几行代码: \begin{Verbatim}[frame = single] % 新建条目分类(category)用于区分被引用和未引用的文献条目。 @@ -342,8 +353,8 @@ pdflatex texfile \begin{refcontext}[sorting = none] \printbibliography[category = cited, ..., title = {References}] \end{refcontext} -% 按英文文献在前、中文文献在后排版“cited”分类之外,即未被引用的文献条目。 -\begin{refcontext}[sorting = ecnty] +% 按西文文献在前、中文文献在后排版“cited”分类之外,即未被引用的文献条目。 +\begin{refcontext}[sorting = ecnyt] \printbibliography[notcategory = cited, ..., title = {Works Not Cited}] \end{refcontext} \end{Verbatim} @@ -360,55 +371,84 @@ pdflatex texfile \nocite{*} \end{Verbatim} -使用 biblatex 2.x 或更旧版本的用户需要 +使用 biblatex 2.x 或更旧版本的用户须要 将在正文中准备排版文献列表的位置使用的代码改为: \begin{Verbatim}[frame = single] % 按引用顺序排版“cited”分类,即被引用的文献条目。 \printbibliography[category = cited, ..., sorting = none, title = {References}] -% 按英文文献在前、中文文献在后排版“cited”分类之外,即未被引用的文献条目。 +% 按西文文献在前、中文文献在后排版“cited”分类之外,即未被引用的文献条目。 \printbibliography% - [notcategory = cited, ..., sorting = ecnty, title = {Works Not Cited}] + [notcategory = cited, ..., sorting = ecnyt, title = {Works Not Cited}] \end{Verbatim} biblatex 3.0--3.3 中有一个 bug\footnote{\ % 可以参考 \url{https://tex.stackexchange.com/questions/250548/}。% } 导致分类排序失效,此问题基本无解。 -\section{FAQ 和其它使用提示} +\section{FAQ 和其它使用提示}\label{sec:faq} 用户可以通过省略可选字段的方式来避免排版相应的内容。 例如,省略 \verb|type| 字段便可使相应条目不排版文献类型和电子文献载体标志代码。 -用户可以通过手动调用格式化命令来临时覆盖预设的格式设定, -例如文献 \parencite{1-7} 中的出版年便是通过以下设定得到的 -(\verb|sortyear| 字段的用法请参考 biblatex 手册\supercite{biblatex}): +biblatex 的标准格式支持通过 \verb|eprint|、\verb|eprintclass|、\verb|eprinttype| +等字段排版 arXiv 等平台的电子标识码;但本文作者因认为其用法死板、实现繁琐, +故使用了自由格式的 \verb|eid| 字段。用户可以使用 \verb|\printtext| +命令调用 biblatex 中内置的相应排版功能,例如文献 \parencite{perelman} +中的电子标识码便是通过以下设定得到的: \begin{Verbatim}[frame = single] -sortyear = {1845}, -year = {1845\textmd{(\emph{清同治四年})}}, +eid = {\printtext[eprint:arxiv]{math/0211159}}, \end{Verbatim} +其中 \verb|arxiv| 可以替换为其它在标准格式中被 \verb|eprinttype| +字段支持的字符串,详见 biblatex 手册\supercite{biblatex}; +如果须要排版 DOI,应将方括号中的整个字符串替换为 \verb|doi|。% +\myemph{% + 须要特别注意的是,如果电子标识码中有特殊字符如 + “\texttt{\_}”“\texttt{\%}”等时,应将相应字符用反斜杠转义为 + “\texttt{\textbackslash\_}”“\texttt{\textbackslash\%}”等。% +} -\verb|caspervector| 样式不支持 \verb|edition| 字段, -用户可以在 \verb|title| 等字段中手动标注。 +用户在很多时候可以通过手动调用格式化命令来临时覆盖预设的格式设定, +例如对于一个 \verb|@article| 类型的条目,以下代码将使年卷期号排版为类似于 +“\textbf{2018},\textit{14}(\hologo{TeX} 特刊)”的形式: +\begin{Verbatim}[frame = single] +year = {2018}, +volume = {14}, +number = {\hologo{TeX} 特刊}, +\end{Verbatim} -直接使用 \verb|userf| 字段是否等于 \verb|zh| 或 \verb|cn| -来区分中英文文献的功能在近期仍将被支持,但在将来可能被去掉或修改。 +因为 biblatex 内部实现的缘故,\verb|year|/\verb|date| +字段被设为一些特殊内容时可能导致其出错。如果的确有这样的排版需求, +可以使用 \verb|note| 字段,例如文献 \parencite{1-7} +中的出版年便是通过以下设定得到的(\verb|origdate| 字段不会被排版出来, +但会在排序时被 \verb|caspervector| 样式考虑; +其具体用法请参考 biblatex 手册)\footnote{\ % + v0.2.x 和更早版本的 \texttt{caspervector} 样式支持直接在 + \texttt{year} 字段中设定特殊内容;在之后的版本中,为了支持作者--年编码制, + \texttt{caspervector} 的内部实现进行了调整,导致其不再支持这样的用法。% +}: +\begin{Verbatim}[frame = single] +origdate = {1845}, +note = {\textbf{1845}(\emph{清同治四年})}, +\end{Verbatim} \section{存在的问题} -如第 \ref{sec:catsort} 部分所述,biblatex 3.0--3.3 的功能调整导致分类排序失效。 +如第 \ref{sec:faq} 部分所述,% +\verb|year|/\verb|date| 字段被设为一些特殊内容时可能导致出错。 +此外如第 \ref{sec:catsort} 部分所述,% +biblatex 3.0--3.3 的功能调整导致分类排序失效。% \verb|caspervector| 样式的作者对此表示遗憾,希望用户能谅解。 -因为 biblatex 现有功能的限制,一些需求无法直接实现。 -例如类似于文献 \parencite{3-2} 中同时有出版起止年和起止期号的情况就无法自动排版, -只能通过用户手动实现。 -下面两种方式均可实现上述需求 -(\verb|sortyear| 字段的用法请参考 biblatex 手册\supercite{biblatex}): +因为 biblatex 现有功能的限制,一些需求无法直接实现。例如类似于文献 +\parencite{3-2} 中同时有出版起止年和起止期号的情况就无法自动排版, +只能通过用户手动实现。下面两种方式均可实现上述需求 +(\verb|origdate| 字段的用法请参考第 \ref{sec:faq} 部分): \begin{Verbatim}[frame = single] @periodical{3-2, author = {中国图书馆学会}, title = {图书馆学通讯}, type = {J}, - sortyear = {1957}, - year = {\textmd{\textbf{1957}(1) -- \textbf{1990}(4)}}, + origdate = {1957/1990}, + note = {\textbf{1957}(1) -- \textbf{1990}(4)}, location = {北京}, publisher = {北京图书馆}, language = {chinese}, @@ -419,7 +459,7 @@ year = {1845\textmd{(\emph{清同治四年})}}, @customf{3-2, author = {中国图书馆学会}, title = {图书馆学通讯}, - sortyear = {1957}, + date = {1957/1990}, addendum = {中国图书馆学会。 \textit{图书馆学通讯} [J]。 \textbf{1957}(1) -- \textbf{1990}(4)。 @@ -427,12 +467,12 @@ year = {1845\textmd{(\emph{清同治四年})}}, language = {chinese}, } \end{Verbatim} -这两种方法中更加推荐使用前者,因为前者只需手动实现出版年和期号的排版。 +这两种方法中更加推荐使用前者,因为前者只须手动实现出版年和期号的排版。 \begin{refcontext}[sorting = none] \printbibliography[category = cited, heading = bibnumbered, title = {本文参考文献}] \end{refcontext} -\begin{refcontext}[sorting = ecnty] +\begin{refcontext}[sorting = ecnyt] \printbibliography[notcategory = cited, heading = bibnumbered, title = {% 其它参考文献示例 (引自\texorpdfstring{文献 \parencite{gbt7714-2005}}{ GB/T 7714-2005})% diff --git a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf b/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf Binary files differdeleted file mode 100644 index 9091bac3d58..00000000000 --- a/Master/texmf-dist/doc/latex/biblatex-caspervector/readme.pdf +++ /dev/null diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-base.def b/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-base.def new file mode 100644 index 00000000000..279b7e5281f --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-base.def @@ -0,0 +1,375 @@ +% Casper Ti. Vector's biblatex style +% +% Copyright (c) 2012-2018 Casper Ti. Vector +% +% This work may be distributed and/or modified under the conditions of the +% LaTeX Project Public License, either version 1.3 of this license or (at +% your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX version +% 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% The current maintainer of this work is Casper Ti. Vector. +% +% This work consists of the following files: +% caspervector.bbx +% caspervector.cbx +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def + +\ProvidesFile{blx-caspervector-base.def}% + [2018/06/29 v0.3.3 Casper Ti. Vector's biblatex library] + +\RequireBiber[3] +\newtoggle{bbx:gbk} +\newtoggle{bbx:ugly} +\newtoggle{bbx:bfdate}\toggletrue{bbx:bfdate} +\DeclareBibliographyOption{utf8}[true]{\togglefalse{bbx:gbk}} +\DeclareBibliographyOption{gbk}[true]{\toggletrue{bbx:gbk}} +\DeclareBibliographyOption{ugly}[true]{\settoggle{bbx:ugly}{#1}} +\ExecuteBibliographyOptions{% + gbk, ugly = false, autopunct = false, alldates = iso, + minnames = 3, minitems = 3, maxcitenames = 2, mincitenames = 1% +} +\AtEndOfPackage{% + \iftoggle{bbx:gbk}{ + \input{blx-caspervector-gbk.def} + \ExecuteBibliographyOptions{texencoding = GBK} + }{ + \input{blx-caspervector-utf8.def} + \ExecuteBibliographyOptions{texencoding = UTF-8} + }% + \iftoggle{bbx:ugly}{ + \newcommand*{\bbx@citecomma}{\addcomma\space} + \newcommand*{\bbx@citebcomma}{\addcomma\space} + \newcommand*{\bbx@citescolon}{\addsemicolon\space} + \newcommand*{\bbx@cepunct}[2]{#2} + \DefineBibliographyStrings{english}{ + andmore = {\bbx@cietext{\bbx@cnetal}{et\addabbrvspace al\adddot}}, + andothers = {\bbx@cietext{\bbx@cnetal}{et\addabbrvspace al\adddot}}, + } + \DeclareFieldFormat*{booktitle}{#1} + \DeclareFieldFormat*{journaltitle}{#1} + \DeclareFieldFormat*{title}{#1} + \DeclareFieldFormat*{volume}{#1} + \newbibmacro*{typespace}{\setunit*{\addspace}} + }{ + \newcommand*{\bbx@citecomma}{\bbx@cncomma} + \newcommand*{\bbx@citebcomma}{\bbx@cnbcomma} + \newcommand*{\bbx@citescolon}{\bbx@cncomma} + \newcommand*{\bbx@cepunct}[2]{\iffieldequalstr{userf}{zh}{#1}{#2}} + \DefineBibliographyStrings{english}{ + andmore = + {\bbx@cietext{\bbx@cnetal}{\mkbibemph{et\addabbrvspace al\adddot}}}, + andothers = + {\bbx@cietext{\bbx@cnetal}{\mkbibemph{et\addabbrvspace al\adddot}}}, + } + \DeclareFieldFormat*{booktitle}{\mkbibemph{#1}} + \DeclareFieldFormat*{journaltitle}{\mkbibemph{#1}} + \DeclareFieldFormat*{title}{\mkbibemph{#1}} + \DeclareFieldFormat*{volume}{\mkbibemph{#1}} + \DeclareFieldFormat[inbook, inproceedings, incollection, article]% + {title}{\bbx@bibquote{\mkbibemph{#1}}} + \newbibmacro*{typespace}{\ifboolexpr{test {\bbx@cepunct} and ( + test {\ifentrytype{inbook}} or test {\ifentrytype{inproceedings}} or + test {\ifentrytype{incollection}} or test {\ifentrytype{article}} + )}{}{\setunit*{\addspace}}} + }% + \ifboolexpr{not test {\iftoggle{bbx:bfdate}} or test {\iftoggle{bbx:ugly}}}% + {\DeclareFieldFormat*{date}{#1}}% + {\DeclareFieldFormat*{date}{% + \ifboolexpr{test {\iffieldundef{month}} and test {\iffieldundef{day}}}% + {\mkbibbold{#1}}{#1}% + }}% +} + +\newcommand*{\bbx@cetext}[2]{\iffieldequalstr{userf}{zh}{#1}{#2}} +\newcommand*{\bbx@cietext}[2]{\ifboolexpr{% + test {\ifcitation} or test {\iffieldequalstr{userf}{zh}} +}{#1}{#2}} +\newcommand*{\bbx@cecomma}{\bbx@cepunct{\bbx@cncomma}{\addcomma\addspace}} +\newcommand*{\bbx@cecolon}{\bbx@cepunct{\bbx@cncolon}{\addcolon\addspace}} +\newcommand*{\bbx@cescolon}{\bbx@cepunct{\bbx@cnscolon}{\addsemicolon\addspace}} +\newcommand*{\bbx@ceperiod}{\bbx@cepunct{\bbx@cnperiod}{\addperiod\addspace}} +\newcommand*{\bbx@bibquote}[1]% + {\bbx@cepunct{\bbx@cnldquot{#1}\bbx@cnrdquot}{\mkbibquote{#1}}} +\renewcommand*{\finallistdelim}% + {\bbx@cetext{\bbx@cecomma}{\addspace\bibstring{and}\space}} +\renewcommand*{\multilistdelim}{\bbx@cecomma} +\renewcommand*{\finalnamedelim}{\ifcitation{\bbx@citebcomma}{\finallistdelim}} +\renewcommand*{\multinamedelim}{\ifcitation{\bbx@citebcomma}{\multilistdelim}} +\renewcommand*{\postnotedelim}{\bbx@citecomma} +\renewcommand*{\finentrypunct}% + {\iffieldundef{addendum}{\bbx@cepunct{\bbx@cnperiod}{.}}{}} +\DefineBibliographyExtras{english}{% + \renewcommand*{\finalandcomma}{}% +} + +\DefineBibliographyStrings{english}% + {bibliography = {\bbx@cnbib}, references = {\bbx@cnbib}} +\DeclareFieldFormat*{pages}{#1} +\DeclareFieldFormat*{url}{\url{#1}} +\DeclareFieldFormat*{urldate}{#1} +\DeclareFieldFormat*{type}{\mkbibbrackets{#1}} +\DeclareFieldFormat*{number}{\mkbibparens{#1}} +\DeclareFieldFormat[patent]{number}{#1} +\DeclareFieldFormat*{edition}{% + \bbx@cetext% + {\ifinteger{#1}{{\bbx@cnnr} {#1} {\bbx@cnedition}}{#1}}% + {\ifinteger{#1}{\mkbibordedition{#1}~\bibstring{edition}}{#1\isdot}}% +} +\newcommand*{\bbx@print}[1]{\iffieldundef{#1}{}{\printfield{#1}}} +\newcommand*{\bbx@byspace}[1]% + {\ifnumgreater{\value{#1}}{\value{maxnames}}{}{\addspace}} +\newbibmacro*{cein:}% + {\printtext{\bbx@cetext{\bbx@cnin}{In}\bbx@cecolon}\printtext{}} + +\newbibmacro*{ceedtrans}[1]{% + \ifboolexpr{test {\iftoggle{blx@use#1}} and not test {\ifnameundef{#1}}}{% + \printnames{#1}% + \bbx@cetext% + {\printtext{\bbx@byspace{#1}\@nameuse{bbx@cn#1}}}% + {\setunit{\printdelim{#1typedelim}}\usebibmacro{#1strg}}% + \clearname{#1}% + }{}% +} +\renewbibmacro*{editor}{\usebibmacro{ceedtrans}{editor}} +\renewbibmacro*{translator}{\usebibmacro{ceedtrans}{translator}} +\newbibmacro*{bookauthor/editor}{% + \ifnameundef{bookauthor}% + {\usebibmacro{ceedtrans}{editor}}{\printnames{bookauthor}}% +} + +\newbibmacro*{cebyauthx}[1]{% + \ifboolexpr{ + test {\ifnameundef{#1}} or + (test {\ifstrequal{#1}{author}} and test {\ifuseauthor}) + }{}{% + \bbx@cetext{% + \printnames[by#1]{#1}% + \printtext{\bbx@byspace{#1}\@nameuse{bbx@cn#1}}% + }{% + \bibstring{by#1}\setunit{\addspace}% + \printnames[by#1]{#1}% + }% + }% +} +\renewbibmacro*{byauthor}{\usebibmacro{cebyauthx}{author}} +\renewbibmacro*{byeditor}{\usebibmacro{cebyauthx}{editor}} +\renewbibmacro*{bytranslator}{\usebibmacro{cebyauthx}{translator}} +\newbibmacro*{byauthor+byeditor+bytranslator}{% + \usebibmacro{byauthor}\setunit*{\bbx@cescolon}% + \usebibmacro{byeditor}\setunit*{\bbx@cescolon}% + \usebibmacro{bytranslator}% +} + +\providebibmacro*{bbx:ifnodate}[2]{#2} +\newbibmacro*{journaltitle/title}{% + \iffieldundef{journaltitle}% + {\bbx@print{title}}{\printfield[title]{journaltitle}}% +} +\newbibmacro*{location+publisher+date+note+pages}{% + \printlist{location}\setunit*{\bbx@cecolon}\printlist{publisher}% + \ifboolexpr{test {\iflistundef{location}} and test {\iflistundef{publisher}}}% + {}{\setunit{\bbx@cecomma}}% + \usebibmacro{date}\setunit*{\bbx@cecomma}\printfield{note}% + \ifboolexpr{% + (test {\usebibmacro{bbx:ifnodate}} or test {\ifdateunknown}) and + test {\iffieldundef{note}} + }{}{\setunit{\bbx@cecolon}}% + \printfield{pages}% +} +\newbibmacro*{date+volume+number+note+pages}{% + \usebibmacro{date}% + \iffieldundef{volume}{}{\setunit*{\bbx@cecomma}\printfield{volume}}% + \bbx@print{number}\setunit*{\bbx@cecomma}\printfield{note}% + \ifboolexpr{% + (test {\usebibmacro{bbx:ifnodate}} or test {\ifdateunknown}) and + test {\iffieldundef{volume}} and test {\iffieldundef{number}} and + test {\iffieldundef{note}} + }{}{\setunit{\bbx@cecolon}}% + \printfield{pages}% +} +\newbibmacro*{eid+url+urldate}{% + \printfield{eid}\setunit*{\bbx@cecomma}% + \printfield{url}\setunit*{\bbx@cecomma}% + \iffieldundef{urlyear}{}{% + \printtext{\bbx@cetext{\bbx@cnretr}{retrieved on}\addspace}% + \printurldate% + }% +} + +\DeclareBibliographyDriver{book}{% + \usebibmacro{bibindex}\usebibmacro{begentry}% + \usebibmacro{author/editor/translator}% + \printunit*{\bbx@ceperiod}\newblock + \bbx@print{title}\usebibmacro{typespace}% + \bbx@print{type}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{byauthor+byeditor+bytranslator}% + \printunit{\bbx@ceperiod}\newblock + \printfield{edition}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{location+publisher+date+note+pages}% + \printunit{\bbx@ceperiod}\newblock + \usebibmacro{eid+url+urldate}\printunit{\bbx@ceperiod}\newblock + \printfield{addendum}\usebibmacro{finentry}% +} + +\DeclareBibliographyDriver{incollection}{% + \usebibmacro{bibindex}\usebibmacro{begentry}% + \usebibmacro{author/translator}\printunit*{\bbx@ceperiod}\newblock + \bbx@print{title}\usebibmacro{typespace}% + \bbx@print{type}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{byauthor}\setunit*{\bbx@cescolon}% + \usebibmacro{bytranslator}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{cein:}\newblock + \usebibmacro{bookauthor/editor}\printunit*{\bbx@ceperiod}\newblock + \printfield{booktitle}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{byeditor}\printunit{\bbx@ceperiod}\newblock + \printfield{edition}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{location+publisher+date+note+pages}% + \printunit{\bbx@ceperiod}\newblock + \usebibmacro{eid+url+urldate}\printunit{\bbx@ceperiod}\newblock + \printfield{addendum}\usebibmacro{finentry}% +} + +\DeclareBibliographyDriver{periodical}{% + \usebibmacro{bibindex}\usebibmacro{begentry}% + \usebibmacro{author/editor/translator}% + \printunit*{\bbx@ceperiod}\newblock + \usebibmacro{journaltitle/title}\usebibmacro{typespace}% + \bbx@print{type}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{byauthor+byeditor+bytranslator}% + \printunit{\bbx@ceperiod}\newblock + \usebibmacro{date+volume+number+note+pages}% + \printunit{\bbx@ceperiod}\newblock + \printlist{location}\setunit*{\bbx@cecolon}% + \printlist{publisher}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{eid+url+urldate}\printunit{\bbx@ceperiod}\newblock + \printfield{addendum}\usebibmacro{finentry}% +} + +\DeclareBibliographyDriver{article}{% + \usebibmacro{bibindex}\usebibmacro{begentry}% + \usebibmacro{author/translator}\printunit*{\bbx@ceperiod}\newblock + \bbx@print{title}\usebibmacro{typespace}% + \bbx@print{type}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{byauthor+byeditor+bytranslator}% + \printunit{\bbx@ceperiod}\newblock + \printfield{journaltitle}\setunit*{\bbx@cecomma}% + \usebibmacro{date+volume+number+note+pages}% + \printunit{\bbx@ceperiod}\newblock + \usebibmacro{eid+url+urldate}\printunit{\bbx@ceperiod}\newblock + \printfield{addendum}\usebibmacro{finentry}% +} + +\DeclareBibliographyDriver{patent}{% + \usebibmacro{bibindex}\usebibmacro{begentry}% + \usebibmacro{author/editor/translator}% + \printunit*{\bbx@ceperiod}\newblock + \bbx@print{title}\usebibmacro{typespace}% + \bbx@print{type}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{byauthor+byeditor+bytranslator}% + \printunit{\bbx@ceperiod}\newblock + \printlist{location}\setunit*{\bbx@cecolon}% + \printfield{number}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{date}\setunit*{\bbx@cecomma}% + \printfield{note}\printunit{\bbx@ceperiod}\newblock + \usebibmacro{eid+url+urldate}\printunit{\bbx@ceperiod}\newblock + \printfield{addendum}\usebibmacro{finentry}% +} + +\DeclareBibliographyDriver{customf}{% + \usebibmacro{bibindex}\usebibmacro{begentry}% + \printfield{addendum}\usebibmacro{finentry}% +} + +\DeclareBibliographyAlias{booklet}{book} +\DeclareBibliographyAlias{collection}{book} +\DeclareBibliographyAlias{manual}{book} +\DeclareBibliographyAlias{misc}{book} +\DeclareBibliographyAlias{online}{book} +\DeclareBibliographyAlias{proceedings}{book} +\DeclareBibliographyAlias{report}{book} +\DeclareBibliographyAlias{thesis}{book} +\DeclareBibliographyAlias{unpublished}{book} +\DeclareBibliographyAlias{inbook}{incollection} +\DeclareBibliographyAlias{inproceedings}{incollection} +\DeclareBibliographyAlias{*}{book} + +\DeclareSortingTemplate{ecnyt}{ + \sort{\field{presort}} + \sort[final]{\field{sortkey}} + \sort{ + \field{userf} + } + \sort{ + \field{sortname} + \field{author} + \field{editor} + \field{translator} + \field{sorttitle} + \field{title} + } + \sort{ + \field{sortyear} + \field{year} + } + \sort{ + \field{sorttitle} + \field{title} + } + \sort{ + \field{volume} + \literal{0} + } +} + +\DeclareSortingTemplate{cenyt}{ + \sort{\field{presort}} + \sort[final]{\field{sortkey}} + \sort[direction = descending]{ + \field{userf} + } + \sort{ + \field{sortname} + \field{author} + \field{editor} + \field{translator} + \field{sorttitle} + \field{title} + } + \sort{ + \field{sortyear} + \field{origyear} + \field{year} + } + \sort{ + \field{sorttitle} + \field{title} + } + \sort{ + \field{volume} + \literal{0} + } +} + +\DeclareStyleSourcemap{ + \maps{ + \map{ + \step[ + fieldsource = language, match = \regexp{^chinese$}, + fieldset = userf, fieldvalue = {zh} + ] + } + \map{ + \step[fieldset = userf, fieldvalue = {en}] + } + } +} + +% vim:ft=tex:ts=2:sw=2 diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-gbk.def b/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-gbk.def index b2bf0cc5155..9d76570a3b8 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-gbk.def +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-gbk.def @@ -1,12 +1,12 @@ % Casper Ti. Vector's biblatex style % -% Copyright (c) 2012-2016 Casper Ti. Vector +% Copyright (c) 2012-2016,2018 Casper Ti. Vector % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at % your option) any later version. % The latest version of this license is in -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. % @@ -16,22 +16,28 @@ % This work consists of the following files: % caspervector.bbx % caspervector.cbx -% biblatex-caspervector-gbk.def -% biblatex-caspervector-utf8.def +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def -\ProvidesFile{biblatex-caspervector-gbk.def}% - [2017/03/01 v0.2.7 Chinese punctuations and captions in GBK] +\ProvidesFile{blx-caspervector-gbk.def}% + [2018/06/29 v0.3.3 Chinese punctuations and captions in GBK] \newcommand*\bbx@cnldquot{} \newcommand*\bbx@cnrdquot{} \newcommand*\bbx@cncomma{} +\newcommand*\bbx@cnbcomma{} \newcommand*\bbx@cnscolon{} \newcommand*\bbx@cncolon{} \newcommand*\bbx@cnperiod{} \newcommand*\bbx@cnetal{} -\newcommand*\bbx@cnauth{} -\newcommand*\bbx@cnedit{} -\newcommand*\bbx@cntrans{} +\newcommand*\bbx@cnauthor{} +\newcommand*\bbx@cneditor{} +\newcommand*\bbx@cntranslator{} +\newcommand*\bbx@cnnr{} +\newcommand*\bbx@cnedition{} \newcommand*\bbx@cnin{} \newcommand*\bbx@cnretr{} \newcommand*\bbx@cnbib{ο} diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-utf8.def b/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-utf8.def index a30f255fc49..8853f52ac4b 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/biblatex-caspervector-utf8.def +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/blx-caspervector-utf8.def @@ -1,12 +1,12 @@ % Casper Ti. Vector's biblatex style % -% Copyright (c) 2012-2016 Casper Ti. Vector +% Copyright (c) 2012-2016,2018 Casper Ti. Vector % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at % your option) any later version. % The latest version of this license is in -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. % @@ -16,22 +16,28 @@ % This work consists of the following files: % caspervector.bbx % caspervector.cbx -% biblatex-caspervector-gbk.def -% biblatex-caspervector-utf8.def +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def -\ProvidesFile{biblatex-caspervector-utf8.def}% - [2017/03/01 v0.2.7 Chinese punctuations and captions in UTF-8] +\ProvidesFile{blx-caspervector-utf8.def}% + [2018/06/29 v0.3.3 Chinese punctuations and captions in UTF-8] \newcommand*\bbx@cnldquot{“} \newcommand*\bbx@cnrdquot{”} \newcommand*\bbx@cncomma{,} +\newcommand*\bbx@cnbcomma{、} \newcommand*\bbx@cnscolon{;} \newcommand*\bbx@cncolon{:} \newcommand*\bbx@cnperiod{。} \newcommand*\bbx@cnetal{等} -\newcommand*\bbx@cnauth{著} -\newcommand*\bbx@cnedit{编} -\newcommand*\bbx@cntrans{译} +\newcommand*\bbx@cnauthor{著} +\newcommand*\bbx@cneditor{编} +\newcommand*\bbx@cntranslator{译} +\newcommand*\bbx@cnnr{第} +\newcommand*\bbx@cnedition{版} \newcommand*\bbx@cnin{出自} \newcommand*\bbx@cnretr{检索于} \newcommand*\bbx@cnbib{参考文献} diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector-ay.bbx b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector-ay.bbx new file mode 100644 index 00000000000..9e21d3d066d --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector-ay.bbx @@ -0,0 +1,75 @@ +% Casper Ti. Vector's biblatex style +% +% Copyright (c) 2012-2018 Casper Ti. Vector +% +% This work may be distributed and/or modified under the conditions of the +% LaTeX Project Public License, either version 1.3 of this license or (at +% your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX version +% 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% The current maintainer of this work is Casper Ti. Vector. +% +% This work consists of the following files: +% caspervector.bbx +% caspervector.cbx +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def + +\ProvidesFile{caspervector-ay.bbx}% + [2018/06/29 v0.3.3 Casper Ti. Vector's author-year biblatex bibstyle] + +\RequireBibliographyStyle{authoryear-comp} +\input{blx-caspervector-base.def} +\appto\bbx@opt@mergedate@maximum{\renewbibmacro*{bbx:ifnodate}[2]{% + \iflabeldateisdate{#1}{#2}% +}\togglefalse{bbx:bfdate}} +\appto\bbx@opt@mergedate@compact{\renewbibmacro*{bbx:ifnodate}[2]{% + \iflabeldateisdate{#1}{#2}% +}\togglefalse{bbx:bfdate}} +\appto\bbx@opt@mergedate@basic{\renewbibmacro*{bbx:ifnodate}[2]{% + \ifboolexpr{ + test {\iflabeldateisdate} and + not test {\ifdateshavedifferentprecision{label}{}} + }{#1}{#2}% +}\toggletrue{bbx:bfdate}} +\appto\bbx@opt@mergedate@minimum{\renewbibmacro*{bbx:ifnodate}[2]{% + \ifboolexpr{ + test {\iflabeldateisdate} and test {\iffieldundef{extradate}} and + not test {\ifdateshavedifferentprecision{label}{}} + }{#1}{#2}% +}\toggletrue{bbx:bfdate}} +\appto\bbx@opt@mergedate@false% + {\renewbibmacro*{bbx:ifnodate}[2]{#2}\toggletrue{bbx:bfdate}} +\renewbibmacro*{date}{\usebibmacro{bbx:ifnodate}{}{\printdate}} + +\ExecuteBibliographyOptions% + {labeldate = year, mergedate = basic, dashed = false, sorting = ecnyt} +\DeclareNameAlias{author}{default} +\DeclareNameAlias{editor}{default} +\DeclareNameAlias{translator}{default} + +\newbibmacro*{ayedtrans}[1]{% + \ifboolexpr{test {\iftoggle{blx@use#1}} and not test {\ifnameundef{#1}}}{% + \usebibmacro{bbx:dashcheck}{\bibnamedash}{% + \printnames{#1}% + \bbx@cetext% + {\printtext{\bbx@byspace{#1}}}{\setunit{\printdelim{#1typedelim}}}% + \usebibmacro{bbx:savehash}% + }\bbx@cetext{\printtext{\@nameuse{bbx@cn#1}}}{\usebibmacro{#1strg}}% + \setunit{\printdelim{nameyeardelim}}\clearname{#1}% + }{% + \global\undef\bbx@lasthash + \usebibmacro{labeltitle}\setunit*{\printdelim{nonameyeardelim}}% + }\usebibmacro{date+extradate}% +} +\renewbibmacro*{editor}{\usebibmacro{ayedtrans}{editor}} +\renewbibmacro*{translator}{\usebibmacro{ayedtrans}{translator}} + +% vim:ft=tex:ts=2:sw=2 diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector-ay.cbx b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector-ay.cbx new file mode 100644 index 00000000000..50a78e9d40b --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector-ay.cbx @@ -0,0 +1,33 @@ +% Casper Ti. Vector's biblatex style +% +% Copyright (c) 2012-2014,2018 Casper Ti. Vector +% +% This work may be distributed and/or modified under the conditions of the +% LaTeX Project Public License, either version 1.3 of this license or (at +% your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX version +% 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% The current maintainer of this work is Casper Ti. Vector. +% +% This work consists of the following files: +% caspervector.bbx +% caspervector.cbx +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def + +\ProvidesFile{caspervector-ay.cbx}% + [2018/06/29 v0.3.3 Casper Ti. Vector's author-year biblatex citestyle] + +\RequireCitationStyle{authoryear-comp} +\renewcommand*{\compcitedelim}{\bbx@citebcomma} +\renewcommand*{\multicitedelim}{\bbx@citescolon} +\renewcommand*{\textcitedelim}{\bbx@citescolon} + +% vim:ft=tex:ts=2:sw=2 diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx index 88c20f1ba5a..e7960444992 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.bbx @@ -1,12 +1,12 @@ % Casper Ti. Vector's biblatex style % -% Copyright (c) 2012-2017 Casper Ti. Vector +% Copyright (c) 2012-2018 Casper Ti. Vector % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at % your option) any later version. % The latest version of this license is in -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. % @@ -16,338 +16,17 @@ % This work consists of the following files: % caspervector.bbx % caspervector.cbx -% biblatex-caspervector-gbk.def -% biblatex-caspervector-utf8.def +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def \ProvidesFile{caspervector.bbx}% - [2017/03/01 v0.2.7 Casper Ti. Vector's biblatex bibliography style] + [2018/06/29 v0.3.3 Casper Ti. Vector's numeric biblatex bibstyle] -\RequireBiber[3] -\RequireBibliographyStyle{numeric} - -\newtoggle{bbx:gbk} -\newtoggle{bbx:ugly} -\DeclareBibliographyOption{utf8}[true]{\togglefalse{bbx:gbk}} -\DeclareBibliographyOption{gbk}[true]{\toggletrue{bbx:gbk}} -\DeclareBibliographyOption{ugly}[true]{\settoggle{bbx:ugly}{#1}} -\ExecuteBibliographyOptions{ - gbk, ugly = false, alldates = iso8601, defernumbers = true, - sorting = none, minnames = 3, minitems = 3 -} -\AtEndOfPackage{% - \iftoggle{bbx:gbk}{ - \input{biblatex-caspervector-gbk.def} - \ExecuteBibliographyOptions{texencoding = GBK} - }{ - \input{biblatex-caspervector-utf8.def} - \ExecuteBibliographyOptions{texencoding = UTF-8} - } - \iftoggle{bbx:ugly}{ - \newcommand*{\bbx@cepunct}[2]{#2} - \DefineBibliographyStrings{english}{ - andmore = {\bbx@cetext{\bbx@cnetal}{et\addabbrvspace al\adddot}}, - andothers = {\bbx@cetext{\bbx@cnetal}{et\addabbrvspace al\adddot}}, - } - \DeclareFieldFormat*{booktitle}{#1} - \DeclareFieldFormat*{journaltitle}{#1} - \DeclareFieldFormat*{title}{#1} - \DeclareFieldFormat*{year}{#1} - \DeclareFieldFormat*{volume}{#1} - }{ - \newcommand*{\bbx@cepunct}[2]{\iffieldequalstr{userf}{zh}{#1}{#2}} - \DefineBibliographyStrings{english}{ - andmore = - {\bbx@cetext{\bbx@cnetal}{\mkbibemph{et\addabbrvspace al\adddot}}}, - andothers = - {\bbx@cetext{\bbx@cnetal}{\mkbibemph{et\addabbrvspace al\adddot}}}, - } - \DeclareFieldFormat*{booktitle}{\mkbibemph{#1}} - \DeclareFieldFormat*{journaltitle}{\mkbibemph{#1}} - \DeclareFieldFormat*{title}{\mkbibemph{#1}} - \DeclareFieldFormat*{year}{\mkbibbold{#1}} - \DeclareFieldFormat*{volume}{\mkbibemph{#1}} - \DeclareFieldFormat[inbook, inproceedings, incollection, article]% - {title}{\bbx@mybibquote{\mkbibemph{#1}}} - }% -} - -\newcommand*{\bbx@cetext}[2]{\iffieldequalstr{userf}{zh}{#1}{#2}} -\newcommand*{\bbx@cecomma}{\bbx@cepunct{\bbx@cncomma}{\addcomma\addspace}} -\newcommand*{\bbx@cecolon}{\bbx@cepunct{\bbx@cncolon}{\addcolon\addspace}} -\newcommand*{\bbx@cescolon}{\bbx@cepunct{\bbx@cnscolon}{\addsemicolon\addspace}} -\newcommand*{\bbx@ceperiod}{\bbx@cepunct{\bbx@cnperiod}{\addperiod\addspace}} -\newcommand*{\bbx@cespace}{\bbx@cepunct{}{\addspace}} -\newcommand*{\bbx@mybibquote}[1]% - {\bbx@cepunct{\bbx@cnldquot{#1}\bbx@cnrdquot}{\mkbibquote{#1}}} -\renewcommand*{\finallistdelim}% - {\bbx@cetext{\bbx@cecomma}{\addspace\bibstring{and}\space}} -\renewcommand*{\finalnamedelim}% - {\bbx@cetext{\bbx@cecomma}{\addspace\bibstring{and}\space}} -\renewcommand*{\multilistdelim}{\bbx@cecomma} -\renewcommand*{\multinamedelim}{\bbx@cecomma} -\renewcommand*{\postnotedelim}{\bbx@cecomma} -\renewcommand*{\finentrypunct}{\bbx@cepunct{\bbx@cnperiod}{.}} -\DefineBibliographyExtras{english}{% - \renewcommand*{\finalandcomma}{}% -} - -\DefineBibliographyStrings{english}{ - bibliography = {\bbx@cnbib}, references = {\bbx@cnbib} -} -\DeclareFieldFormat*{pages}{#1} -\DeclareFieldFormat*{url}{\url{#1}} -\DeclareFieldFormat*{urldate}{#1} -\DeclareFieldFormat*{type}{\mkbibbrackets{#1}} -\DeclareFieldFormat*{number}{\mkbibparens{#1}} -\DeclareFieldFormat[patent]{number}{#1} -\renewbibmacro*{title}{\iffieldundef{title}{}{\printfield{title}}} -\newbibmacro*{type}{\iffieldundef{type}{}{\printfield{type}}} -\newbibmacro*{number}{\iffieldundef{number}{}{\printfield{number}}} -\newbibmacro*{cein:}{\printtext{\bbx@cetext{\bbx@cnin}{In}\bbx@cecolon}} -\newcommand*{\bbx@byspace}[1]{% - \ifnumgreater{\value{#1}}{\value{maxnames}}{}{\addspace}% -} - -\newbibmacro*{cebyauthor}{% - \ifnameundef{author}{}{% - \bbx@cetext% - {\printnames{author}\printtext{\bbx@byspace{author}\bbx@cnauth}}% - % `\usebibmacro{byauthor}' does not print with `useauthor' enabled. - {\printnames[byauthor]{author}}% - }% -} -\newbibmacro*{cebyeditor}{% - \ifnameundef{editor}{}{% - \bbx@cetext% - {\printnames{editor}\printtext{\bbx@byspace{editor}\bbx@cnedit}}% - {\usebibmacro{byeditor}}% - }% -} -\newbibmacro*{cebytranslator}{% - \ifnameundef{translator}{}{% - \bbx@cetext% - {\printnames{translator}\printtext{\bbx@byspace{translator}\bbx@cntrans}}% - {\usebibmacro{bytranslator}}% - }% -} -\newbibmacro*{author+others}{% - \ifthenelse% - {\ifnameundef{author} \and \ifnameundef{editor} \and \ifnameundef{translator}}% - {}% - {% - \ifthenelse{\ifnameundef{editor} \and \ifnameundef{translator}}% - {\printnames{author}}% - {% - \usebibmacro{cebyauthor}\setunit*{\bbx@cescolon}% - \usebibmacro{cebyeditor}\setunit*{\bbx@cescolon}% - \usebibmacro{cebytranslator}% - }% - }% -} -\newbibmacro*{journaltitle/title}{% - \iffieldundef{journaltitle}{\usebibmacro{title}}{\printfield{journaltitle}}% -} -\newbibmacro*{year/date}{% - \ifthenelse{\iffieldundef{month} \and \iffieldundef{day}}% - {\printfield{year}}{\printdate}% -} -\newbibmacro*{(year+volume+number)/date}{% - \ifthenelse{\iffieldundef{month} \and \iffieldundef{day}}% - {% - \printfield{year}\setunit*{\bbx@cecomma}% - \printfield{volume}% - \usebibmacro{number}% - }{\printdate}% -} -\renewbibmacro*{urldate}{% - \iffieldundef{urlyear}{}{% - \printtext{\bbx@cetext{\bbx@cnretr}{retrieved on}\addspace}% - \printurldate% - }% -} - -\DeclareBibliographyDriver{book}{% - \usebibmacro{bibindex}% - \newblock - \usebibmacro{author+others}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{title}\setunit*{\addspace}% - \usebibmacro{type}\setunit{\bbx@ceperiod}% - \newblock - \printlist{location}\setunit*{\bbx@cecolon}% - \printlist{publisher}\setunit{\bbx@cecomma}% - \usebibmacro{year/date}\setunit*{\bbx@cecolon}% - \printfield{pages}\setunit{\bbx@ceperiod}% - \newblock - \printfield{url}\setunit*{\bbx@cecomma}% - \usebibmacro{urldate}\usebibmacro{finentry}% - \newblock - \printfield{addendum}% -} - -\DeclareBibliographyDriver{incollection}{% - \usebibmacro{bibindex}% - \newblock - \usebibmacro{author+others}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{title}\setunit*{\bbx@cespace}% - \usebibmacro{type}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{cein:}% - \newblock - \printnames{bookauthor}\setunit*{\bbx@ceperiod}% - \newblock - \printfield{booktitle}\setunit{\bbx@ceperiod}% - \newblock - \printlist{location}\setunit*{\bbx@cecolon}% - \printlist{publisher}\setunit{\bbx@cecomma}% - \usebibmacro{year/date}\setunit*{\bbx@cecolon}% - \printfield{pages}\setunit{\bbx@ceperiod}% - \newblock - \printfield{url}\setunit*{\bbx@cecomma}% - \usebibmacro{urldate}\usebibmacro{finentry}% - \newblock - \printfield{addendum}% -} - -\DeclareBibliographyDriver{periodical}{% - \usebibmacro{bibindex}% - \newblock - \usebibmacro{author+others}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{journaltitle/title}\setunit*{\addspace}% - \usebibmacro{type}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{(year+volume+number)/date}\setunit{\bbx@ceperiod}% - \newblock - \printlist{location}\setunit*{\bbx@cecolon}% - \printlist{publisher}\setunit{\bbx@ceperiod}% - \newblock - \printfield{url}\setunit*{\bbx@cecomma}% - \usebibmacro{urldate}\usebibmacro{finentry}% - \newblock - \printfield{addendum}% -} - -\DeclareBibliographyDriver{article}{% - \usebibmacro{bibindex}% - \newblock - \printnames{author}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{title}\setunit*{\bbx@cespace}% - \usebibmacro{type}\setunit{\bbx@ceperiod}% - \newblock - \printfield{journaltitle}\setunit*{\bbx@cecomma}% - \usebibmacro{(year+volume+number)/date}\setunit{\bbx@cecolon}% - \printfield{pages}\setunit{\bbx@ceperiod}% - \newblock - \printfield{url}\setunit*{\bbx@cecomma}% - \usebibmacro{urldate}\usebibmacro{finentry}% - \newblock - \printfield{addendum}% -} - -\DeclareBibliographyDriver{patent}{% - \usebibmacro{bibindex}% - \newblock - \usebibmacro{author}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{title}\setunit*{\addspace}% - \usebibmacro{type}\setunit{\bbx@ceperiod}% - \newblock - \printlist{location}\setunit*{\bbx@cecolon}% - \usebibmacro{number}\setunit{\bbx@ceperiod}% - \newblock - \usebibmacro{year/date}\setunit{\bbx@ceperiod}% - \newblock - \printfield{url}\setunit*{\bbx@cecomma}% - \usebibmacro{urldate}\usebibmacro{finentry}% - \newblock - \printfield{addendum}% -} - -\DeclareBibliographyDriver{customf}{% - \usebibmacro{bibindex}% - \newblock - \printfield{addendum}% -} - -\DeclareBibliographyAlias{booklet}{book} -\DeclareBibliographyAlias{collection}{book} -\DeclareBibliographyAlias{manual}{book} -\DeclareBibliographyAlias{misc}{book} -\DeclareBibliographyAlias{online}{book} -\DeclareBibliographyAlias{proceedings}{book} -\DeclareBibliographyAlias{report}{book} -\DeclareBibliographyAlias{thesis}{book} -\DeclareBibliographyAlias{unpublished}{book} -\DeclareBibliographyAlias{inbook}{incollection} -\DeclareBibliographyAlias{inproceedings}{incollection} -\DeclareBibliographyAlias{*}{book} - -\DeclareSortingScheme{ecnty}{ - \sort{\field{presort}} - \sort[final]{\field{sortkey}} - \sort{ - \field{userf} - } - \sort{ - \field{sortname} - \field{author} - \field{editor} - \field{translator} - \field{sorttitle} - \field{title} - } - \sort{ - \field{sorttitle} - \field{title} - } - \sort{ - \field{sortyear} - \field{year} - } -} - -\DeclareSortingScheme{centy}{ - \sort{\field{presort}} - \sort[final]{\field{sortkey}} - \sort[direction = descending]{ - \field{userf} - } - \sort{ - \field{sortname} - \field{author} - \field{editor} - \field{translator} - \field{sorttitle} - \field{title} - } - \sort{ - \field{sorttitle} - \field{title} - } - \sort{ - \field{sortyear} - \field{year} - } -} - -\DeclareStyleSourcemap{ - \maps{ - \map[overwrite]{ - \step[ - fieldsource = language, match = \regexp{chinese}, - fieldset = userf, fieldvalue = {zh} - ] - } - \map[overwrite]{ - \step[fieldsource = userf, match = \regexp{^cn$}, replace = \regexp{zh}] - } - \map{ - \step[fieldset = userf, fieldvalue = {en}] - } - } -} +\RequireBibliographyStyle{numeric-comp} +\input{blx-caspervector-base.def} +\ExecuteBibliographyOptions{defernumbers = true, sorting = none} % vim:ft=tex:ts=2:sw=2 diff --git a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx index f3911530253..236f4c48ecd 100644 --- a/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx +++ b/Master/texmf-dist/tex/latex/biblatex-caspervector/caspervector.cbx @@ -1,12 +1,12 @@ % Casper Ti. Vector's biblatex style % -% Copyright (c) 2012-2014 Casper Ti. Vector +% Copyright (c) 2012-2014,2018 Casper Ti. Vector % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at % your option) any later version. % The latest version of this license is in -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. % @@ -16,49 +16,32 @@ % This work consists of the following files: % caspervector.bbx % caspervector.cbx -% biblatex-caspervector-gbk.def -% biblatex-caspervector-utf8.def +% caspervector-ay.bbx +% caspervector-ay.cbx +% blx-caspervector-base.def +% blx-caspervector-gbk.def +% blx-caspervector-utf8.def \ProvidesFile{caspervector.cbx}% - [2017/03/01 v0.2.7 Casper Ti. Vector's biblatex citation style] + [2018/06/29 v0.3.3 Casper Ti. Vector's numeric biblatex citestyle] \RequireCitationStyle{numeric-comp} -\ExecuteBibliographyOptions{ - autocite = superscript, - autopunct = false -} - +\ExecuteBibliographyOptions{autocite = superscript} \newcommand*{\cbx@mksuperbrackets}[1]{\mkbibsuperscript{\mkbibbrackets{#1}}} -\DeclareCiteCommand{\cite} -{% - \usebibmacro{cite:init}% - \usebibmacro{prenote}% -} -{% - \usebibmacro{citeindex}% - \usebibmacro{cite:comp}% -} -{} -{% - \usebibmacro{cite:dump}% - \usebibmacro{postnote}% -} +\DeclareCiteCommand{\cite}% + {\usebibmacro{cite:init}\usebibmacro{prenote}}% + {\usebibmacro{citeindex}\usebibmacro{cite:comp}}{}% + {\usebibmacro{cite:dump}\usebibmacro{postnote}} -\DeclareCiteCommand{\supercite}[\cbx@mksuperbrackets] -{% - \usebibmacro{cite:init}% - \let\multicitedelim=\supercitedelim - \usebibmacro{prenote}% -} -{% - \usebibmacro{citeindex}% - \usebibmacro{cite:comp}% -}% -{} -{% - \usebibmacro{cite:dump}% - \usebibmacro{postnote}% -} +\DeclareCiteCommand{\supercite}[\cbx@mksuperbrackets]{% + \usebibmacro{cite:init}% + \let\multicitedelim=\supercitedelim + \iffieldundef{prenote}{}% + {\BibliographyWarning{Ignoring prenote argument}}% + \iffieldundef{postnote}{}% + {\BibliographyWarning{Ignoring postnote argument}}% + }{\usebibmacro{citeindex}\usebibmacro{cite:comp}}{}% + {\usebibmacro{cite:dump}\usebibmacro{postnote}} % vim:ft=tex:ts=2:sw=2 |