summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-12-12 03:01:11 +0000
committerNorbert Preining <norbert@preining.info>2021-12-12 03:01:11 +0000
commit9ed1a61f45b05f58016912a6bd6c13daab6db9eb (patch)
tree0c77bf9276a99c43b069307630529d8ef5148a94 /macros
parent73df0102afe7e9fee9026c69fb805ab5fa138b49 (diff)
CTAN sync 202112120301
Diffstat (limited to 'macros')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/README.md7
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdfbin1654384 -> 1655072 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.tex17
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005.bbx31
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005ay.bbx33
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.bbx18
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.cbx104
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.bbx18
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.cbx110
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ms.bbx14
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015mx.bbx14
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/README3
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdfbin371378 -> 371508 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex9
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx8
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx4
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx56
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin594563 -> 594601 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex10
-rw-r--r--macros/luatex/latex/datestamp/COPYING674
-rw-r--r--macros/luatex/latex/datestamp/README.txt8
-rw-r--r--macros/luatex/latex/datestamp/datestamp-example.ds3
-rw-r--r--macros/luatex/latex/datestamp/datestamp-example.pdfbin6040 -> 6041 bytes
-rw-r--r--macros/luatex/latex/datestamp/datestamp-example.tex20
-rw-r--r--macros/luatex/latex/datestamp/datestamp.dtx127
-rw-r--r--macros/luatex/latex/datestamp/datestamp.ins12
-rw-r--r--macros/luatex/latex/datestamp/datestamp.pdfbin117779 -> 112888 bytes
-rw-r--r--macros/luatex/latex/datestamp/gfdl-tex.tex596
28 files changed, 462 insertions, 1434 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/README.md b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/README.md
index 8e0a745fdc..3959490ae3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/README.md
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/README.md
@@ -1,4 +1,4 @@
-<b>Date of last change: 2021-09-11 to version v1.1a</b>
+<b>Date of last change: 2021-12-11 to version v1.1b</b>
# biblatex-gb7714-2015: a biblatex style package
@@ -44,6 +44,7 @@ biblatex-gb7714-2015 宏包是中文参考文献著录/标注标准 `GB/T 7714-2
* special characters in all fields?
* entry without author: the delimiter between title and year?
* TEST FOR texlive 2015,2016,2017
+ * 标注中包围符号的定义[]、()、圆圈、方框等,有些命令没有去修改。
@@ -670,7 +671,7 @@ gbyntd 以语言、年份、作者、标题、降序排列
* <b>我习惯用传统的bst文件来生成参考文献,有没有GB/T 7714-2015标准的实现版本?</b>
-GB/T 7714-2015标准实现的bst版本,已经由[zeping lee](https://github.com/zepinglee/gbt7714-bibtex-style)开发完毕,直接使用即可。
+GB/T 7714-2015标准实现的bst版本,已经由[zeping lee](https://github.com/CTeX-org/gbt7714-bibtex-style)开发完毕,直接使用即可。
@@ -1546,7 +1547,7 @@ please see the file 'biblatex-gb7714-2015.pdf' for further information!
* 2021/05/06 v1.0y,ctan
* 2021/08/19 v1.0z,ctan
* 2021/09/11 v1.1a,ctan
-
+* 2021/12/11 v1.1b,ctan
---------------------------------------------------------
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdf
index 7f970fb784..0181a2f438 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.tex b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.tex
index 60833504ae..c94e6f3588 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.tex
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/biblatex-gb7714-2015.tex
@@ -100,6 +100,7 @@ sorting选项值(gb7714-2015支持以语言著者-出版年标题升序排列,
析出文献标识符控制(gbpunctin选项,可设置\texttt{//}不输出或其它表示形式)、
标题超链接控制(gbtitlelink选项,可设置文献表中各条目标题超链接)、
标准标签超链接控制(gblabelref选项,可设置标注中作者标签的超链接)、
+标注标签格式控制(gbcitelabel选项,可设置标签包围符号)、
作者项处理(gbnoauthor选项,可设置作者缺失时是否填补信息);
著录表格式选项和命令:
@@ -514,6 +515,22 @@ leftrule=0pt,rightrule=0pt,toprule=0.4pt,bottomrule=0.4pt]
\end{figure}
+ \pdfbookmark[4]{gbcitelabel}{gbcitelabel}
+ \item[gbcitelabel]=\textbf{bracket},parens,plain,dot,box,circle. \hfill default is bracket
+
+ 为标注标签的包围符号增加的选项,用于选择正文中标注标签符号。
+ \begin{itemize}
+ \item gbcitelabel=bracket,标注标签由方括号包围,比如[1];
+ \item gbcitelabel=parens,标注标签由圆括号包围,比如(1);
+ \item gbcitelabel=dot,标注标签数字后面加点,比如1.;
+ \item gbcitelabel=plain,标注标签无装饰,比如1;
+ \item gbcitelabel=box,标注标签由方框包围,比如\framebox{1};
+ \item gbcitelabel=circle,标注标签由圆圈包围,比如\textcircled{1}。
+ \end{itemize}
+ 顺序编码制和作者年制存在一定的差异,作者年制主要是方括号、圆括号、无括号的选择。
+ 顺序编码制默认是方括号,作者年制默认是圆括号。
+
+
\pdfbookmark[4]{gbnamefmt}{gbnamefmt}
\item[gbnamefmt]=\textbf{uppercase},lowercase,givenahead,familyahead,pinyin. \hfill default is uppercase
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005.bbx
index 12271aa8a8..825dd92b75 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005.bbx
@@ -52,3 +52,34 @@
}
}
}
+
+%==================================================
+%输出格式调整
+%==================================================
+%
+% 重设专利title的输出,将文献类型标识符输出出去,并将国别加入进来
+%
+\renewbibmacro*{patenttitle}{%原输出来自biblatex.def文件
+ \ifboolexpr{%
+ test{\iffieldundef{title}}%
+ and%
+ test{\iffieldundef{subtitle}}%
+ }%
+ {}%
+ {\printtext[title]{\bibtitlefont%
+ \printfield[titlecase]{title}%
+ \ifboolexpr{test {\iffieldundef{subtitle}}}%
+ {}{\setunit{\subtitlepunct}%
+ \printfield[titlecase]{subtitle}}%
+ \iffieldundef{titleaddon}{\setunit{\subtitlepunct}}%
+ {\setunit{\subtitlepunct}\printfield{titleaddon}\setunit{\addcomma\space}}%
+ \iflistundef{location}{}%
+ {\setunit{\subtitlepunct}\printlist{location}\setunit{\addcomma\space}}%
+ \printfield{number}%
+ \iftoggle{bbx:gbtype}{\printfield[gbtypeflag]{usera}}{}%
+ %\iffieldundef{booktitle}{\newunit}{}%当title是析出时,不要标点
+ %\newunit
+ }%
+}%
+\clearlist{location}\clearlist{address}%
+}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005ay.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005ay.bbx
index 44d089fddd..a3c3059832 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005ay.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2005ay.bbx
@@ -50,3 +50,36 @@
}
}
}
+
+
+
+%==================================================
+%输出格式调整
+%==================================================
+%
+% 重设专利title的输出,将文献类型标识符输出出去,并将国别加入进来
+%
+\renewbibmacro*{patenttitle}{%原输出来自biblatex.def文件
+ \ifboolexpr{%
+ test{\iffieldundef{title}}%
+ and%
+ test{\iffieldundef{subtitle}}%
+ }%
+ {}%
+ {\printtext[title]{\bibtitlefont%
+ \printfield[titlecase]{title}%
+ \ifboolexpr{test {\iffieldundef{subtitle}}}%
+ {}{\setunit{\subtitlepunct}%
+ \printfield[titlecase]{subtitle}}%
+ \iffieldundef{titleaddon}{\setunit{\subtitlepunct}}%
+ {\setunit{\subtitlepunct}\printfield{titleaddon}\setunit{\addcomma\space}}%
+ \iflistundef{location}{}%
+ {\setunit{\subtitlepunct}\printlist{location}\setunit{\addcomma\space}}%
+ \printfield{number}%
+ \iftoggle{bbx:gbtype}{\printfield[gbtypeflag]{usera}}{}%
+ %\iffieldundef{booktitle}{\newunit}{}%当title是析出时,不要标点
+ %\newunit
+ }%
+}%
+\clearlist{location}\clearlist{address}%
+}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.bbx
index f383483dd4..a61fde5bd6 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.bbx
@@ -11,7 +11,7 @@
%
% 版本和时间信息
%
-\def\versionofgbtstyle{2021/09/11 v1.1a}
+\def\versionofgbtstyle{2021/12/11 v1.1b}
\def\versionofbiblatex{\abx@version}
\ProvidesFile{gb7714-2015.bbx}[\versionofgbtstyle biblatex bibliography style]
%\RequireBiber[3]%显式指定用biber后端,当用bibtex时会报错,但其实不会影响编译,只是采用bibtex后无法达成格式需求
@@ -194,10 +194,12 @@
%为单个条目的姓名格式控制增加nameformat和namefmtid两个域
%为缩略信息文献表增加了shortbooktitle域
%为多语言排序增加了lansortorder域
+ %因为language域会被clearlang选项清除,增加languageid域,类型设为field而不是list
\DeclareDatamodelFields[type=field,datatype=literal]{mark,medium,nameformat}
\DeclareDatamodelFields[type=field,datatype=integer]{namefmtid}
\DeclareDatamodelFields[type=field,datatype=literal]{shortbooktitle}
\DeclareDatamodelFields[type=field,datatype=literal]{lansortorder}
+ \DeclareDatamodelFields[type=field,datatype=literal]{languageid}
%因为biblatex更新3.14版本以后,biber对于为声明数据模型的条目类型
%不再默认读取,而是以空字符串作为条目类型名,自然在条目定义alias时
@@ -1343,31 +1345,37 @@
%这里为兼容3.11及以下版本,所以用一个复杂一点的正则表达式
\step[fieldsource=language,match=\regexp{(e|E)(n|N)(g|G)(l|L)(i|I)(s|S)(h|H)},final]
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={english}]
\step[fieldset=lansortorder,fieldvalue=\lanenorder]
}
\map{
\step[fieldsource=language,match=\regexp{(r|R)(u|U)(s|S)(s|S)(i|I)(a|A)(n|N)},final]
\step[fieldset=langid,fieldvalue={russian}]
+ \step[fieldset=languageid,fieldvalue={russian}]
\step[fieldset=lansortorder,fieldvalue=\lanruorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(f|F)(r|R)(e|E)(n|N)(c|C)(h|H)},final]
\step[fieldset=langid,fieldvalue={french}]
+ \step[fieldset=languageid,fieldvalue={french}]
\step[fieldset=lansortorder,fieldvalue=\lanfrorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(c|C)(h|H)(i|I)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={chinese}]
\step[fieldset=lansortorder,fieldvalue=\lancnorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(j|J)(a|A)(p|P)(a|A)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={japanese}]
\step[fieldset=lansortorder,fieldvalue=\lanjporder]
}
\map{%
\step[fieldsource=language,match=\regexp{(k|K)(o|O)(r|R)(e|E)(a|A)(n|N)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={korean}]
\step[fieldset=lansortorder,fieldvalue=\lankrorder]
}
\map[overwrite]{%bib中abstract和howpublished常出现特殊字符这里做一下预处理。
@@ -2690,7 +2698,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeUppercase{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2720,7 +2728,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeCapital{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2809,7 +2817,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifpunctmark{'}{}{\bibnamedelimc}}%
\ifblank{#2}{\MakeCapital#1}{\mkbibnamelast{\MakeUppercase{#1}}}\isdot%\MakeUppercase %\mkbibnamelast{\MakeUppercase{#1}} %\MakeSentenceCase
- \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamefirst{#2}}\isdot}%
+ \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamefirst{\MakeSentenceCase{#2}}\isdot}%
\ifblank{#4}{}{\addcomma\addspace\bibnamedelimd\mkbibnameaffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2833,7 +2841,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifpunctmark{'}{}{\bibnamedelimc}}%
\ifblank{#2}{\MakeCapital#1}{\mkbibnamelast{\MakeCapital{#1}}}\isdot%\MakeUppercase %\mkbibnamelast{\MakeUppercase{#1}} %\MakeSentenceCase
- \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamefirst{#2}}\isdot}%
+ \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamefirst{\MakeSentenceCase{#2}}\isdot}%
\ifblank{#4}{}{\addcomma\addspace\bibnamedelimd\mkbibnameaffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.cbx
index ddc80006c2..8ce01ed872 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015.cbx
@@ -22,6 +22,58 @@
\settoggle{bbx:gblabelref}{#1}}
\ExecuteBibliographyOptions{gblabelref}
+%
+% 增加标签包围符号格式处理选项
+% 20211030,1.1a,hzz
+%
+\newrobustcmd{\mkbibleftborder}{[}
+\newrobustcmd{\mkbibrightborder}{]}
+\DeclareBibliographyOption[string]{gbcitelabel}[bracket]{%
+ \csuse{gbcitelabelopt@#1}
+}
+\ExecuteBibliographyOptions{gbcitelabel}
+
+\renewrobustcmd{\mkbibsuperscript}[1]{%
+ \unspace\allowhyphens\textsuperscript{%
+ \begingroup
+ \protected\long\def\mkbibsuperscript##1{%
+ \blx@warning{Nested superscript}%
+ \mkbibbrackets{##1}}%嵌套的这里没有动
+ #1\endgroup}\kern\z@}%
+
+\def\gbcitelabelopt@bracket{%
+\renewrobustcmd{\mkbibleftborder}{[}%
+\renewrobustcmd{\mkbibrightborder}{]}%
+}
+\def\gbcitelabelopt@parens{%
+\renewrobustcmd{\mkbibleftborder}{(}%
+\renewrobustcmd{\mkbibrightborder}{)}%
+}
+\def\gbcitelabelopt@dot{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{.}%
+}
+\def\gbcitelabelopt@plain{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{}%
+}
+\def\gbcitelabelopt@box{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{}%
+\renewrobustcmd{\mkbibsuperscript}[1]{%
+ \unspace\allowhyphens\textsuperscript{%
+ \begingroup
+\framebox{##1}\endgroup}\kern\z@}%
+}
+\def\gbcitelabelopt@circle{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{}%
+\renewrobustcmd{\mkbibsuperscript}[1]{%
+ \unspace\allowhyphens\textsuperscript{%
+ \begingroup
+\textcircled{##1}\endgroup}\kern\z@}%
+}
+
%
% 选项设置
@@ -125,14 +177,15 @@
%修改\mkbibsuperscript宏在最后加上一个空白使得xeCJK不会自动在引用标签后面加上中英文之间的空白
-%hzz,v1.0w,2021-0401
-\renewrobustcmd{\mkbibsuperscript}[1]{%
- \unspace\allowhyphens\textsuperscript{%
- \begingroup
- \protected\long\def\mkbibsuperscript##1{%
- \blx@warning{Nested superscript}%
- \mkbibbrackets{##1}}%
- #1\endgroup}\kern\z@}
+%20210401,v1.0w,hzz
+%20211030,v1.1a,hzz,调整到选项中去
+%\renewrobustcmd{\mkbibsuperscript}[1]{%
+% \unspace\allowhyphens\textsuperscript{%
+% \begingroup
+% \protected\long\def\mkbibsuperscript##1{%
+% \blx@warning{Nested superscript}%
+% \mkbibbrackets{##1}}%
+% #1\endgroup}\kern\z@}
\newrobustcmd{\mkbibsuperscriptusp}[1]{%
\unspace\allowhyphens\textsuperscript{%
@@ -142,19 +195,20 @@
\mkbibbrackets{##1}}%
#1\endgroup}}
+
+
%
% 重定义cite命令
%
% 方法:\DeclareCiteCommand{\cite}[\mkbibparens]{precode}{loopcode}{sepcode}{postcode}
% v1.0p版后将cite的处理方式修改为类似pagescite,而不再使用biblatex的标准方式
\DeclareCiteCommand{\cite}[\mkbibsuperscript]%利用mkbibsuperbracket添加方括号 \textsuperscript
- {[\usebibmacro{cite:init}%]
+ {\mkbibleftborder\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
- {%[
- \usebibmacro{cite:dump}]%
+ {\usebibmacro{cite:dump}\mkbibrightborder%
\printfield{postnote}}%\kern\p@ \kern\z@
%\renewcommand{\cite}[1]{\textsuperscript{[\supercite{#1}]}\kern\z@}
@@ -180,13 +234,13 @@
% 重定义parencite命令,以满足标签带页码的国标要求
%
\DeclareCiteCommand{\parencite}%[\mkbibbrackets]
- {[\usebibmacro{cite:init}%]
+ {\mkbibleftborder\usebibmacro{cite:init}%
\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
{%[
- \usebibmacro{cite:dump}]%
+ \usebibmacro{cite:dump}\mkbibrightborder%
\mkbibsuperscriptusp{\printfield{postnote}}}
%
@@ -200,26 +254,26 @@
{\printfield{postnote}}}
% 2.新增\pagescite引用命令
\DeclareCiteCommand{\pagescite}[\mkbibsuperscript]%\mkbibbrackets,仍然用上标
- {[\usebibmacro{cite:init}%]直接添加方括号
+ {\mkbibleftborder\usebibmacro{cite:init}%]直接添加方括号
\usebibmacro{prenote}%
}
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
- {\usebibmacro{cite:dump}]%
+ {\usebibmacro{cite:dump}\mkbibrightborder%
\usebibmacro{postpages}}
%
% 定义yearpagescite,为与ay样式兼容,等同于\pagescite
%
\DeclareCiteCommand{\yearpagescite}[\mkbibsuperscript]%\mkbibbrackets,仍然用上标
- {[\usebibmacro{cite:init}%]直接添加方括号
+ {\mkbibleftborder\usebibmacro{cite:init}%直接添加方括号
\usebibmacro{prenote}%
}
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
- {\usebibmacro{cite:dump}]%
+ {\usebibmacro{cite:dump}\mkbibrightborder%
\usebibmacro{postpages}}
%
@@ -227,13 +281,14 @@
%
% 原理方法:等同于\pagescite,但不要页码
\DeclareCiteCommand{\yearcite}[\mkbibsuperscript]%\mkbibbrackets,仍然用上标
- {[\usebibmacro{cite:init}%]直接添加方括号
+ {\mkbibleftborder\usebibmacro{cite:init}%直接添加方括号
\usebibmacro{prenote}%
}
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
- {\usebibmacro{cite:dump}]}
+ {\usebibmacro{cite:dump}\mkbibrightborder}
+
%
% 定义\authornumcite命令,输出作者信息,然后在后面带上顺序编码
@@ -254,8 +309,8 @@
{\iffieldequalstr{userf}{cn}{\renewcommand*{\andothersdelim}{\addthinspace}}%\addthinspace
{\renewcommand*{\andothersdelim}{\addspace}}%
\iftoggle{bbx:gblabelref}{\printtext[bibhyperref]{\printnames{labelname}}}{\printnames{labelname}}%
- \mkbibsuperscript{\mkbibbrackets{\usebibmacro{citeindex}%
- \usebibmacro{citeathn}}}}
+ \mkbibsuperscript{\mkbibleftborder\usebibmacro{citeindex}%
+ \usebibmacro{citeathn}\mkbibrightborder}}
{\multicitedelim}
{\mkbibsuperscript{\printfield{postnote}}}
@@ -354,12 +409,12 @@
\DeclareCiteCommand{\citep}[\mkbibsuperscript]%利用mkbibsuperbracket添加方括号
- {[\usebibmacro{cite:init}%
+ {\mkbibleftborder\usebibmacro{cite:init}%
\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
- {\usebibmacro{cite:dump}]%
+ {\usebibmacro{cite:dump}\mkbibrightborder%
\printfield{postnote}}
\newrobustcmd*{\citetns}%
@@ -376,7 +431,8 @@
% 20190430,v1.0r,hzz
% citec和citecs命令是实现了[1]-[3]这样的压缩形式。
% authornumcites是常用命令authornumcite的复数形式
-\DeclareFieldFormat{labelbracket}{\mkbibbrackets{#1}}
+%\DeclareFieldFormat{labelbracket}{\mkbibbrackets{#1}}
+\DeclareFieldFormat{labelbracket}{\mkbibleftborder{#1}\mkbibrightborder}
\newbibmacro*{citec:comp:comp}{%
\ifboolexpr{
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.bbx
index 25455abe4a..2e38ec22c4 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.bbx
@@ -10,7 +10,7 @@
%
% 版本和时间信息
%
-\def\versionofgbtstyle{2021/09/11 v1.1a}
+\def\versionofgbtstyle{2021/12/11 v1.1b}
\def\versionofbiblatex{\abx@version}
\ProvidesFile{gb7714-2015ay.bbx}[\versionofgbtstyle biblatex bibliography style]
%\RequireBiber[3]%显式指定用biber后端,当用bibtex时会报错,但其实不会影响编译,只是采用bibtex后无法达成格式需求
@@ -191,10 +191,12 @@
%为单个条目的姓名格式控制增加nameformat和namefmtid两个域
%为缩略信息文献表增加了shortbooktitle域
%为多语言排序增加了lansortorder域
+ %因为language域会被clearlang选项清除,增加languageid域,类型设为field而不是list
\DeclareDatamodelFields[type=field,datatype=literal]{mark,medium,nameformat}
\DeclareDatamodelFields[type=field,datatype=integer]{namefmtid}
\DeclareDatamodelFields[type=field,datatype=literal]{shortbooktitle}
\DeclareDatamodelFields[type=field,datatype=literal]{lansortorder}
+ \DeclareDatamodelFields[type=field,datatype=literal]{languageid}
%因为biblatex更新3.14版本以后,biber对于为声明数据模型的条目类型
%不再默认读取,而是以空字符串作为条目类型名,自然在条目定义alias时
@@ -1292,31 +1294,37 @@
%这里为兼容3.11及以下版本,所以用一个复杂一点的正则表达式
\step[fieldsource=language,match=\regexp{(e|E)(n|N)(g|G)(l|L)(i|I)(s|S)(h|H)},final]
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={english}]
\step[fieldset=lansortorder,fieldvalue=\lanenorder]
}
\map{
\step[fieldsource=language,match=\regexp{(r|R)(u|U)(s|S)(s|S)(i|I)(a|A)(n|N)},final]
\step[fieldset=langid,fieldvalue={russian}]
+ \step[fieldset=languageid,fieldvalue={russian}]
\step[fieldset=lansortorder,fieldvalue=\lanruorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(f|F)(r|R)(e|E)(n|N)(c|C)(h|H)},final]
\step[fieldset=langid,fieldvalue={french}]
+ \step[fieldset=languageid,fieldvalue={french}]
\step[fieldset=lansortorder,fieldvalue=\lanfrorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(c|C)(h|H)(i|I)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={chinese}]
\step[fieldset=lansortorder,fieldvalue=\lancnorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(j|J)(a|A)(p|P)(a|A)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={japanese}]
\step[fieldset=lansortorder,fieldvalue=\lanjporder]
}
\map{%
\step[fieldsource=language,match=\regexp{(k|K)(o|O)(r|R)(e|E)(a|A)(n|N)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={korean}]
\step[fieldset=lansortorder,fieldvalue=\lankrorder]
}
\map{%尝试未定义数据模型的standard类型映射为其他类型book或inbook,
@@ -2543,7 +2551,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeUppercase{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2573,7 +2581,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeCapital{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2662,7 +2670,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifpunctmark{'}{}{\bibnamedelimc}}%
\ifblank{#2}{\MakeCapital#1}{\mkbibnamelast{\MakeUppercase{#1}}}\isdot%\MakeUppercase %\mkbibnamelast{\MakeUppercase{#1}} %\MakeSentenceCase
- \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamefirst{#2}}\isdot}%
+ \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamefirst{\MakeSentenceCase{#2}}\isdot}%
\ifblank{#4}{}{\addcomma\addspace\bibnamedelimd\mkbibnameaffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2686,7 +2694,7 @@ test {\iftoggle{iftlseven}}%biblatex<=3.7
{\mkbibnameprefix{#3}\isdot}%
\ifpunctmark{'}{}{\bibnamedelimc}}%
\ifblank{#2}{\MakeCapital#1}{\mkbibnamelast{\MakeCapital{#1}}}\isdot%\MakeUppercase %\mkbibnamelast{\MakeUppercase{#1}} %\MakeSentenceCase
- \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamefirst{#2}}\isdot}%
+ \ifblank{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamefirst{\MakeSentenceCase{#2}}\isdot}%
\ifblank{#4}{}{\addcomma\addspace\bibnamedelimd\mkbibnameaffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.cbx
index e6540216ba..19a92bceed 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ay.cbx
@@ -24,6 +24,43 @@
\ExecuteBibliographyOptions{gblabelref}
+%
+% 增加标签包围符号格式处理选项
+% 20211030,1.1a,hzz
+%
+\newrobustcmd{\mkbibleftborder}{(}
+\newrobustcmd{\mkbibrightborder}{)}
+\DeclareBibliographyOption[string]{gbcitelabel}[bracket]{%
+ \csuse{gbcitelabelopt@#1}
+}
+\ExecuteBibliographyOptions{gbcitelabel}
+
+\def\gbcitelabelopt@bracket{%
+\renewrobustcmd{\mkbibleftborder}{[}%
+\renewrobustcmd{\mkbibrightborder}{]}%
+}
+\def\gbcitelabelopt@parens{%
+\renewrobustcmd{\mkbibleftborder}{(}%
+\renewrobustcmd{\mkbibrightborder}{)}%
+}
+\def\gbcitelabelopt@dot{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{.}%
+}
+\def\gbcitelabelopt@plain{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{}%
+}
+\def\gbcitelabelopt@box{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{}%
+}
+\def\gbcitelabelopt@circle{%
+\renewrobustcmd{\mkbibleftborder}{}%
+\renewrobustcmd{\mkbibrightborder}{}%
+}
+
+
\ExecuteBibliographyOptions{
%autocite = superscript ,
%autopunct = true ,
@@ -69,6 +106,11 @@ or
test {\iftoggle{iftlseven}}%3.7=biblatex
}{\newbibmacro{cite:labeldate+extradate}{\usebibmacro{cite:labelyear+extrayear}}}{}%else: biblatex>3.7
+%标注中biblatex专门定义了labelname来控制格式
+%所以如果要让标注的格式也同著录表一样的话
+%就可以使用下面这一个定义,当然通常情况下我们使用默认的定义即可。
+%\DeclareNameAlias{labelname}{namefmtselected}
+
%textcite标注命令中的标点设置,注意只针对textcite命令。
% v-old
% v1.0t,20200320,hzz,修改如下
@@ -179,12 +221,11 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
\iffieldundef{postnote}%
{}%
{\thefield{postnote}}}%
- (\usebibmacro{prenote}}%)
+ \mkbibleftborder\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{}
- {%(
- )\mkbibsuperscript{\usebibmacro{postnote}}%\usebibmacro{postnote}
+ {\mkbibrightborder\mkbibsuperscript{\usebibmacro{postnote}}%\usebibmacro{postnote}
}
%
@@ -198,19 +239,34 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
%
% 重定义parencite命令
%
-%\DeclareCiteCommand{\parencite}
-% {\usebibmacro{cite:init}%
-% \renewbibmacro*{postnote}{%
-% \iffieldundef{postnote}%
-% {}%
-% {\nopunct%
-% \printfield{postnote}}}%
-% (\usebibmacro{prenote}}%)
-% {\usebibmacro{citeindex}%
-% \usebibmacro{cite}}
-% {}
-% {%(
-% )\mkbibsuperscript{\usebibmacro{postnote}}}
+\DeclareCiteCommand{\parencite}%[\mkbibparens]
+ {\usebibmacro{cite:init}%
+ \renewbibmacro*{postnote}{%
+ \iffieldundef{postnote}%
+ {}%
+ {\nopunct%
+ \printfield{postnote}}}%
+ \mkbibleftborder\usebibmacro{prenote}}%
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {}
+ {\mkbibrightborder\mkbibsuperscript{\usebibmacro{postnote}}}
+
+%
+% 重定义footcite需要使用的命令
+%
+\renewrobustcmd{\blx@mkbibfootnote}[2]{%
+ \iftoggle{blx@footnote}
+ {\blx@warning{Nested notes}%
+ \addspace\mkbibleftborder{#2}\mkbibrightborder}
+ {\unspace
+ \ifnum\blx@notetype=\tw@
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\csuse{blx@theendnote#1}{\protecting{\blxmkbibnote{end}{#2}}}}
+ {\csuse{footnote#1}{\protecting{\blxmkbibnote{foot}{#2}}}}}}
%
@@ -224,13 +280,12 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
\iffieldundef{postnote}%
{\thefield{pages}}%
{\thefield{postnote}}}%
- (\usebibmacro{prenote}%)
+ \mkbibleftborder\usebibmacro{prenote}%
}%
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{}
- {%(
- )\mkbibsuperscript{\usebibmacro{postnote}}}
+ {\mkbibrightborder\mkbibsuperscript{\usebibmacro{postnote}}}
%
% 定义yearpagescite,用于当文中作者已经存在,需要页码和年份的情况
@@ -243,10 +298,10 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
\iffieldundef{postnote}%
{\thefield{pages}}%
{\thefield{postnote}}}%
- \printtext{(}\usebibmacro{prenote}}%
+ \printtext{\mkbibleftborder}\usebibmacro{prenote}}%
{\usebibmacro{cite:labeldate+extradate}}%\printfield{year}\printfield{extrayear}
{\multicitedelim}%
- {\printtext{)}\textsuperscript{\usebibmacro{postnote}}}
+ {\printtext{\mkbibrightborder}\textsuperscript{\usebibmacro{postnote}}}
%
% 定义yearcite,用于当文中作者已经存在,仅需要年份的情况
@@ -254,10 +309,10 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
% 原理:增加一个命令yearcite
\DeclareCiteCommand{\yearcite}%仅输出年份,不要页码
{\usebibmacro{cite:init}%
- \printtext{(}\usebibmacro{prenote}}%
+ \printtext{\mkbibleftborder}\usebibmacro{prenote}}%
{\usebibmacro{cite:labeldate+extradate}}%\printfield{year}\printfield{extrayear}
{\multicitedelim}%
- {\printtext{)}}
+ {\printtext{\mkbibrightborder}}
%
% 定义\authornumcite命令,输出作者信息,然后在后面带上顺序编码
@@ -355,13 +410,13 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
{}
{\ifbool{cbx:incitet}{\usebibmacro{citet:postnote}}{\usebibmacro{textcite:postnote}}}
- \newrobustcmd{\cbx@citet@init}[2]{%
+\newrobustcmd{\cbx@citet@init}[2]{%
\global\booltrue{cbx:incitet}%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
\def\cbx@savedcites{#1}#2\cbx@savedcites\empty}
- \renewrobustcmd{\cbx@textcite@init}[2]{%
+\renewrobustcmd{\cbx@textcite@init}[2]{%
\global\boolfalse{cbx:incitet}%
\setcounter{textcitetotal}{0}%
\setcounter{textcitecount}{0}%
@@ -397,12 +452,11 @@ test {\iftoggle{iftlseven}}%3.7=biblatex
\iffieldundef{postnote}%
{}%
{\thefield{postnote}}}%
- (\usebibmacro{prenote}}%)
+ \mkbibleftborder\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\usebibmacro{cite}}
{}
- {%(
- )\mkbibsuperscript{\usebibmacro{postnote}}%\usebibmacro{postnote}
+ {\mkbibrightborder\mkbibsuperscript{\usebibmacro{postnote}}%\usebibmacro{postnote}
}
\newrobustcmd*{\citetns}%
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ms.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ms.bbx
index 3044440ca2..218823ac90 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ms.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015ms.bbx
@@ -11,7 +11,7 @@
%
% 版本和时间信息
%
-\def\versionofgbtstyle{2021/09/11 v1.1a}
+\def\versionofgbtstyle{2021/12/11 v1.1b}
\def\versionofbiblatex{\abx@version}
\ProvidesFile{gb7714-2015ms.bbx}[\versionofgbtstyle biblatex bibliography style]
%\RequireBiber[3]%显式指定用biber后端,当用bibtex时会报错,但其实不会影响编译,只是采用bibtex后无法达成格式需求
@@ -85,10 +85,12 @@
%为单个条目的姓名格式控制增加nameformat和namefmtid两个域
%为缩略信息文献表增加了shortbooktitle域
%为多语言排序增加了lansortorder域
+ %因为language域会被clearlang选项清除,增加languageid域,类型设为field而不是list
\DeclareDatamodelFields[type=field,datatype=literal]{mark,medium,nameformat}
\DeclareDatamodelFields[type=field,datatype=integer]{namefmtid}
\DeclareDatamodelFields[type=field,datatype=literal]{shortbooktitle}
\DeclareDatamodelFields[type=field,datatype=literal]{lansortorder}
+ \DeclareDatamodelFields[type=field,datatype=literal]{languageid}
%因为biblatex更新3.14版本以后,biber对于为声明数据模型的条目类型
%不再默认读取,而是以空字符串作为条目类型名,自然在条目定义alias时
@@ -1052,26 +1054,32 @@
\map{%当文献给出language域时,设置文献要使用的本地化字符串的语言
\step[fieldsource=language,match=\regexp{(e|E)(n|N)(g|G)(l|L)(i|I)(s|S)(h|H)},final]
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={english}]
}
\map{
\step[fieldsource=language,match=\regexp{(r|R)(u|U)(s|S)(s|S)(i|I)(a|A)(n|N)},final]
\step[fieldset=langid,fieldvalue={russian}]
+ \step[fieldset=languageid,fieldvalue={russian}]
}
\map{%
\step[fieldsource=language,match=\regexp{(f|F)(r|R)(e|E)(n|N)(c|C)(h|H)},final]
\step[fieldset=langid,fieldvalue={french}]
+ \step[fieldset=languageid,fieldvalue={french}]
}
\map{%
\step[fieldsource=language,match=\regexp{(c|C)(h|H)(i|I)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={chinese}]
}
\map{%
\step[fieldsource=language,match=\regexp{(j|J)(a|A)(p|P)(a|A)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={japanese}]
}
\map{%
\step[fieldsource=language,match=\regexp{(k|K)(o|O)(r|R)(e|E)(a|A)(n|N)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={korean}]
}
}
}
@@ -1578,7 +1586,7 @@
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeUppercase{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -1609,7 +1617,7 @@
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeCapital{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015mx.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015mx.bbx
index e622a03e49..9266b481a5 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015mx.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-gb7714-2015/gb7714-2015mx.bbx
@@ -11,7 +11,7 @@
%
% 版本和时间信息
%
-\def\versionofgbtstyle{2021/09/11 v1.1a}
+\def\versionofgbtstyle{2021/12/11 v1.1b}
\def\versionofbiblatex{\abx@version}
\ProvidesFile{gb7714-2015mx.bbx}[\versionofgbtstyle biblatex bibliography style]
%\RequireBiber[3]%显式指定用biber后端,当用bibtex时会报错,但其实不会影响编译,只是采用bibtex后无法达成格式需求
@@ -109,10 +109,12 @@
%为单个条目的姓名格式控制增加nameformat和namefmtid两个域
%为缩略信息文献表增加了shortbooktitle域
%为多语言排序增加了lansortorder域
+ %因为language域会被clearlang选项清除,增加languageid域,类型设为field而不是list
\DeclareDatamodelFields[type=field,datatype=literal]{mark,medium,nameformat}
\DeclareDatamodelFields[type=field,datatype=integer]{namefmtid}
\DeclareDatamodelFields[type=field,datatype=literal]{shortbooktitle}
\DeclareDatamodelFields[type=field,datatype=literal]{lansortorder}
+ \DeclareDatamodelFields[type=field,datatype=literal]{languageid}
%为多样式文献表增加的stylesections、styleaysection域:
\DeclareDatamodelFields[type=field,datatype=integer]{aysections}
\DeclareDatamodelFields[type=field,datatype=literal]{styleaysection}
@@ -1102,31 +1104,37 @@
%这里为兼容3.11及以下版本,所以用一个复杂一点的正则表达式
\step[fieldsource=language,match=\regexp{(e|E)(n|N)(g|G)(l|L)(i|I)(s|S)(h|H)},final]
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={english}]
\step[fieldset=lansortorder,fieldvalue=\lanenorder]
}
\map{
\step[fieldsource=language,match=\regexp{(r|R)(u|U)(s|S)(s|S)(i|I)(a|A)(n|N)},final]
\step[fieldset=langid,fieldvalue={russian}]
+ \step[fieldset=languageid,fieldvalue={russian}]
\step[fieldset=lansortorder,fieldvalue=\lanruorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(f|F)(r|R)(e|E)(n|N)(c|C)(h|H)},final]
\step[fieldset=langid,fieldvalue={french}]
+ \step[fieldset=languageid,fieldvalue={french}]
\step[fieldset=lansortorder,fieldvalue=\lanfrorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(c|C)(h|H)(i|I)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={chinese}]
\step[fieldset=lansortorder,fieldvalue=\lancnorder]
}
\map{%
\step[fieldsource=language,match=\regexp{(j|J)(a|A)(p|P)(a|A)(n|N)(e|E)(s|S)(e|E)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={japanese}]
\step[fieldset=lansortorder,fieldvalue=\lanjporder]
}
\map{%
\step[fieldsource=language,match=\regexp{(k|K)(o|O)(r|R)(e|E)(a|A)(n|N)},final]%中日韩语目前都用english,
\step[fieldset=langid,fieldvalue={english}]
+ \step[fieldset=languageid,fieldvalue={korean}]
\step[fieldset=lansortorder,fieldvalue=\lankrorder]
}
}
@@ -2153,7 +2161,7 @@
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeUppercase{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
@@ -2184,7 +2192,7 @@
{\mkbibnameprefix{#3}\isdot}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#2}{\mkbibnamefamily{\MakeCapital{#1}}}{\mkbibnamefamily{\MakeCapital{#1}}}\isdot%
- \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\MakeSentenceCase{\mkbibnamegiven{#2}}\isdot}%\MakeCapital
+ \ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{\MakeSentenceCase{#2}}\isdot}%\MakeCapital
\ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/README b/macros/latex/contrib/biblatex-contrib/biblatex-publist/README
index f6209aa2ed..ae2d769a96 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/README
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/README
@@ -45,6 +45,9 @@ instructions.
== CHANGES ==
+* V. 1.24 (2021-12-11):
+ - Robustify handling of names with non-ASCII chars (#35).
+
* V. 1.23 (2021-09-01):
- Fix omission of plauthor after related field (#34).
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
index a5cfc89607..cb0ba5891a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
index 754704e300..282f87d9e0 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex
@@ -102,7 +102,7 @@
\thanks{Please report issues via \protect\url{https://github.com/jspitz/biblatex-publist}.}%
}
-\date{Version 1.23, 2021/09/01}
+\date{Version 1.24, 2021/12/11}
\maketitle
\begin{abstract}
@@ -667,6 +667,11 @@ or
\begin{description}
+ \item [{V. 1.24 (2021-12-11):}]~
+ \begin{itemize}
+ \item Robustify handling of names with non-ASCII chars.
+ \end{itemize}
+
\item [{V. 1.23 (2021-09-01):}]~
\begin{itemize}
\item Fix omission of publist author after related field.
@@ -906,7 +911,7 @@ Gregorio.%
Thanks go to Enrico Gregorio (egreg on \emph{tex.stackexchange.com})
for helping me with correct name parsing (actually, the code the package
uses is completely his), user gusbrs on \emph{tex.stackexchange.com},
-Marko Budii\'{c}, Clea F. Rees, Yannick Kalff, Moritz Wemheuer and many
+Marko Budii\'{c}, Ulrike Fischer, Clea F. Rees, Yannick Kalff, Moritz Wemheuer and many
other users for testing, bug reports and suggestions, Nicolas Markey for
\emph{publist.bst} and of course Philipp Lehman and the current
\bibltx\ team (Philipp Kime, Moritz Wemheuer, Audrey Boruvka and
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
index 418b8f68b0..5edbe259b9 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx
@@ -25,8 +25,8 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\bpl@version{1.23}
-\def\bpl@rdate{2021/09/01}
+\def\bpl@version{1.24}
+\def\bpl@rdate{2021/12/11}
\ProvidesFile{publist.bbx}[\bpl@rdate\space v.\bpl@version\space
biblatex bibliography style (JSP)]
@@ -272,7 +272,7 @@
\def\bpl@lvonpart{}
\def\jsp@splitpllist#1{%
\begingroup
- \edef\@tempa{#1}%
+ \protected@edef\@tempa{#1}%
\expandafter\endgroup
\expandafter\jsp@@splitpllist\@tempa\relax%
}
@@ -285,7 +285,7 @@
% Fully expanded comparison
% (adapted from scrbase.sty)
\newcommand\bpl@ifstreq[2]{%
- \begingroup\edef\@tempa{#1}\edef\@tempb{#2}%
+ \begingroup\protected@edef\@tempa{#1}\protected@edef\@tempb{#2}%
\ifx\@tempa\@tempb
\endgroup\expandafter\@firstoftwo
\else
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
index b005d71c51..0ceed4cbb3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx
@@ -26,8 +26,8 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\bpl@version{1.23}
-\def\bpl@rdate{2021/09/01}
+\def\bpl@version{1.24}
+\def\bpl@rdate{2021/12/11}
\ProvidesFile{publist.cbx}[\bpl@rdate\space v.\bpl@version\space
biblatex citation style (JSP)]
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 9e6d709139..5d3b335dee 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2021/12/10}{1.41O}
+\ProvidesExplClass{easybook}{2021/12/11}{1.41P}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -309,7 +309,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2021/12/10}{1.41O}
+\ProvidesExplPackage{easybase}{2021/12/11}{1.41P}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -1957,8 +1957,8 @@
\cs_new_protected:Npn \eb_thm_biname_set:nnn #1#2#3
{
\tl_if_eq:NnTF \l__ctex_scheme_tl { chinese }
- { \tl_set:cn { c__eb_thm_biname_#1_tl } {#3} }
- { \tl_set:cn { c__eb_thm_biname_#1_tl } {#2} }
+ { \tl_set:cn { l__eb_thm_biname_#1_tl } {#3} }
+ { \tl_set:cn { l__eb_thm_biname_#1_tl } {#2} }
}
\cs_set_eq:NN \eb@declaretheorem@save \declaretheorem
\cs_set_eq:NN \eb@declaretheoremsyle@save \declaretheoremstyle
@@ -1982,12 +1982,18 @@
}
\eb_thm_biname_set:nnn {#1} {#2} {#3}
\declaretheorem{#1}[
- name = \tl_use:c { c__eb_thm_biname_#1_tl },
+ name = \tl_use:c { l__eb_thm_biname_#1_tl },
style = eb-theorem,#5
]
\eb_if_thmframe_with_tcolorbox:TF
- { \tcolorboxenvironment{#1}{#4} } { }
- \labelformat{#1}{\tl_use:c { c__eb_thm_biname_#1_tl }~##1}
+ {
+ \bool_if_exist:cTF { l__eb_tcb_repeat_env_#1_bool }
+ { \bool_set_true:c { l__eb_tcb_repeat_env_#1_bool } }
+ { \bool_set_false:c { l__eb_tcb_repeat_env_#1_bool } }
+ \bool_if:cF { l__eb_tcb_repeat_env_#1_bool }
+ { \tcolorboxenvironment{#1}{#4} }
+ } { }
+ \labelformat{#1}{\tl_use:c { l__eb_thm_biname_#1_tl }~##1}
}
\prop_new:N \l__eb_thmtools_entry_prop
@@ -2051,18 +2057,18 @@
\c__eb_thmtools_entry_clist { notebraces = \l__eb_thm_notebraces_tl }
\exp_last_unbraced:NNV
\declaretheoremstyle[\c__eb_thmtools_entry_clist]{eb-theorem}
- \deftheorem{lemma}{引理}
- \deftheorem{axiom}{公理}
- \deftheorem{example}{例}
- \deftheorem{problem}{问题}
- \deftheorem{theorem}{定理}
- \deftheorem{corollary}{推论}
+ \deftheorem{proof}{证明}[numbered = no,qed = \qedsymbol]
+ \deftheorem{remark}{注}[numbered = no]
+ \deftheorem{proposition}{性质}
\deftheorem{assumption}{假设}
\deftheorem{conjecture}{猜想}
\deftheorem{definition}{定义}
- \deftheorem{proposition}{性质}
- \deftheorem{remark}{注}[numbered = no]
- \deftheorem{proof}{证明}[numbered = no,qed = \qedsymbol]
+ \deftheorem{corollary}{推论}
+ \deftheorem{problem}{问题}
+ \deftheorem{theorem}{定理}
+ \deftheorem{example}{例}
+ \deftheorem{axiom}{公理}
+ \deftheorem{lemma}{引理}
}
\setchemformula
@@ -2433,7 +2439,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2021/12/10}{1.41O}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2021/12/11}{1.41P}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \setexercise #1
@@ -2542,8 +2548,15 @@
\tl_new:N \p@eb@exercise
\tl_new:N \eb@tc@list@prologue
-\cs_new:Npn \exerprologue #1 { \tl_gset:Nn \eb@tc@list@prologue {#1} }
-\cs_new:Npn \tcphantomifname #1#2
+\bool_gset_true:N \g__eb_exer_clear_prologue_bool
+\NewDocumentCommand{\exerprologue}{sm}
+ {
+ \IfBooleanTF{#1}
+ {\bool_gset_false:N \g__eb_exer_clear_prologue_bool}
+ {\bool_gset_true:N \g__eb_exer_clear_prologue_bool}
+ \tl_gset:Nn \eb@tc@list@prologue {#2}
+ }
+\cs_new_protected:Npn \tcphantomifname #1#2
{
\tl_gset:Nn \eb@tc@exercise@ifnametrue {#1}
\tl_gset:Nn \eb@tc@exercise@ifnamefalse {#2}
@@ -2561,7 +2574,7 @@
\eb@tc@exercise@title
}
}{}
-\cs_set:Npn \eb_exercise_label_noempty_use:
+\cs_new:Npn \eb_exercise_label_noempty_use:
{
\eb_current_label:n { eb@exercise }
\tl_if_empty:NF \eb@tc@exercise@label
@@ -2613,7 +2626,8 @@
\begin{eb@exercise@list}[\eb@tc@list@number,#5]
#6
\end{eb@exercise@list}
- \tl_gclear:N \eb@tc@list@prologue
+ \bool_if:NT \g__eb_exer_clear_prologue_bool
+ { \tl_gclear:N \eb@tc@list@prologue }
}{}
\DeclareTColorBox{easybox}{sO{Khaki}d()O{}}
{
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index 01f18259c0..5e44f4860a 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index c0ccb8a86f..f625f1edf2 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -20,8 +20,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.41O,
- date = 2021/12/10,
+ version = v1.41P,
+ date = 2021/12/11,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
email = q1jx@foxmail.com,
@@ -593,7 +593,7 @@
文档类已预置 12 个定理环境,环境名及对应的定理名见小节 \ref{subsec:theorem},它们均使用预置的定理样式 \code{eb-theorem}。下面 \module*{thmset} 模块选项的用法名称与 \pkg*{thmtools} 宏包基本一致,且仅对预置定理样式生效。如果下面的选项不满足需求,可使用支持完整选项的相关命令创建定理环境。
\begin{options}
\keybool{thmframe}\Module{thmset}\Default{false}
- 给定理环境使用彩色盒子。这个特殊选项在本模块中使用 \pkg*{tcolorbox} 宏包来支持,\meta{盒子风格} 默认为 \code{tc-theorem}。\pkg*{thmtools} 具有类似的选项 \option*{thmbox},可在新建定理样式的命令中使用。
+ 给定理环境使用彩色盒子。这个特殊选项在本模块中使用 \pkg*{tcolorbox} 宏包来支持,\meta{盒子风格} 默认为 \code{tc-theorem}。注意它应当在定理声明命令前使用。\pkg*{thmtools} 具有类似的选项 \option*{thmbox}。
\keyval-{headfont}{字体命令}\Default{\cs*{color}\Carg{ctex@emph}\cs*{sffamily}}
定理标题部分的字体,包括字体族、字体系列、字体尺寸和字体形状命令。
\keyval-{notefont}{字体命令}\Default
@@ -1052,8 +1052,8 @@
\end{options}
\command{setexerlist}[\marg{键值列表3}]
命令 \cs{setexerlist} 用于全局设置习题条目选项 \meta{键值列表3} 的值。\meta{键值列表3} 的选项与 \pkg*{enumitem} 的排序列表相同,也可以使用下述 \option{enumitem} 选项,不过第一个选项无法是短编号形式,这被 \option{number} 选项代替。
- \command{exerprologue}[\marg{序言内容}]
- 序言命令 \cs{exerprologue} 在习题环境开始前插入一段内容,可以是文本或者代码,需要在每一个习题环境前使用。
+ \command{exerprologue}[\sarg\marg{序言内容}]
+ 序言命令 \cs{exerprologue} 在习题环境开始前插入一段内容,可以是文本或者代码,需要在每一个习题环境前使用。带有星号参数的命令会使序言在习题环境一直有效。
\command{tcphantomifname}[\marg{编号代码}\marg{不编号代码}]
命令 \cs{tcphantomifname} 根据使用 \pkg*{tcolorbox} 生成的习题标题是否编号,在超链接锚点的位置加入代码,比如使用 \cs*{addcontentsline} 命令将习题标题加入目录。
\end{commands}
diff --git a/macros/luatex/latex/datestamp/COPYING b/macros/luatex/latex/datestamp/COPYING
deleted file mode 100644
index f288702d2f..0000000000
--- a/macros/luatex/latex/datestamp/COPYING
+++ /dev/null
@@ -1,674 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
- The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users. We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors. You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
- To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.
-
- Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
- For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
- Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so. This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software. The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable. Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products. If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
- Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary. To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- TERMS AND CONDITIONS
-
- 0. Definitions.
-
- "This License" refers to version 3 of the GNU General Public License.
-
- "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
- "The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.
-
- To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy. The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
- A "covered work" means either the unmodified Program or a work based
-on the Program.
-
- To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
- To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
- An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
- 1. Source Code.
-
- The "source code" for a work means the preferred form of the work
-for making modifications to it. "Object code" means any non-source
-form of a work.
-
- A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
- The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
- The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
- The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
- The Corresponding Source for a work in source code form is that
-same work.
-
- 2. Basic Permissions.
-
- All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
- You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force. You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright. Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
- Conveying under any other circumstances is permitted solely under
-the conditions stated below. Sublicensing is not allowed; section 10
-makes it unnecessary.
-
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
- No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
- When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
- 4. Conveying Verbatim Copies.
-
- You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
- You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
- 5. Conveying Modified Source Versions.
-
- You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
- a) The work must carry prominent notices stating that you modified
- it, and giving a relevant date.
-
- b) The work must carry prominent notices stating that it is
- released under this License and any conditions added under section
- 7. This requirement modifies the requirement in section 4 to
- "keep intact all notices".
-
- c) You must license the entire work, as a whole, under this
- License to anyone who comes into possession of a copy. This
- License will therefore apply, along with any applicable section 7
- additional terms, to the whole of the work, and all its parts,
- regardless of how they are packaged. This License gives no
- permission to license the work in any other way, but it does not
- invalidate such permission if you have separately received it.
-
- d) If the work has interactive user interfaces, each must display
- Appropriate Legal Notices; however, if the Program has interactive
- interfaces that do not display Appropriate Legal Notices, your
- work need not make them do so.
-
- A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
- 6. Conveying Non-Source Forms.
-
- You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
- a) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by the
- Corresponding Source fixed on a durable physical medium
- customarily used for software interchange.
-
- b) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by a
- written offer, valid for at least three years and valid for as
- long as you offer spare parts or customer support for that product
- model, to give anyone who possesses the object code either (1) a
- copy of the Corresponding Source for all the software in the
- product that is covered by this License, on a durable physical
- medium customarily used for software interchange, for a price no
- more than your reasonable cost of physically performing this
- conveying of source, or (2) access to copy the
- Corresponding Source from a network server at no charge.
-
- c) Convey individual copies of the object code with a copy of the
- written offer to provide the Corresponding Source. This
- alternative is allowed only occasionally and noncommercially, and
- only if you received the object code with such an offer, in accord
- with subsection 6b.
-
- d) Convey the object code by offering access from a designated
- place (gratis or for a charge), and offer equivalent access to the
- Corresponding Source in the same way through the same place at no
- further charge. You need not require recipients to copy the
- Corresponding Source along with the object code. If the place to
- copy the object code is a network server, the Corresponding Source
- may be on a different server (operated by you or a third party)
- that supports equivalent copying facilities, provided you maintain
- clear directions next to the object code saying where to find the
- Corresponding Source. Regardless of what server hosts the
- Corresponding Source, you remain obligated to ensure that it is
- available for as long as needed to satisfy these requirements.
-
- e) Convey the object code using peer-to-peer transmission, provided
- you inform other peers where the object code and Corresponding
- Source of the work are being offered to the general public at no
- charge under subsection 6d.
-
- A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
- A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling. In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage. For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product. A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
- "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source. The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
- If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
- The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed. Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
- Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
- 7. Additional Terms.
-
- "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
- When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
- Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
- a) Disclaiming warranty or limiting liability differently from the
- terms of sections 15 and 16 of this License; or
-
- b) Requiring preservation of specified reasonable legal notices or
- author attributions in that material or in the Appropriate Legal
- Notices displayed by works containing it; or
-
- c) Prohibiting misrepresentation of the origin of that material, or
- requiring that modified versions of such material be marked in
- reasonable ways as different from the original version; or
-
- d) Limiting the use for publicity purposes of names of licensors or
- authors of the material; or
-
- e) Declining to grant rights under trademark law for use of some
- trade names, trademarks, or service marks; or
-
- f) Requiring indemnification of licensors and authors of that
- material by anyone who conveys the material (or modified versions of
- it) with contractual assumptions of liability to the recipient, for
- any liability that these contractual assumptions directly impose on
- those licensors and authors.
-
- All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
- If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
- Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
- 8. Termination.
-
- You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
- However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
- Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
- Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
- 9. Acceptance Not Required for Having Copies.
-
- You are not required to accept this License in order to receive or
-run a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
- 10. Automatic Licensing of Downstream Recipients.
-
- Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.
-
- An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
- You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
- 11. Patents.
-
- A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".
-
- A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
- Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
- In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
- If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
- If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
- A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License. You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
- Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
- 12. No Surrender of Others' Freedom.
-
- If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all. For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
- 13. Use with the GNU Affero General Public License.
-
- Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
- 14. Revised Versions of this License.
-
- The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation. If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
- If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
- Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
- 15. Disclaimer of Warranty.
-
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. Limitation of Liability.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
- 17. Interpretation of Sections 15 and 16.
-
- If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-Also add information on how to contact you by electronic and paper mail.
-
- If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
- <program> Copyright (C) <year> <name of author>
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
- You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-<https://www.gnu.org/licenses/>.
-
- The GNU General Public License does not permit incorporating your program
-into proprietary programs. If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License. But first, please read
-<https://www.gnu.org/licenses/why-not-lgpl.html>.
diff --git a/macros/luatex/latex/datestamp/README.txt b/macros/luatex/latex/datestamp/README.txt
index aceabdfc45..fe22e37dae 100644
--- a/macros/luatex/latex/datestamp/README.txt
+++ b/macros/luatex/latex/datestamp/README.txt
@@ -1,8 +1,8 @@
-----------------------------------------------------------
+-----------------------------------------------------------
Package: datestamp
-Version: v0.1 (22 October, 2021)
+Version: v0.2(08 December, 2021)
Author: निरंजन
Description: Fixed date-stamps with LuaLaTeX
-Repository: https://gitlab.com/niruvt/datestamp
+Repository: http://savannah.nongnu.org/projects/datestamp
License: GPLv3+, GFDLv1.3+
-----------------------------------------------------------
+-----------------------------------------------------------
diff --git a/macros/luatex/latex/datestamp/datestamp-example.ds b/macros/luatex/latex/datestamp/datestamp-example.ds
deleted file mode 100644
index 4a7d1360ac..0000000000
--- a/macros/luatex/latex/datestamp/datestamp-example.ds
+++ /dev/null
@@ -1,3 +0,0 @@
-firstdate = "August 21, 2021"
-seconddate = "September 21, 2021"
-thirddate = "October 22, 2021"
diff --git a/macros/luatex/latex/datestamp/datestamp-example.pdf b/macros/luatex/latex/datestamp/datestamp-example.pdf
index e3c9309954..73854cc330 100644
--- a/macros/luatex/latex/datestamp/datestamp-example.pdf
+++ b/macros/luatex/latex/datestamp/datestamp-example.pdf
Binary files differ
diff --git a/macros/luatex/latex/datestamp/datestamp-example.tex b/macros/luatex/latex/datestamp/datestamp-example.tex
index 5a3529c109..52607eebfa 100644
--- a/macros/luatex/latex/datestamp/datestamp-example.tex
+++ b/macros/luatex/latex/datestamp/datestamp-example.tex
@@ -1,3 +1,23 @@
+% -----------------------------------------------------------
+% Example file for LaTeX package `datestamp'.
+% Copyright © 2021 निरंजन
+%
+% This program is free software: you can redistribute it
+% and/or modify it under the terms of the GNU General Public
+% License as published by the Free Software Foundation,
+% either version 3 of the License, or (at your option) any
+% later version.
+%
+% This program is distributed in the hope that it will be
+% useful, but WITHOUT ANY WARRANTY; without even the implied
+% warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+% PURPOSE. See the GNU General Public License for more
+% details.
+%
+% You should have received a copy of the GNU General Public
+% License along with this program. If not, see
+% <https://www.gnu.org/licenses/>.
+% -----------------------------------------------------------
\documentclass{article}
\usepackage{datestamp}
diff --git a/macros/luatex/latex/datestamp/datestamp.dtx b/macros/luatex/latex/datestamp/datestamp.dtx
index 39494d88d9..7e9861f42e 100644
--- a/macros/luatex/latex/datestamp/datestamp.dtx
+++ b/macros/luatex/latex/datestamp/datestamp.dtx
@@ -1,23 +1,23 @@
% \iffalse meta-comment
%
% File: datestamp.dtx
-% ----------------------------------------------------
-% Package: datestamp
-% Version: v0.1 (22 October, 2021)
-% Author: निरंजन
-% Description: Fixed date-stamps with LuaLaTeX.
-% Repository: https://gitlab.com/niruvt/datestamp
-% License: GPLv3+, GFDLv1.3+
-% ----------------------------------------------------
+% ----------------------------------------------------------
+% Package: datestamp
+% Version: v0.2 (08 December, 2021)
+% Author: निरंजन
+% Description: Fixed date-stamps with LuaLaTeX.
+% Repository: http://savannah.nongnu.org/projects/datestamp
+% License: GPLv3+, GFDLv1.3+
+% ----------------------------------------------------------
%
-% LaTeX Package datestamp v0.1
-% © 2021 निरंजन
+% LaTeX Package datestamp v0.2
+% Copyright © 2021 निरंजन
%
% This program is free software: you can redistribute it
% and/or modify it under the terms of the GNU General Public
-% License as published by the Free Software Foundation, either
-% version 3 of the License, or (at your option) any later
-% version.
+% License as published by the Free Software Foundation,
+% either version 3 of the License, or (at your option) any
+% later version.
%
% This program is distributed in the hope that it will be
% useful, but WITHOUT ANY WARRANTY; without even the implied
@@ -40,22 +40,22 @@
\iffalse
%</internal>
%<*readme>
-----------------------------------------------------------
+-----------------------------------------------------------
Package: datestamp
-Version: v0.1 (22 October, 2021)
+Version: v0.2(08 December, 2021)
Author: निरंजन
Description: Fixed date-stamps with LuaLaTeX
-Repository: https://gitlab.com/niruvt/datestamp
+Repository: http://savannah.nongnu.org/projects/datestamp
License: GPLv3+, GFDLv1.3+
-----------------------------------------------------------
+-----------------------------------------------------------
%</readme>
%<*internal>
\fi
%</internal>
%<*driver|package>
\def\datestampname{datestamp}
-\def\datestampversion{0.1}
-\def\datestampdate{2021-10-22}
+\def\datestampversion{0.2}
+\def\datestampdate{2021-12-08}
\def\datestampdescription{%
Fixed date-stamps with LuaLaTeX.%
}
@@ -91,17 +91,17 @@ License: GPLv3+, GFDLv1.3+
% \fi
% \title{The \pkg{\datestampname} package}
% \author{{\devanagari निरंजन}}
-% \date^^A
+% \date
% {^^A
-% Version \datestampversion\ --- \datestampdate\\[1ex]^^A
-% {^^A
-% \small\faIcon{link}\quad
-% \url{https://ctan.org/pkg/datestamp}^^A
-% }\\^^A
-% {^^A
-% \small\faIcon{gitlab}\quad
-% \url{https://gitlab.com/niruvt/datestamp}^^A
-% }^^A
+% Version \datestampversion\ --- \datestampdate\\[1ex]^^A
+% {^^A
+% \small\faIcon{link}\quad
+% \url{https://ctan.org/pkg/datestamp}^^A
+% }\\^^A
+% {^^A
+% \small\faIcon{bug}\quad
+% \url{http://savannah.nongnu.org/bugs/?group=datestamp}^^A
+% }^^A
% }
%
% \maketitle
@@ -114,7 +114,7 @@ License: GPLv3+, GFDLv1.3+
% Lua\LaTeX\ provided a smooth interface for achieving
% this and thus this package was developed.
% \end{abstract}
-%
+% \section{Documentation}
% \begin{function}{\adddatestamp}
% \begin{syntax}
% \cs{adddatestamp} \marg{key}
@@ -134,12 +134,29 @@ License: GPLv3+, GFDLv1.3+
% One can fool the program by writing a file like this
% themselves!
% \end{function}
+% \begin{function}{\addmonthstamp}
+% \begin{syntax}
+% \cs{addmonthstamp} \marg{key}
+% \end{syntax}
+% Similar to \cs{adddatestamp}, this command prints a
+% fixed month-stamp.
+% \end{function}
+% \begin{function}{\addyearstamp}
+% \begin{syntax}
+% \cs{addyearstamp} \marg{key}
+% \end{syntax}
+% This command prints a fixed year-stamp.
+% \end{function}
% \vfill
+%
+% \hrule
+%
+% \medskip
% {^^A
% \setlength{\parindent}{0pt}
% \LaTeX\ package \pkg{datestamp}
%
-% © 2021 {\devanagari निरंजन}
+% Copyright © 2021 {\devanagari निरंजन}
%
% Permission is granted to copy, distribute and/or
% modify this document under the terms of the GNU Free
@@ -158,20 +175,21 @@ License: GPLv3+, GFDLv1.3+
% \begin{macrocode}
%<@@=datestamp>
%<*package>
-\ProvidesPackage{datestamp}[2021/10/22 v0.1
+\ProvidesPackage{datestamp}[2021/12/08 v0.2
Fixed date-stamps with LuaLaTeX.]
% \end{macrocode}
% Load package \pkg{xparse} for declaring the robust command
-% \cs{adddatestamp}. Call \cs{directlua} \& open a file in
-% append mode so that it will be created if doesn't exist
-% \& only appended if exists. The following code creates a
-% file with extension \verb|.ds| \& the name of the root
+% \cs{luacodefordatestamp}. This is a generic \& internal
+% command. We will Call \cs{directlua} \& open a file in
+% append mode so that it will be created if doesn't exist \&
+% just appended if exists. The following code creates a file
+% with the extension \verb|.ds| \& the name of the root
% file. Note that using \verb|a+| mode also enables the
% \verb|read| mode.
% \begin{macrocode}
\RequirePackage{xparse}
-\NewDocumentCommand{\adddatestamp}{ m }{
- \directlua{
+\NewDocumentCommand{\luacodefordatestamp}{ m m }{%
+ \directlua{%
dsfile = io.open("\jobname.ds", "a+")
% \end{macrocode}
% Now we store the content of the \verb|.ds| file in a
@@ -184,14 +202,11 @@ Fixed date-stamps with LuaLaTeX.]
% if it is present, our code does nothing. It adds the key
% followed by the \verb|=| sign and the date to the
% \verb|.ds| file if the key is absent. We close the file
-% when this job is done \& we end the if-conditional. Note
-% that Lua itself is writing some Lua-code\footnote{The
-% output of this process produces the actual syntax of Lua.}
-% ;-)
+% when this job is done \& we end the if-conditional.
% \begin{macrocode}
if string.find(dscontent, "#1") then
else
- dsfile:write("#1 = \string\"\today\string\"\string\n")
+ dsfile:write("#1 = \string\"#2\string\"\string\n")
io.close(dsfile)
end
% \end{macrocode}
@@ -201,18 +216,38 @@ Fixed date-stamps with LuaLaTeX.]
% \begin{macrocode}
dofile("\jobname.ds")
% \end{macrocode}
-% Finally we print the dates by calling the key as a Lua
-% variable.
+% Finally we print the date by calling the key as a Lua
+% variable (which is by the way our \TeX-argument XD).
% \begin{macrocode}
tex.sprint(#1)
- }
+ }%
}
% \end{macrocode}
+% After creating this generic internal command, we use it
+% for producing various stamps. i.e.\ date, month \& year. I
+% am using the default \TeX-commands for producing them as
+% these commands have great localization-support.
+% \begin{macrocode}
+\NewDocumentCommand{\adddatestamp}{ m }{%
+ \luacodefordatestamp{#1}{\today}%
+}%
+\NewDocumentCommand{\addyearstamp}{ m }{%
+ \luacodefordatestamp{#1}{\the\year}%
+}%
+\NewDocumentCommand{\addmonthstamp}{ m }{%
+ \luacodefordatestamp{#1}{\the\month}%
+}%
+\NewDocumentCommand{\adddaystamp}{ m }{%
+ \luacodefordatestamp{#1}{\the\day}%
+}%
+% \end{macrocode}
+% End of the package.
% \begin{macrocode}
%</package>
% \end{macrocode}
% \end{implementation}
% \newpage
+% \phantomsection
% \addcontentsline{toc}{section}{GNU Free Documentation License}
% \include{gfdl-tex.tex}
% \Finale
diff --git a/macros/luatex/latex/datestamp/datestamp.ins b/macros/luatex/latex/datestamp/datestamp.ins
index 291552f7a7..abfd0bbfe7 100644
--- a/macros/luatex/latex/datestamp/datestamp.ins
+++ b/macros/luatex/latex/datestamp/datestamp.ins
@@ -5,17 +5,17 @@
\askforoverwritefalse
\preamble
-----------------------------------------------------------
+-----------------------------------------------------------
Package: datestamp
-Version: v0.1 (22 October, 2021)
+Version: v0.2(08 December, 2021)
Author: निरंजन
Description: Fixed date-stamps with LuaLaTeX.
-Repository: https://gitlab.com/niruvt/datestamp
+Repository: http://savannah.nongnu.org/projects/datestamp
License: GPLv3+, GFDLv1.3+
-----------------------------------------------------------
+-----------------------------------------------------------
-LaTeX Package datestamp v0.1
-© 2021 निरंजन
+LaTeX Package datestamp v0.2
+Copyright © 2021 निरंजन
This program is free software: you can redistribute it
and/or modify it under the terms of the GNU General Public
diff --git a/macros/luatex/latex/datestamp/datestamp.pdf b/macros/luatex/latex/datestamp/datestamp.pdf
index f9aaebb774..79cd3ea8ca 100644
--- a/macros/luatex/latex/datestamp/datestamp.pdf
+++ b/macros/luatex/latex/datestamp/datestamp.pdf
Binary files differ
diff --git a/macros/luatex/latex/datestamp/gfdl-tex.tex b/macros/luatex/latex/datestamp/gfdl-tex.tex
deleted file mode 100644
index b7d617d508..0000000000
--- a/macros/luatex/latex/datestamp/gfdl-tex.tex
+++ /dev/null
@@ -1,596 +0,0 @@
-% \begin{center}
-% \textbf{GNU Free Documentation License}
-% \end{center}
-% \begin{center}
-% Version 1.3, 3 November 2008
-%
-% Copyright \copyright{} 2000, 2001, 2002, 2007, 2008
-% Free Software Foundation, Inc.
-%
-% \bigskip
-%
-% \url{https://fsf.org/}
-%
-% \bigskip
-%
-% Everyone is permitted to copy and distribute verbatim
-% copies of this license document, but changing it is not
-% allowed.
-% \end{center}
-%
-% \begin{center}
-% \textbf{\large Preamble}
-% \end{center}
-%
-% The purpose of this License is to make a manual, textbook,
-% or other functional and useful document ``free'' in the
-% sense of freedom: to assure everyone the effective freedom
-% to copy and redistribute it, with or without modifying it,
-% either commercially or noncommercially. Secondarily, this
-% License preserves for the author and publisher a way to get
-% credit for their work, while not being considered
-% responsible for modifications made by others.
-%
-% This License is a kind of ``copyleft'', which means that
-% derivative works of the document must themselves be free
-% in the same sense. It complements the GNU General Public
-% License, which is a copyleft license designed for free
-% software.
-%
-% We have designed this License in order to use it for
-% manuals for free software, because free software needs
-% free documentation: a free program should come with
-% manuals providing the same freedoms that the software
-% does. But this License is not limited to software manuals;
-% it can be used for any textual work, regardless of subject
-% matter or whether it is published as a printed book. We
-% recommend this License principally for works whose purpose
-% is instruction or reference.
-%
-% \begin{center}
-% \textbf{\Large 1. APPLICABILITY AND DEFINITIONS}
-% \end{center}
-%
-% This License applies to any manual or other work, in any
-% medium, that contains a notice placed by the copyright
-% holder saying it can be distributed under the terms of
-% this License. Such a notice grants a world-wide,
-% royalty-free license, unlimited in duration, to use that
-% work under the conditions stated herein. The
-% ``\textbf{Document}'', below, refers to any such manual or
-% work. Any member of the public is a licensee, and is
-% addressed as ``\textbf{you}''. You accept the license if
-% you copy, modify or distribute the work in a way requiring
-% permission under copyright law.
-%
-% A ``\textbf{Modified Version}'' of the Document means any
-% work containing the Document or a portion of it, either
-% copied verbatim, or with modifications and/or translated
-% into another language.
-%
-% A ``\textbf{Secondary Section}'' is a named appendix or a
-% front-matter section of the Document that deals
-% exclusively with the relationship of the publishers or
-% authors of the Document to the Document's overall subject
-% (or to related matters) and contains nothing that could
-% fall directly within that overall subject. (Thus, if the
-% Document is in part a textbook of mathematics, a Secondary
-% Section may not explain any mathematics.) The
-% relationship could be a matter of historical connection
-% with the subject or with related matters, or of legal,
-% commercial, philosophical, ethical or political position
-% regarding them.
-%
-% The ``\textbf{Invariant Sections}'' are certain Secondary
-% Sections whose titles are designated, as being those of
-% Invariant Sections, in the notice that says that the
-% Document is released under this License. If a section does
-% not fit the above definition of Secondary then it is not
-% allowed to be designated as Invariant. The Document may
-% contain zero Invariant Sections. If the Document does not
-% identify any Invariant Sections then there are none.
-%
-% The ``\textbf{Cover Texts}'' are certain short passages of
-% text that are listed, as Front-Cover Texts or Back-Cover
-% Texts, in the notice that says that the Document is
-% released under this License. A Front-Cover Text may be at
-% most 5 words, and a Back-Cover Text may be at most 25
-% words.
-%
-% A ``\textbf{Transparent}'' copy of the Document means a
-% machine-readable copy, represented in a format whose
-% specification is available to the general public, that is
-% suitable for revising the document straightforwardly with
-% generic text editors or (for images composed of pixels)
-% generic paint programs or (for drawings) some widely
-% available drawing editor, and that is suitable for input
-% to text formatters or for automatic translation to a
-% variety of formats suitable for input to text formatters.
-% A copy made in an otherwise Transparent file format whose
-% markup, or absence of markup, has been arranged to thwart
-% or discourage subsequent modification by readers is not
-% Transparent. An image format is not Transparent if used
-% for any substantial amount of text. A copy that is not
-% ``Transparent'' is called ``\textbf{Opaque}''.
-%
-% Examples of suitable formats for Transparent copies
-% include plain ASCII without markup, Texinfo input format,
-% LaTeX input format, SGML or XML using a publicly available
-% DTD, and standard-conforming simple HTML, PostScript or
-% PDF designed for human modification. Examples of
-% transparent image formats include PNG, XCF and JPG.
-% Opaque formats include proprietary formats that can be
-% read and edited only by proprietary word processors, SGML
-% or XML for which the DTD and/or processing tools are not
-% generally available, and the machine-generated HTML,
-% PostScript or PDF produced by some word processors for
-% output purposes only.
-%
-% The ``\textbf{Title Page}'' means, for a printed book, the
-% title page itself, plus such following pages as are needed
-% to hold, legibly, the material this License requires to
-% appear in the title page. For works in formats which do
-% not have any title page as such, ``Title Page'' means the
-% text near the most prominent appearance of the work's
-% title, preceding the beginning of the body of the text.
-%
-% The ``\textbf{publisher}'' means any person or entity that
-% distributes copies of the Document to the public.
-%
-% A section ``\textbf{Entitled XYZ}'' means a named subunit
-% of the Document whose title either is precisely XYZ or
-% contains XYZ in parentheses following text that translates
-% XYZ in another language. (Here XYZ stands for a specific
-% section name mentioned below, such as
-% ``\textbf{Acknowledgements}'', ``\textbf{Dedications}'',
-% ``\textbf{Endorsements}'', or ``\textbf{History}''.) To
-% ``\textbf{Preserve the Title}'' of such a section when you
-% modify the Document means that it remains a section
-% ``Entitled XYZ'' according to this definition.
-%
-% The Document may include Warranty Disclaimers next to the
-% notice which states that this License applies to the
-% Document. These Warranty Disclaimers are considered to be
-% included by reference in this License, but only as regards
-% disclaiming warranties: any other implication that these
-% Warranty Disclaimers may have is void and has no effect on
-% the meaning of this License.
-%
-% \begin{center}
-% \textbf{\Large 2. VERBATIM COPYING}
-% \end{center}
-%
-% You may copy and distribute the Document in any medium,
-% either commercially or noncommercially, provided that this
-% License, the copyright notices, and the license notice
-% saying this License applies to the Document are reproduced
-% in all copies, and that you add no other conditions
-% whatsoever to those of this License. You may not use
-% technical measures to obstruct or control the reading or
-% further copying of the copies you make or distribute.
-% However, you may accept compensation in exchange for
-% copies. If you distribute a large enough number of copies
-% you must also follow the conditions in section~3.
-%
-% You may also lend copies, under the same conditions stated
-% above, and you may publicly display copies.
-%
-% \begin{center}
-% \textbf{\Large 3. COPYING IN QUANTITY}
-% \end{center}
-%
-% If you publish printed copies (or copies in media that
-% commonly have printed covers) of the Document, numbering
-% more than 100, and the Document's license notice requires
-% Cover Texts, you must enclose the copies in covers that
-% carry, clearly and legibly, all these Cover Texts:
-% Front-Cover Texts on the front cover, and Back-Cover Texts
-% on the back cover. Both covers must also clearly and
-% legibly identify you as the publisher of these copies.
-% The front cover must present the full title with all words
-% of the title equally prominent and visible. You may add
-% other material on the covers in addition. Copying with
-% changes limited to the covers, as long as they preserve
-% the title of the Document and satisfy these conditions,
-% can be treated as verbatim copying in other respects.
-%
-% If the required texts for either cover are too voluminous
-% to fit legibly, you should put the first ones listed (as
-% many as fit reasonably) on the actual cover, and continue
-% the rest onto adjacent pages.
-%
-% If you publish or distribute Opaque copies of the Document
-% numbering more than 100, you must either include a
-% machine-readable Transparent copy along with each Opaque
-% copy, or state in or with each Opaque copy a
-% computer-network location from which the general
-% network-using public has access to download using
-% public-standard network protocols a complete Transparent
-% copy of the Document, free of added material. If you use
-% the latter option, you must take reasonably prudent steps,
-% when you begin distribution of Opaque copies in quantity,
-% to ensure that this Transparent copy will remain thus
-% accessible at the stated location until at least one year
-% after the last time you distribute an Opaque copy
-% (directly or through your agents or retailers) of that
-% edition to the public.
-%
-% It is requested, but not required, that you contact the
-% authors of the Document well before redistributing any
-% large number of copies, to give them a chance to provide
-% you with an updated version of the Document.
-%
-% \begin{center}
-% \textbf{\Large 4. MODIFICATIONS}
-% \end{center}
-%
-% You may copy and distribute a Modified Version of the
-% Document under the conditions of sections 2 and 3 above,
-% provided that you release the Modified Version under
-% precisely this License, with the Modified Version filling
-% the role of the Document, thus licensing distribution and
-% modification of the Modified Version to whoever possesses
-% a copy of it. In addition, you must do these things in
-% the Modified Version:
-%
-% \begin{itemize}
-% \item[A.]
-% Use in the Title Page (and on the covers, if any) a
-% title distinct from that of the Document, and from those
-% of previous versions (which should, if there were any,
-% be listed in the History section of the Document). You
-% may use the same title as a previous version if the
-% original publisher of that version gives permission.
-%
-% \item[B.]
-% List on the Title Page, as authors, one or more persons
-% or entities responsible for authorship of the
-% modifications in the Modified Version, together with at
-% least five of the principal authors of the Document (all
-% of its principal authors, if it has fewer than five),
-% unless they release you from this requirement.
-%
-% \item[C.]
-% State on the Title page the name of the publisher of the
-% Modified Version, as the publisher.
-%
-% \item[D.]
-% Preserve all the copyright notices of the Document.
-%
-% \item[E.]
-% Add an appropriate copyright notice for your
-% modifications adjacent to the other copyright notices.
-%
-% \item[F.]
-% Include, immediately after the copyright notices, a
-% license notice giving the public permission to use the
-% Modified Version under the terms of this License, in the
-% form shown in the Addendum below.
-%
-% \item[G.]
-% Preserve in that license notice the full lists of
-% Invariant Sections and required Cover Texts given in the
-% Document's license notice.
-%
-% \item[H.]
-% Include an unaltered copy of this License.
-%
-% \item[I.]
-% Preserve the section Entitled ``History'', Preserve its
-% Title, and add to it an item stating at least the title,
-% year, new authors, and publisher of the Modified Version
-% as given on the Title Page. If there is no section
-% Entitled ``History'' in the Document, create one stating
-% the title, year, authors, and publisher of the Document
-% as given on its Title Page, then add an item describing
-% the Modified Version as stated in the previous
-% sentence.
-%
-% \item[J.]
-% Preserve the network location, if any, given in the
-% Document for public access to a Transparent copy of the
-% Document, and likewise the network locations given in
-% the Document for previous versions it was based on.
-% These may be placed in the ``History'' section. You may
-% omit a network location for a work that was published at
-% least four years before the Document itself, or if the
-% original publisher of the version it refers to gives
-% permission.
-%
-% \item[K.]
-% For any section Entitled ``Acknowledgements'' or
-% ``Dedications'', Preserve the Title of the section, and
-% preserve in the section all the substance and tone of
-% each of the contributor acknowledgements and/or
-% dedications given therein.
-%
-% \item[L.]
-% Preserve all the Invariant Sections of the Document,
-% unaltered in their text and in their titles. Section
-% numbers or the equivalent are not considered part of the
-% section titles.
-%
-% \item[M.]
-% Delete any section Entitled ``Endorsements''. Such a
-% section may not be included in the Modified Version.
-%
-% \item[N.]
-% Do not retitle any existing section to be Entitled
-% ``Endorsements'' or to conflict in title with any
-% Invariant Section.
-%
-% \item[O.]
-% Preserve any Warranty Disclaimers.
-% \end{itemize}
-%
-% If the Modified Version includes new front-matter sections
-% or appendices that qualify as Secondary Sections and
-% contain no material copied from the Document, you may at
-% your option designate some or all of these sections as
-% invariant. To do this, add their titles to the list of
-% Invariant Sections in the Modified Version's license
-% notice. These titles must be distinct from any other
-% section titles.
-%
-% You may add a section Entitled ``Endorsements'', provided
-% it contains nothing but endorsements of your Modified
-% Version by various parties---for example, statements of
-% peer review or that the text has been approved by an
-% organization as the authoritative definition of a
-% standard.
-%
-% You may add a passage of up to five words as a Front-Cover
-% Text, and a passage of up to 25 words as a Back-Cover
-% Text, to the end of the list of Cover Texts in the
-% Modified Version. Only one passage of Front-Cover Text
-% and one of Back-Cover Text may be added by (or through
-% arrangements made by) any one entity. If the Document
-% already includes a cover text for the same cover,
-% previously added by you or by arrangement made by the same
-% entity you are acting on behalf of, you may not add
-% another; but you may replace the old one, on explicit
-% permission from the previous publisher that added the old
-% one.
-%
-% The author(s) and publisher(s) of the Document do not by
-% this License give permission to use their names for
-% publicity for or to assert or imply endorsement of any
-% Modified Version.
-%
-% \begin{center}
-% \textbf{\Large 5. COMBINING DOCUMENTS}
-% \end{center}
-%
-% You may combine the Document with other documents released
-% under this License, under the terms defined in section~4
-% above for modified versions, provided that you include in
-% the combination all of the Invariant Sections of all of
-% the original documents, unmodified, and list them all as
-% Invariant Sections of your combined work in its license
-% notice, and that you preserve all their Warranty
-% Disclaimers.
-%
-% The combined work need only contain one copy of this
-% License, and multiple identical Invariant Sections may be
-% replaced with a single copy. If there are multiple
-% Invariant Sections with the same name but different
-% contents, make the title of each such section unique by
-% adding at the end of it, in parentheses, the name of the
-% original author or publisher of that section if known, or
-% else a unique number. Make the same adjustment to the
-% section titles in the list of Invariant Sections in the
-% license notice of the combined work.
-%
-% In the combination, you must combine any sections Entitled
-% ``History'' in the various original documents, forming one
-% section Entitled ``History''; likewise combine any
-% sections Entitled ``Acknowledgements'', and any sections
-% Entitled ``Dedications''. You must delete all sections
-% Entitled ``Endorsements''.
-%
-% \begin{center}
-% \textbf{\Large 6. COLLECTIONS OF DOCUMENTS}
-% \end{center}
-%
-% You may make a collection consisting of the Document and
-% other documents released under this License, and replace
-% the individual copies of this License in the various
-% documents with a single copy that is included in the
-% collection, provided that you follow the rules of this
-% License for verbatim copying of each of the documents in
-% all other respects.
-%
-% You may extract a single document from such a collection,
-% and distribute it individually under this License,
-% provided you insert a copy of this License into the
-% extracted document, and follow this License in all other
-% respects regarding verbatim copying of that document.
-%
-% \begin{center}
-% \textbf{\Large 7. AGGREGATION WITH INDEPENDENT WORKS}
-% \end{center}
-%
-% A compilation of the Document or its derivatives with
-% other separate and independent documents or works, in or
-% on a volume of a storage or distribution medium, is called
-% an ``aggregate'' if the copyright resulting from the
-% compilation is not used to limit the legal rights of the
-% compilation's users beyond what the individual works
-% permit. When the Document is included in an aggregate,
-% this License does not apply to the other works in the
-% aggregate which are not themselves derivative works of the
-% Document.
-%
-% If the Cover Text requirement of section~3 is applicable
-% to these copies of the Document, then if the Document is
-% less than one half of the entire aggregate, the Document's
-% Cover Texts may be placed on covers that bracket the
-% Document within the aggregate, or the electronic
-% equivalent of covers if the Document is in electronic
-% form. Otherwise they must appear on printed covers that
-% bracket the whole aggregate.
-%
-% \begin{center}
-% \textbf{\Large 8. TRANSLATION}
-% \end{center}
-%
-% Translation is considered a kind of modification, so you
-% may distribute translations of the Document under the
-% terms of section~4. Replacing Invariant Sections with
-% translations requires special permission from their
-% copyright holders, but you may include translations of
-% some or all Invariant Sections in addition to the original
-% versions of these Invariant Sections. You may include a
-% translation of this License, and all the license notices
-% in the Document, and any Warranty Disclaimers, provided
-% that you also include the original English version of this
-% License and the original versions of those notices and
-% disclaimers. In case of a disagreement between the
-% translation and the original version of this License or a
-% notice or disclaimer, the original version will prevail.
-%
-% If a section in the Document is Entitled
-% ``Acknowledgements'', ``Dedications'', or ``History'', the
-% requirement (section~4) to Preserve its Title (section~1)
-% will typically require changing the actual title.
-%
-% \begin{center}
-% \textbf{\Large 9. TERMINATION}
-% \end{center}
-%
-% You may not copy, modify, sublicense, or distribute the
-% Document except as expressly provided under this
-% License. Any attempt otherwise to copy, modify,
-% sublicense, or distribute it is void, and will
-% automatically terminate your rights under this License.
-%
-% However, if you cease all violation of this License, then
-% your license from a particular copyright holder is
-% reinstated (a) provisionally, unless and until the
-% copyright holder explicitly and finally terminates your
-% license, and (b) permanently, if the copyright holder
-% fails to notify you of the violation by some reasonable
-% means prior to 60 days after the cessation.
-%
-% Moreover, your license from a particular copyright holder
-% is reinstated permanently if the copyright holder notifies
-% you of the violation by some reasonable means, this is the
-% first time you have received notice of violation of this
-% License (for any work) from that copyright holder, and you
-% cure the violation prior to 30 days after your receipt of
-% the notice.
-%
-% Termination of your rights under this section does not
-% terminate the licenses of parties who have received copies
-% or rights from you under this License. If your rights
-% have been terminated and not permanently reinstated,
-% receipt of a copy of some or all of the same material does
-% not give you any rights to use it.
-%
-% \begin{center}
-% \textbf{\Large 10. FUTURE REVISIONS OF THIS LICENSE}
-% \end{center}
-%
-% The Free Software Foundation may publish new, revised
-% versions of the GNU Free Documentation License from time
-% to time. Such new versions will be similar in spirit to
-% the present version, but may differ in detail to address
-% new problems or concerns. See
-% \texttt{https://www.gnu.org/licenses/}.
-%
-% Each version of the License is given a distinguishing
-% version number. If the Document specifies that a
-% particular numbered version of this License ``or any later
-% version'' applies to it, you have the option of following
-% the terms and conditions either of that specified version
-% or of any later version that has been published (not as a
-% draft) by the Free Software Foundation. If the Document
-% does not specify a version number of this License, you may
-% choose any version ever published (not as a draft) by the
-% Free Software Foundation. If the Document specifies that a
-% proxy can decide which future versions of this License can
-% be used, that proxy's public statement of acceptance of a
-% version permanently authorizes you to choose that version
-% for the Document.
-%
-% \begin{center}
-% \textbf{\Large 11. RELICENSING}
-% \end{center}
-%
-% ``Massive Multiauthor Collaboration Site'' (or ``MMC
-% Site'') means any World Wide Web server that publishes
-% copyrightable works and also provides prominent facilities
-% for anybody to edit those works. A public wiki that
-% anybody can edit is an example of such a server. A
-% ``Massive Multiauthor Collaboration'' (or ``MMC'')
-% contained in the site means any set of copyrightable works
-% thus published on the MMC site.
-%
-% ``CC-BY-SA'' means the Creative Commons Attribution-Share
-% Alike 3.0 license published by Creative Commons
-% Corporation, a not-for-profit corporation with a principal
-% place of business in San Francisco, California, as well as
-% future copyleft versions of that license published by that
-% same organization.
-%
-% ``Incorporate'' means to publish or republish a Document,
-% in whole or in part, as part of another Document.
-%
-% An MMC is ``eligible for relicensing'' if it is licensed
-% under this License, and if all works that were first
-% published under this License somewhere other than this
-% MMC, and subsequently incorporated in whole or in part
-% into the MMC, (1) had no cover texts or invariant
-% sections, and (2) were thus incorporated prior to November
-% 1, 2008.
-%
-% The operator of an MMC Site may republish an MMC contained
-% in the site under CC-BY-SA on the same site at any time
-% before August 1, 2009, provided the MMC is eligible for
-% relicensing.
-%
-% \begin{center}
-% \textbf{\Large ADDENDUM: How to use this License for
-% your documents}
-% \end{center}
-%
-% To use this License in a document you have written,
-% include a copy of the License in the document and put the
-% following copyright and license notices just after the
-% title page:
-%
-% \bigskip
-% \begin{quote}
-% Copyright \copyright{} YEAR YOUR NAME.
-% Permission is granted to copy, distribute and/or modify
-% this document under the terms of the GNU Free
-% Documentation License, Version 1.3 or any later version
-% published by the Free Software Foundation; with no
-% Invariant Sections, no Front-Cover Texts, and no
-% Back-Cover Texts. A copy of the license is included in
-% the section entitled ``GNU Free Documentation
-% License''.
-% \end{quote}
-% \bigskip
-%
-% If you have Invariant Sections, Front-Cover Texts and
-% Back-Cover Texts, replace the ``with \dots\ Texts.''\ line
-% with this:
-%
-% \bigskip
-% \begin{quote}
-% with the Invariant Sections being LIST THEIR TITLES,
-% with the Front-Cover Texts being LIST, and with the
-% Back-Cover Texts being LIST.
-% \end{quote}
-% \bigskip
-%
-% If you have Invariant Sections without Cover Texts, or
-% some other combination of the three, merge those two
-% alternatives to suit the situation.
-%
-% If your document contains nontrivial examples of program
-% code, we recommend releasing these examples in parallel
-% under your choice of free software license, such as the
-% GNU General Public License, to permit their use in free
-% software. \ No newline at end of file