summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
Diffstat (limited to 'macros')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/Makefile13
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/README.md4
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxalph-doc.pdfbin465051 -> 465449 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnotes-doc.pdfbin472736 -> 473126 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnum-doc.pdfbin469463 -> 469581 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.dtx522
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.pdfbin566202 -> 597300 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxyear-doc.pdfbin469196 -> 469561 bytes
-rw-r--r--macros/latex/contrib/ragged2e/1.pdfbin0 -> 11919 bytes
-rw-r--r--macros/latex/contrib/ragged2e/2.pdfbin0 -> 13775 bytes
-rw-r--r--macros/latex/contrib/ragged2e/3.pdfbin0 -> 11913 bytes
-rw-r--r--macros/latex/contrib/ragged2e/4.pdfbin0 -> 11913 bytes
-rw-r--r--macros/latex/contrib/ragged2e/6.pdfbin0 -> 12524 bytes
-rw-r--r--macros/latex/contrib/ragged2e/README.md5
-rw-r--r--macros/latex/contrib/ragged2e/ragged2e.dtx13
-rw-r--r--macros/latex/contrib/ragged2e/ragged2e.pdfbin701509 -> 702192 bytes
-rw-r--r--macros/latex/contrib/ragged2e/test.pdfbin0 -> 4094 bytes
-rw-r--r--macros/xetex/latex/exam-zh/CHANGELOG.md10
-rw-r--r--macros/xetex/latex/exam-zh/doc/exam-zh-doc.pdfbin1595118 -> 1595064 bytes
-rw-r--r--macros/xetex/latex/exam-zh/doc/exam-zh-doc.tex2
-rw-r--r--macros/xetex/latex/exam-zh/examples/example-multiple.pdfbin160183 -> 160194 bytes
-rw-r--r--macros/xetex/latex/exam-zh/examples/example-single.pdfbin134468 -> 134479 bytes
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh-chinese-english.sty2
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh-choices.sty6
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh-font.sty2
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh-question.sty7
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh-symbols.sty2
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh-textfigure.sty2
-rw-r--r--macros/xetex/latex/exam-zh/tex/exam-zh.cls20
29 files changed, 527 insertions, 83 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/Makefile b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/Makefile
index 4235b7b579..d60109f0e1 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/Makefile
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/Makefile
@@ -3,6 +3,7 @@ PFX = biblatex-
STY1 = oxnotes
STYS = oxnotes oxyear oxnum oxalph
VARS = ibid note inote trad1 trad2 trad3
+LANGS = american british english spanish
AUX = aux,bbl,bcf,blg,doc,fdb_latexmk,fls,glo,gls,hd,idx,ilg,ind,listing,log,nav,out,run.xml,snm,synctex.gz,toc,vrb
SHELL = bash
PWD = $(shell pwd)
@@ -17,7 +18,7 @@ UTREE = $(shell kpsewhich --var-value TEXMFHOME)
all: $(NAME).pdf $(STYS:%=%-doc.pdf) clean
@exit 0
-source $(NAME).bbx american-$(NAME).lbx british-$(NAME).lbx english-$(NAME).lbx $(STYS:%=%-doc.tex) $(STYS:%=%.bbx) $(STYS:%=%.cbx) $(STYS:%=%.dbx) $(VARS:%=$(STY1)-%.bbx) $(VARS:%=$(STY1)-%.cbx) $(VARS:%=$(STY1)-%.dbx): $(NAME).dtx
+source $(NAME).bbx $(LANGS:%=%-$(NAME).lbx) $(STYS:%=%-doc.tex) $(STYS:%=%.bbx) $(STYS:%=%.cbx) $(STYS:%=%.dbx) $(VARS:%=$(STY1)-%.bbx) $(VARS:%=$(STY1)-%.cbx) $(VARS:%=$(STY1)-%.dbx): $(NAME).dtx
luatex -interaction=nonstopmode $(NAME).dtx >/dev/null
$(NAME).pdf: $(NAME).dtx $(NAME).bbx $(STY1).bbx $(STY1).cbx british-$(NAME).lbx english-$(NAME).lbx
@@ -41,17 +42,17 @@ $(STYS:%=%.bbi): %.bbi : test-%.pdf
clean:
@for log in *.log; do [ -e "$$log" ] || continue; grep "WARNING: biblatex-oxref" $$log; test $$? -eq 1; done
rm -f $(NAME).{$(AUX)} $(STYS:%=%-doc.{$(AUX)}) $(STYS:%=test-%.{tex,pdf}) $(STYS:%=test-%.{$(AUX)})
- rm -f $(STYS:%=%.doc) {american,british,english}-$(NAME).doc
+ rm -f $(STYS:%=%.doc) $(LANGS:%=%-$(NAME).doc)
rm -rf _minted-*
rm -f $(NAME).markdown.in
rm -rf _markdown_*
distclean: clean
- rm -f $(NAME).{bbx,bib,ins,pdf} $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) {american,british,english}-$(NAME).lbx $(STYS:%=%-doc.{tex,pdf})
+ rm -f $(NAME).{bbx,bib,ins,pdf} $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) $(LANGS:%=%-$(NAME).lbx) $(STYS:%=%-doc.{tex,pdf})
inst: all
mkdir -p $(UTREE)/{tex,source,doc}/latex/$(PFX)$(NAME)
cp $(NAME).{dtx,ins} $(UTREE)/source/latex/$(PFX)$(NAME)
- cp $(NAME).bbx $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) {american,british,english}-$(NAME).lbx $(UTREE)/tex/latex/$(PFX)$(NAME)
+ cp $(NAME).bbx $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) $(LANGS:%=%-$(NAME).lbx) $(UTREE)/tex/latex/$(PFX)$(NAME)
cp $(NAME).{bib,pdf} $(STYS:%=%-doc.{tex,pdf}) $(UTREE)/doc/latex/$(PFX)$(NAME)
mktexlsr
uninst:
@@ -61,7 +62,7 @@ uninst:
install: all
sudo mkdir -p $(LOCAL)/{tex,source,doc}/latex/$(PFX)$(NAME)
sudo cp $(NAME).{dtx,ins} $(LOCAL)/source/latex/$(PFX)$(NAME)
- sudo cp $(NAME).bbx $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) {american,british,english}-$(NAME).lbx $(LOCAL)/tex/latex/$(PFX)$(NAME)
+ sudo cp $(NAME).bbx $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) $(LANGS:%=%-$(NAME).lbx) $(LOCAL)/tex/latex/$(PFX)$(NAME)
sudo cp $(NAME).{bib,pdf} $(STYS:%=%-doc.{tex,pdf}) $(LOCAL)/doc/latex/$(PFX)$(NAME)
sudo mktexlsr
uninstall:
@@ -70,7 +71,7 @@ uninstall:
zip: all
mkdir $(TDIR)
- cp $(NAME).{dtx,pdf} $(STYS:%=%-doc.pdf) README.md Makefile $(NAME).bbx $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) {american,british,english}-$(NAME).lbx $(TDIR)
+ cp $(NAME).{dtx,pdf} $(STYS:%=%-doc.pdf) README.md Makefile $(NAME).bbx $(STYS:%=%.{b,c,d}bx) $(VARS:%=$(STY1)-%.{b,c,d}bx) $(LANGS:%=%-$(NAME).lbx) $(TDIR)
cd $(TEMP); zip -Drq $(PWD)/$(PFX)$(NAME)-$(VERS).zip $(PFX)$(NAME)
ctan: all
mkdir $(TDIR)
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/README.md b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/README.md
index 8d5c13f87a..c8b147bc81 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/README.md
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/README.md
@@ -45,7 +45,8 @@ UNIX-like systems:
- oxnotes.cbx, oxnotes-ibid.cbx, oxnotes-note.cbx, oxnotes-inote.cbx,
oxnotes-trad1.cbx, oxnotes-trad2.cbx, oxnotes-trad3.cbx, oxyear.cbx,
oxnum.cbx, oxalph.cbx
- - american-oxref.lbx, british-oxref.lbx, english-oxref.lbx
+ - american-oxref.lbx, british-oxref.lbx, english-oxref.lbx,
+ spanish-oxref.lbx
- oxnotes.dbx, oxnotes-ibid.dbx, oxnotes-note.dbx, oxnotes-inote.dbx,
oxnotes-trad1.dbx, oxnotes-trad2.dbx, oxnotes-trad3.dbx, oxyear.dbx,
oxnum.dbx, oxalph.dbx
@@ -88,6 +89,7 @@ first two steps.
american-oxref.lbx,
british-oxref.lbx,
english-oxref.lbx,
+ spanish-oxref.lbx
oxalph.bbx,
oxalph.cbx,
oxalph.dbx,
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxalph-doc.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxalph-doc.pdf
index a0d43bbfef..e4bea5bdcf 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxalph-doc.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxalph-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnotes-doc.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnotes-doc.pdf
index f43b5fa6bf..d21bb281b3 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnotes-doc.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnotes-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnum-doc.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnum-doc.pdf
index e7d2cae73f..e331370beb 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnum-doc.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnum-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.dtx b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.dtx
index 6ce62d568e..ba420f12dd 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.dtx
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.dtx
@@ -1,6 +1,6 @@
% \iffalse
%<*internal|bbx|cbx|dbx|lbx|doc>
-\def\Version{2023/02/01 v3.0}
+\def\Version{2023/06/06 v3.1}
%</internal|bbx|cbx|dbx|lbx|doc>
%<*internal>
\iffalse
@@ -83,6 +83,10 @@
\ProvidesFile{american-oxref.lbx}
[\Version\space American English conventions required by the biblatex-oxref styles]
%</lbx&us>
+%<*lbx&es>
+\ProvidesFile{spanish-oxref.lbx}
+ [\Version\space Spanish conventions required by the biblatex-oxref styles]
+%</lbx&es>
%<*doc&n>
\ProvidesFile{oxnotes-doc.tex}
[\Version\space Footnote-based biblatex style inspired by the Oxford Guide to Style]
@@ -215,6 +219,7 @@ Copyright (C) 2016–2023 Alex Ball
\file{american-\jobname.lbx}{\from{\jobname.dtx}{lbx,us}}
\file{british-\jobname.lbx}{\from{\jobname.dtx}{lbx,gb}}
\file{english-\jobname.lbx}{\from{\jobname.dtx}{lbx,en}}
+ \file{spanish-\jobname.lbx}{\from{\jobname.dtx}{lbx,es}}
\file{oxnotes-doc.tex}{\from{\jobname.dtx}{doc,n}}
\file{oxnum-doc.tex}{\from{\jobname.dtx}{doc,m}}
\file{oxalph-doc.tex}{\from{\jobname.dtx}{doc,a}}
@@ -292,6 +297,12 @@ Copyright (C) 2016–2023 Alex Ball
\colorlet{hacked}{orange}
\colorlet{manual}{purple}
+\usepackage{iftex}
+\ifluatex
+ % Fix spacing in tcolorbox
+ \usepackage{luacolor}
+\fi
+
\usepackage{tcolorbox}
\tcbuselibrary{skins,xparse,documentation,breakable,minted}
\colorlet{Option}{violet}
@@ -633,6 +644,9 @@ Copyright (C) 2016–2023 Alex Ball
\endgroup
}
\makeatother
+\AtBeginDocument{%
+\hypersetup{linkcolor=black}%
+}
\GetFileInfo{\jobname.dtx}
\title{OXREF -- Biblatex styles inspired by the \emph{Oxford Guide to Style}}
@@ -642,7 +656,28 @@ Copyright (C) 2016–2023 Alex Ball
%<doc&a>\title{OXALPH -- An alphabetic style for Biblatex}
%<doc&y>\title{OXYEAR -- An author–year style for Biblatex}
%<*driver|doc>
+
+\newcounter{elementcount}
+\newcommand{\commaorandlist}[1]{%
+ \renewcommand*{\do}[1]{\stepcounter{elementcount}}%
+ \dolistloop{#1}%
+ \ifnumgreater{\value{elementcount}}{2}{%
+ \def\finaland{, and }%
+ }{%
+ \def\finaland{ and }%
+ }%
+ \renewcommand*{\do}[1]{%
+ \ifnumequal{\value{elementcount}}{1}{%
+ ##1%
+ }{%
+ \ifnumequal{\value{elementcount}}{2}{#1\finaland}{##1, }%
+ }%
+ \addtocounter{elementcount}{-1}%
+ }%
+ \dolistloop{#1}}
+
\author{Alex Ball}
+\listadd\thetranslators{Bruno Maltras}
\date{\printdateTeX{\filedate}}
\begin{document}
\thispagestyle{empty}
@@ -654,7 +689,8 @@ Copyright (C) 2016–2023 Alex Ball
\LARGE\thetitle
\bigskip
- \Large\theauthor
+ \Large\theauthor\par
+ \normalsize with translations by \commaorandlist\thetranslators
\bigskip
\Large\thedate
@@ -668,7 +704,9 @@ Copyright (C) 2016–2023 Alex Ball
\hspace*{.1\textwidth}\raisebox{0pt}[0pt][0pt]{\rule{\normalrulethickness}{\textheight}}
\newpage
-\tableofcontents*
+\begin{KeepFromToc}
+\tableofcontents
+\end{KeepFromToc}
%</driver|doc>
%<*driver>
@@ -760,7 +798,8 @@ UNIX-like systems:
- oxnotes.cbx, oxnotes-ibid.cbx, oxnotes-note.cbx, oxnotes-inote.cbx,
oxnotes-trad1.cbx, oxnotes-trad2.cbx, oxnotes-trad3.cbx, oxyear.cbx,
oxnum.cbx, oxalph.cbx
- - american-oxref.lbx, british-oxref.lbx, english-oxref.lbx
+ - american-oxref.lbx, british-oxref.lbx, english-oxref.lbx,
+ spanish-oxref.lbx
- oxnotes.dbx, oxnotes-ibid.dbx, oxnotes-note.dbx, oxnotes-inote.dbx,
oxnotes-trad1.dbx, oxnotes-trad2.dbx, oxnotes-trad3.dbx, oxyear.dbx,
oxnum.dbx, oxalph.dbx
@@ -803,6 +842,7 @@ first two steps.
american-oxref.lbx,
british-oxref.lbx,
english-oxref.lbx,
+ spanish-oxref.lbx
oxalph.bbx,
oxalph.cbx,
oxalph.dbx,
@@ -1953,6 +1993,48 @@ Unwin, T. (1994), \enquote{Structural Change in Estonian Agriculture: From Comma
\end{Verbatim}
\end{bibexbox}
+% Journal title is abbreviated, no following comma
+%</n|m|a|y>
+%<*n|m>
+\begin{bibexbox}<OGS \S15.4.1>
+{lindars1965eir}
+B. Lindars, \enquote{Ezechiel and Individual Responsibility}, \emph{VT} 15 (1965), 452–67.
+\tcblower
+\begin{Verbatim}
+%</n|m>
+%<*n|m|bib>
+@article{lindars1965eir,
+ author = {B. Lindars},
+ title = {Ezechiel and Individual Responsibility},
+ journaltitle = {VT},
+ volume = {15},
+ date = {1965},
+ pages = {452-467}}
+%</n|m|bib>
+%<*n|m>
+\end{Verbatim}
+\end{bibexbox}
+%</n|m>
+%<*n|m|a|y>
+
+If the last\slash only word of the journal title is abbreviated
+(indicated by point or capital letter), it does not need a comma after it.
+\pkg[biblatex]{Oxref} will try to detect this and adjust the punctuation accordingly;
+the list of characters that it uses is set with \cs{DeclareAbbrEndChars}.
+The default setting is this:
+
+\begin{tcblisting}{listing only}
+\DeclareAbbrEndChars{A\^{A}BCDEFG\u{G}HI\^{I}JKLMNO\"{O}\^{O}PQRSTU\"{U}\^{U}VWXYZ.}
+\end{tcblisting}
+
+There is also a starred version of the command that appends to this list:
+
+\begin{tcblisting}{listing only}
+\DeclareAbbrEndChars*{\c{C}\.{I}\c{S}}
+\end{tcblisting}
+
+\hack{To override this mechanism for a single entry, you can suppress the comma by adding \cs{nopunct} to the end of the journal (sub)title, or restore it by adding a pair of braces.}
+
% Electronic identifier instead of a page range
\begin{bibexbox}(hacked)
%<n|m><NHR \S18.8.5*>
@@ -1977,31 +2059,6 @@ Unwin, T. (1994), \enquote{Structural Change in Estonian Agriculture: From Comma
\end{Verbatim}
\end{bibexbox}
-\hack{If the last\slash only word of the journal title is abbreviated (indicated by point or capital letter), it does not need a comma after it. \pkg[biblatex]{Oxref} will try to detect this; if it gets it wrong, you can suppress the comma by adding \cs{nopunct} to the end of the journal (sub)title, or restore it by adding a pair of braces.}
-
-%</n|m|a|y>
-%<*n|m>
-\begin{bibexbox}<OGS \S15.4.1>
-{lindars1965eir}
-B. Lindars, \enquote{Ezechiel and Individual Responsibility}, \emph{VT} 15 (1965), 452–67.
-\tcblower
-\begin{Verbatim}
-%</n|m>
-%<*n|m|bib>
-@article{lindars1965eir,
- author = {B. Lindars},
- title = {Ezechiel and Individual Responsibility},
- journaltitle = {VT},
- volume = {15},
- date = {1965},
- pages = {452-467}}
-%</n|m|bib>
-%<*n|m>
-\end{Verbatim}
-\end{bibexbox}
-%</n|m>
-%<*n|m|a|y>
-
% Unsigned, with month as issue name
\begin{bibexbox}
%<n|m><OGS \S15.4.1*>
@@ -2681,7 +2738,8 @@ Rosemary Stewart et al. (eds.), \emph{Managing in Britain} (London, 1994).
%</n|m>
%<*n|m|bib>
@collection{stewart.etal1994mb,
- editor = {Rosemary Stewart and Jean-Louis Barsoux and Alfred Kieser and Hans-Dieter Ganter and Peter Walgenbach},
+ editor = {Rosemary Stewart and Jean-Louis Barsoux and Alfred Kieser and Hans-Dieter Ganter
+ and Peter Walgenbach},
title = {Managing in {Britain}},
location = {London},
date = {1994}}
@@ -8493,7 +8551,7 @@ rather than \pkg[biblatex]{oxref}.}
% In legal references, the truncated year is at least two digits.
%
% \begin{macrocode}
- \ifboolexpr{
+ \ifboolexpr{
(
test {\ifentrytype{jurisdiction}}
or
@@ -8845,19 +8903,22 @@ rather than \pkg[biblatex]{oxref}.}
\DeclareFieldFormat[article,periodical,suppperiodical,review]{entrysubtype}{\mkbibbrackets{#1}}
% \end{macrocode}
%
-% We provide a command for testing if a title is abbreviated. We use the
-% traditional \LaTeX\ accent commands in case a non-Unicode input encoding is
-% being used. Testing for \c{C} and \c{S} causes errors when using OT1 encoding.
+% We provide a configurable command for testing if a title is abbreviated. We
+% test for ASCII capitals and a limited number of accented capitals by default,
+% but users can extend or replace the list if it causes problems.
%
% \begin{macrocode}
-\newcommand*{\blx@ox@abbrevstring}{%
- A\^{A}BCDEFG\u{G}HI\.{I}\^{I}JKLMNO\"{O}\^{O}PQRSTU\"{U}\^{U}VWXYZ.}%
-\AtBeginDocument{
- \ifdefstring{\encodingdefault}{OT1}{}{%
- \renewcommand*{\blx@ox@abbrevstring}{%
- A\^{A}BC\c{C}DEFG\u{G}HI\.{I}\^{I}JKLMNO\"{O}\^{O}PQRS\c{S}TU\"{U}\^{U}VWXYZ.}%
- }%
-}
+\global\let\blx@ox@abbrevstring\@empty
+\newrobustcmd*{\DeclareAbbrEndChars}{%
+ \@ifstar{%
+ \blx@ox@apptoabbrevstring
+ }{%
+ \global\let\blx@ox@abbrevstring\@empty
+ \blx@ox@apptoabbrevstring}}
+\def\blx@ox@apptoabbrevstring#1{
+ \xdef\blx@ox@abbrevstring{\blx@ox@abbrevstring#1}}
+\DeclareAbbrEndChars{%
+ A\^{A}BCDEFG\u{G}HI\^{I}JKLMNO\"{O}\^{O}PQRSTU\"{U}\^{U}VWXYZ.}%
\newcommand*{\ifabbrev}[3]{%
\StrRight{#1}{1}[\blx@ox@lastchar]%
\expandafter\IfSubStr*{\blx@ox@abbrevstring}{\blx@ox@lastchar}{#2}{#3}%
@@ -15435,15 +15496,380 @@ reference,mvreference,inreference]{volume}{%
\InheritBibliographyStrings{english}
% \end{macrocode}
%
+% \iffalse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%</us>
+%<*es>
+% \fi %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% \section{Spanish: spanish-oxref.lbx}
+%
+% \setcounter{FancyVerbLine}{19}
+%
+% Thanks to Bruno Maltras for contributing these translations.
+%
+% We load the standard language-specific punctuation and date formatting.
+%
+% \begin{macrocode}
+\InheritBibliographyExtras{spanish}
+% \end{macrocode}
+%
+% We load the standard set of localization strings, then add our
+% adjustments.
+%
+% \begin{macrocode}
+\DeclareBibliographyStrings{%
+ inherit = {spanish},
+% \end{macrocode}
+%
+% These are new strings defined by \pkg[biblatex]{oxref}:
+%
+% \begin{itemize}
+% \item Roles expressed as functions
+% \end{itemize}
+%
+% \begin{macrocode}
+ director = {{direcci\'on}{dir\adddot}},
+ directors = {{directores}{dirs\adddot}},
+ performer = {{int\'erprete}{int\adddot}},
+ performers = {{int\'erpretes}{ints\adddot}},
+ reader = {{narraci\'on}{narr\adddot}},
+ readers = {{narradores}{narrs\adddot}},
+ conductor = {{direcci\'on}{dir\adddot}},
+ conductors = {{directores}{dirs\adddot}},
+ serieseditor = {{editor de la serie}{ed\adddotspace ser\adddot}},
+ serieseditors = {{editores de la serie}{eds\adddotspace ser\adddot}},
+ holder = {{titular}{tit\adddot},
+ holders = {{titulares}{tits\adddot}},
+ editorcm = {{editor y compilador}{ed\adddotspace y comp\adddot}},
+ editorcms = {{editores y compiladores}{eds\adddotspace y comps\adddot}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Roles expressed as actions
+% \end{itemize}
+%
+% \begin{macrocode}
+ byperformer = {{interpretado por}{int\adddot}},
+ bydirector = {{dirigido por}{dir\adddot}},
+ byreader = {{narrado por}{narr\adddotspace por}},
+ byconductor = {{dirigido por}{dir\adddot}},
+ byserieseditor = {{editado por}{ed\adddot}},
+ byholder = {{derechos de}{held by}},
+ byeditorcm = {{editado y compilado por}{ed\adddotspace y comp\adddot}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Publication details
+% \end{itemize}
+%
+% \begin{macrocode}
+ facsimile = {{edici\'on facs\'imil}{ed\adddotspace facs\adddot}},
+ revised = {{edici\'on revisada}{ed\adddotspace rev\adddot}},
+ revisedenlarged = {{edici\'on revisada y ampliada}{ed\adddotspace rev\adddotspace y amp\adddot}},
+ revisedreprint = {{reimpresi\'on revisada}{reimpr\adddotspace rev\adddot}},
+ suppto = {{Suplemento de}{Supl\adddot de}},
+ equals = {{=}{=}},
+ original = {{original}{orig\adddot}},
+ amendedby = {{enmendado por}{enmendado por}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Publication state
+% \end{itemize}
+%
+% \begin{macrocode}
+ inpressin = {{de pr\'oxima publicaci\'on en}{de pr\'ox\adddotspace publ\adddot}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Pagination
+% \end{itemize}
+%
+% \begin{macrocode}
+ book = {{libro}{lib\adddot}},
+ books = {{libros}{libs\adddot}},
+ canto = {{canto}{canto}},
+ cantos = {{cantos}{cantos}},
+ stanza = {{estrofa}{estr\adddot}},
+ stanzas = {{estrofas}{estrs\adddot}},
+ act = {{Acto}{Acto}},
+ acts = {{Actos}{Actos}},
+ scene = {{Escena}{Escena}},
+ scenes = {{Escenas}{Escenas}},
+ folio = {{folio}{fol\adddot}},
+ folios = {{folios}{fols\adddot}},
+ article = {{art\'iculo}{art\adddot}},
+ articles = {{art\'iculos}{arts\adddot}},
+ clause = {{cl\'ausula}{cl\adddot}},
+ clauses = {{cl\'ausulas}{cls\adddot}},
+ regulation = {{regulaci\'on}{reg\adddot}},
+ regulations = {{regulaciones}{regs\adddot}},
+ rule = {{norma}{nrm\adddot}},
+ rules = {{normas}{nrms\addot}},
+ booktotal = {{libro}{lib\adddot}},
+ booktotals = {{libros}{libs\adddot}},
+ cantototal = {{canto}{canto}},
+ cantototals = {{cantos}{cantos}},
+ stanzatotal = {{estrofa}{estr\adddot}},
+ stanzatotals = {{estrofas}{estrs\adddot}},
+ acttotal = {{Acto}{Acto}},
+ acttotals = {{Actos}{Actos}},
+ scenetotal = {{Escena}{Escena}},
+ scenetotals = {{Escenas}{Escenas}},
+ foliototal = {{folio}{fol\adddot}},
+ foliototals = {{folios}{fols\adddot}},
+ articletotal = {{art\'iculo}{art\adddot}},
+ articletotals = {{art\'iculos}{arts\adddot}},
+ clausetotal = {{cl\'ausula}{cl\adddot}},
+ clausetotals = {{cl\'ausulas}{cls\adddot}},
+ regulationtotal = {{regulaci\'on}{reg\adddot}},
+ regulationtotals = {{regulaciones}{regs\adddot}},
+ ruletotal = {{norma}{nrm\adddot}},
+ ruletotals = {{normas}{nrms\adddot}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Types
+% \end{itemize}
+%
+% \begin{macrocode}
+ facebook = {{Facebook post}{Facebook post}},
+ tweet = {{tweet}{tweet}},
+ podcast = {{podcast}{podcast}},
+ clip = {{video}{video}},
+ webcast = {{webcast}{webcast}},
+ poster = {{poster}{poster}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Miscellaneous
+% \end{itemize}
+%
+% \begin{macrocode}
+ nolocation = {{sin lugar}{s\adddot l\adddot}},
+ modified = {{\'ultima modificaci\'on}{\'ult\adddotspace modif\adddot}},
+ recorded = {{registrado}{registrado}},
+ uploaded = {{subido}{subido}},
+ filed = {{archivado}{archivado}},
+ issued = {{publicado}{publicado}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Labels
+% \end{itemize}
+%
+% \begin{macrocode}
+ anon = {{An\'onimo}{An\'on\adddot}},
+ pseudo = {{Pseudo-}{Ps\adddot-}},
+ urldown = {{descargado}{descargado}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item Country names, patents, and patent requests,
+% \end{itemize}
+%
+% \begin{macrocode}
+ countryjp = {{Jap\'on}{JP}},
+ patentjp = {{Patente japonesa}{Pat\adddotspace japonesa}},
+ patreqjp = {{Solicitud de patente japonesa}{Sol\adddotspace pat\adddotspace japonesa}},
+% \end{macrocode}
+%
+% \begin{itemize}
+% \item These are borrowed from other styles.
+% \end{itemize}
+%
+% \begin{macrocode}
+ 1column = {{una columna}{1\addnbspace col\adddot}},
+ 2column = {{dos columnas}{2\addnbspace col\adddot}},
+ inflayer = {{norma subordinada}{norm\adddotspace sub\adddot}},
+ suplayer = {{norma superior}{norm\adddotspace sup\adddot}},
+ paper = {{hoja}{h\adddot}},
+ papyrus = {{papiro}{papiro}},
+ parchment = {{pergamino}{pergam\adddot}},
+ eucase = {{Caso}{Caso}},
+ eujoinedcases = {{Casos agrupados}{Casos agrupados}},
+ commissiondecision = {{Decisi/'on de la Comisi/'on}{Decisi/'on de la Comisi/'on}},
+ application = {{Solicitud}{Solic\adddot}},
+ order = {{Orden}{Ord\adddot}},
+ bill = {{Proyecto de ley}{Proy\adddotspace de ley}},
+ draft = {{anteproyecto}{anteproyecto}},
+ opened = {{abierto a la firma}{abierto a la firma}},
+ signed = {{aprobada}{aprobada}},
+ adopted = {{adoptada}{adoptada}},
+ inforce = {{en vigor}{en vigor}},
+% \end{macrocode}
+%
+% The rest of these strings are overrides for the standard ones.
+%
+% In parallel with the English versions, we remove the final \enquote{por} from
+% the abbreviated versions of the roles expressed as actions.
+%
+% \begin{macrocode}
+ byeditor = {{editado}{ed\adddotspace}},
+ byredactor = {{redacci\'on de}{red\adddotspace de}},
+ byreviser = {{revisado}{rev\adddotspace}},
+ byreviewer = {{rese\~nado}{res\adddotspace}},
+ byfounder = {{fundado}{fund\adddotspace}},
+ bycontinuator = {{continuado}{cont\adddotspace}},
+ bycollaborator = {{colaboraci\'on de}{col\adddotspace de}},
+ bytranslator = {{traducido \lbx@lfromlang\}{trad\adddotspace \lbx@sfromlang\}},
+ bycommentator = {{comentado}{com\adddotspace}},
+ byannotator = {{anotado}{anot\adddotspace}},
+ byeditortr = {{editado y traducido \lbx@lfromlang\}%
+ {ed\adddotspace y trad\adddotspace \lbx@sfromlang\}},
+ byeditorco = {{editado y comentado}%
+ {ed\adddotspace y com\adddotspace}},
+ byeditoran = {{editado y anotado}%
+ {ed\adddotspace y anot\adddotspace}},
+ byeditorin = {{editado e introducido}%
+ {ed\adddotspace e intr\adddotspace}},
+ byeditorfo = {{editado y prologado}%
+ {ed\adddotspace y pr\'ol\adddotspace}},
+ byeditoraf = {{editado y epilogado}%
+ {ed\adddotspace y ep\'il\adddotspace}},
+ byeditortrco = {{editado, traducido \lbx@lfromlang\ y comentado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y com\adddotspace}},
+ byeditortran = {{editado, traducido \lbx@lfromlang\ y anotado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y anot\adddotspace}},
+ byeditortrin = {{editado, traducido \lbx@lfromlang\ e introducido}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ e intr\adddotspace}},
+ byeditortrfo = {{editado, traducido \lbx@lfromlang\ y prologado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y pr\'ol\adddotspace}},
+ byeditortraf = {{editado, traducido \lbx@lfromlang\ y epilogado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y ep\'il\adddotspace}},
+ byeditorcoin = {{editado, comentado e introducido}%
+ {ed.,\addabbrvspace com\adddotspace e intr\adddotspace}},
+ byeditorcofo = {{editado, comentado y prologado}%
+ {ed.,\addabbrvspace com\adddotspace y pr\'ol\adddotspace}},
+ byeditorcoaf = {{editado, comentado y epilogado}%
+ {ed.,\addabbrvspace com\adddotspace y ep\'il\adddotspace}},
+ byeditoranin = {{editado, anotado e introducido}%
+ {ed.,\addabbrvspace anot\adddotspace e intr\adddotspace}},
+ byeditoranfo = {{editado, anotado y prologado}%
+ {ed.,\addabbrvspace anot\adddotspace y pr\'ol\adddotspace}},
+ byeditoranaf = {{editado, anotado y epilogado}%
+ {ed.,\addabbrvspace anot\adddotspace y ep\'il\adddotspace}},
+ byeditortrcoin = {{editado, traducido \lbx@lfromlang, comentado e introducido}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, com\adddotspace e intr\adddotspace}},
+ byeditortrcofo = {{editado, traducido \lbx@lfromlang, comentado y prologado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, com\adddotspace y pr\'ol\adddotspace}},
+ byeditortrcoaf = {{editado, traducido \lbx@lfromlang, comentado y epilogado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, com\adddotspace y ep\'il\adddotspace}},
+ byeditortranin = {{editado, traducido \lbx@lfromlang, anotado e introducido}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, anot\adddotspace e intr\adddotspace}},
+ byeditortranfo = {{editado, traducido \lbx@lfromlang, anotado y prologado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, anot\adddotspace y pr\'ol\adddotspace}},
+ byeditortranaf = {{editado, traducido \lbx@lfromlang, anotado y epilogado}%
+ {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, anot\adddotspace y ep\'il\adddotspace}},
+ bytranslatorco = {{traducido \lbx@lfromlang\ y comentado}%
+ {trad\adddotspace \lbx@sfromlang\ y com\adddotspace}},
+ bytranslatoran = {{traducido \lbx@lfromlang\ y anotado}%
+ {trad\adddotspace \lbx@sfromlang\ y anot\adddotspace}},
+ bytranslatorin = {{traducido \lbx@lfromlang\ e introducido}%
+ {trad\adddotspace \lbx@sfromlang\ e introd\adddotspace}},
+ bytranslatorfo = {{traducido \lbx@lfromlang\ y prologado}%
+ {trad\adddotspace \lbx@sfromlang\ y pr\'ol\adddotspace}},
+ bytranslatoraf = {{traducido \lbx@lfromlang\ y epilogado}%
+ {trad\adddotspace \lbx@sfromlang\ y ep\'il\adddotspace}},
+ bytranslatorcoin = {{traducido \lbx@lfromlang, comentado e introducido}%
+ {trad\adddotspace \lbx@sfromlang, com\adddotspace e intr\adddotspace}},
+ bytranslatorcofo = {{traducido \lbx@lfromlang, comentado y prologado}%
+ {trad\adddotspace \lbx@sfromlang, com\adddotspace y pr\'ol\adddotspace}},
+ bytranslatorcoaf = {{traducido \lbx@lfromlang, comentado y epilogado}%
+ {trad\adddotspace \lbx@sfromlang, com\adddotspace y ep\'il\adddotspace}},
+ bytranslatoranin = {{traducido \lbx@lfromlang, anotado e introducido}%
+ {trad\adddotspace \lbx@sfromlang, anot\adddotspace e intr\adddotspace}},
+ bytranslatoranfo = {{traducido \lbx@lfromlang, anotado y prologado}%
+ {trad\adddotspace \lbx@sfromlang, anot\adddotspace y pr\'ol\adddotspace}},
+ bytranslatoranaf = {{traducido \lbx@lfromlang, anotado y epilogado}%
+ {trad\adddotspace \lbx@sfromlang, anot\adddotspace y ep\'il\adddotspace}},
+% \end{macrocode}
+%
+% The roles expressed as objects and terms for supplementary material
+% are not abbreviated.
+%
+% \begin{macrocode}
+ withcommentator = {{con comentario de}{con comentario de}},
+ withannotator = {{con notas de}{con notas de}},
+ withintroduction = {{con introduci\'on de}{con introduci\'on de}},
+ withforeword = {{con pr\'ologo de}{con pr\'ologo de}},
+ withafterword = {{con ep\'ilogo de}{con ep\'ilogo de}},
+ introduction = {{introduci\'on}{introduci\'on}},
+% \end{macrocode}
+%
+% The abbreviations for some publication details are different.
+%
+% \begin{macrocode}
+ newseries = {{nueva \'epoca}{\mkbibacro{N\'E}}},
+ oldseries = {{antigua \'epoca}{\mkbibacro{A\'E}}},
+ edition = {{edici\'on}{edn\adddot}},
+ reprintfrom = {{de}{de}},
+ translationas = {{traducido espa\~nol como}{trad\adddotspace espa\~nol como}},
+ origpubin = {{publicado originalmente en}{pub\adddot orig\adddotspace}},
+% \end{macrocode}
+%
+% \emph{New Hart's Rules} uses \enquote{accessed} for URL dates.
+%
+% \begin{macrocode}
+ urlseen = {{accessed}{accessed}},
+% \end{macrocode}
+%
+% Oxford style is to use \enquote{henceforth}
+% for shorthands and \enquote{at} to cite a page within a range.
+%
+% \begin{macrocode}
+ citedas = {{henceforth}{henceforth}},
+ thiscite = {{at}{at}},
+% \end{macrocode}
+%
+% Languages are abbreviated.
+%
+% \begin{macrocode}
+ langamerican = {{ingl\'es americano}{ingl\'es americano}},
+ langbrazilian = {{brasile\~no}{brasile\~no}},
+ langbulgarian = {{b\'ulgaro}{b\'ulgaro}},
+ langcatalan = {{catal\'an}{catal\'an}},
+ langcroatian = {{croata}{croata}},
+ langczech = {{checo}{checo}},
+ langdanish = {{dan\'es}{dan\'es}},
+ langdutch = {{neerland\'es}{neerland\'es}},
+ langenglish = {{ingl\'es}{ingl\'es}},
+ langestonian = {{estonio}{estonio}},
+ langfinnish = {{fin\'es}{fin\'es}},
+ langfrench = {{franc\'es}{franc\'es}},
+ langgalician = {{gallego}{gallego}},
+ langgerman = {{alem\'an}{alem\'an}},
+ langgreek = {{griego}{griego}},
+ langhungarian = {{h\'ungaro}{h\'ungaro}},
+ langitalian = {{italiano}{italiano}},
+ langjapanese = {{japon\'es}{japon\'es}},
+ langlatin = {{lat\'in}{lat\'in}},
+ langlatvian = {{lituano}{lituano}},
+ langnorwegian = {{noruego}{noruego}},
+ langpolish = {{polaco}{polaco}},
+ langportuguese = {{portugu\'es}{portugu\'es}},
+ langrussian = {{ruso}{ruso}},
+ langserbian = {{serbio}{serbio}},
+ langslovak = {{eslovaco}{eslovaco}},
+ langslovene = {{esloveno}{esloveno}},
+ langspanish = {{espa\~nol}{espa\~nol}},
+ langswedish = {{sueco}{sueco}},
+ langukrainian = {{ucraniano}{ucraniano}},
+}
+% \end{macrocode}
+%
+% \iffalse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%</es>
+% \fi %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
% \section{Other languages}
%
-% Currently \pkg[biblatex]{oxref} only supports British and American
-% English explicitly, but if there is demand more languages may be
-% added. If you would like to contribute support for your language, a
-% list of the non-standard bibliography strings requiring definition may
-% be found in section~\ref{sec:setup}.
+% Currently \pkg[biblatex]{oxref} only supports English (British and American)
+% and Spanish explicitly, but if there is demand more languages may be added. If
+% you would like to contribute support for your language, a list of the
+% non-standard bibliography strings requiring definition may be found in
+% section~\ref{sec:setup}.
%
% \iffalse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%</us>
%</lbx>
% \fi %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.pdf
index 64d0e7f5de..0511bca7f4 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxyear-doc.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxyear-doc.pdf
index a03712a1aa..b9a60cde4a 100644
--- a/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxyear-doc.pdf
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxyear-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/1.pdf b/macros/latex/contrib/ragged2e/1.pdf
new file mode 100644
index 0000000000..31b149a92c
--- /dev/null
+++ b/macros/latex/contrib/ragged2e/1.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/2.pdf b/macros/latex/contrib/ragged2e/2.pdf
new file mode 100644
index 0000000000..4e5693ff2e
--- /dev/null
+++ b/macros/latex/contrib/ragged2e/2.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/3.pdf b/macros/latex/contrib/ragged2e/3.pdf
new file mode 100644
index 0000000000..803fd880ea
--- /dev/null
+++ b/macros/latex/contrib/ragged2e/3.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/4.pdf b/macros/latex/contrib/ragged2e/4.pdf
new file mode 100644
index 0000000000..0f648af687
--- /dev/null
+++ b/macros/latex/contrib/ragged2e/4.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/6.pdf b/macros/latex/contrib/ragged2e/6.pdf
new file mode 100644
index 0000000000..a511000d16
--- /dev/null
+++ b/macros/latex/contrib/ragged2e/6.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/README.md b/macros/latex/contrib/ragged2e/README.md
index ceeb824e7f..e5ce0f58c4 100644
--- a/macros/latex/contrib/ragged2e/README.md
+++ b/macros/latex/contrib/ragged2e/README.md
@@ -2,7 +2,7 @@
Copyright (C) Martin Schröder, 1996–2019, Marei Peischl (peiTeX) <marei@peitex.de>, 2021–2023
- ragged2e 2023/04/04 v3.5
+ ragged2e 2023/06/22 v3.6
***************************************************************************
@@ -43,5 +43,4 @@ or want to report a suggestion for improvement, please visit
* 3.3 Only modify the alignment when one of the ragged2e commands is active
* 3.4 Bugfix: Remove spurious spaces (Thanks to Enrico Gregorio for reporting)
* 3.5 Bugfix: Resolving performance issues created in v3.3
-
-
+ * 3.6 Bugfix: Remove impact of ragged2e commands/environments on the following parindent. \ No newline at end of file
diff --git a/macros/latex/contrib/ragged2e/ragged2e.dtx b/macros/latex/contrib/ragged2e/ragged2e.dtx
index 00fdf28be9..2bed7f5be5 100644
--- a/macros/latex/contrib/ragged2e/ragged2e.dtx
+++ b/macros/latex/contrib/ragged2e/ragged2e.dtx
@@ -31,7 +31,7 @@
% \iffalse
\NeedsTeXFormat{LaTeX2e}[2021/06/01]
%<package>\ProvidesPackage{ragged2e}
-%<package> [2023/04/04 v3.5 ragged2e Package]
+%<package> [2023/06/22 v3.6 ragged2e Package]
%
%<*driver>
\documentclass[a4paper]{ltxdoc}
@@ -81,7 +81,7 @@
\end{document}
%</driver>
% \fi
-% \CheckSum{527}
+% \CheckSum{532}
%
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -1169,11 +1169,16 @@
% the content structure for tagging.
% \begin{macrocode}
\def\@raggedtwoe@centercrNoindent{%
- \AddToHookNext{para/begin}{\OmitIndent}%
+ \AddToHookNext{para/begin}{%
+ \ifx\@raggedtwoe@everyselectfont\relax\else
+ \OmitIndent
+ \fi
+ }%
\@centercr%
}
% \end{macrocode}
-% \end{macro}
+% \changes{v3.6}{2023/06/00}{Only omit indent if inside a group where a ragged2e command is active}
+% \end{macro}
% \begin{macro}{\@raggedtwoe@gnewline}
% The following definition of a \cs{@gnewline} used by the ragged
% commands was suggested by Markus Kohm:
diff --git a/macros/latex/contrib/ragged2e/ragged2e.pdf b/macros/latex/contrib/ragged2e/ragged2e.pdf
index eb9b619346..083d63d2e3 100644
--- a/macros/latex/contrib/ragged2e/ragged2e.pdf
+++ b/macros/latex/contrib/ragged2e/ragged2e.pdf
Binary files differ
diff --git a/macros/latex/contrib/ragged2e/test.pdf b/macros/latex/contrib/ragged2e/test.pdf
new file mode 100644
index 0000000000..9ba96be616
--- /dev/null
+++ b/macros/latex/contrib/ragged2e/test.pdf
Binary files differ
diff --git a/macros/xetex/latex/exam-zh/CHANGELOG.md b/macros/xetex/latex/exam-zh/CHANGELOG.md
index 384d067eb5..44002138a6 100644
--- a/macros/xetex/latex/exam-zh/CHANGELOG.md
+++ b/macros/xetex/latex/exam-zh/CHANGELOG.md
@@ -5,8 +5,16 @@
格式参照 [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
并且此项目遵守 [Semantic Versioning](https://semver.org/spec/v2.0.0.html)。
+## [0.1.26] - 2023-06-22
-## [0.1.25] - 2023-06-01
+
+### Fixed
+
+- 修复 `choices` 环境的 `columns` 失效问题(#I7FBVF)
+
+
+
+## [0.1.25] - 2023-05-25
### Changed
diff --git a/macros/xetex/latex/exam-zh/doc/exam-zh-doc.pdf b/macros/xetex/latex/exam-zh/doc/exam-zh-doc.pdf
index 2ae39ae7a5..77c9d82abf 100644
--- a/macros/xetex/latex/exam-zh/doc/exam-zh-doc.pdf
+++ b/macros/xetex/latex/exam-zh/doc/exam-zh-doc.pdf
Binary files differ
diff --git a/macros/xetex/latex/exam-zh/doc/exam-zh-doc.tex b/macros/xetex/latex/exam-zh/doc/exam-zh-doc.tex
index 8a5b804084..ad247296c1 100644
--- a/macros/xetex/latex/exam-zh/doc/exam-zh-doc.tex
+++ b/macros/xetex/latex/exam-zh/doc/exam-zh-doc.tex
@@ -1,7 +1,7 @@
\documentclass{xdyydoc}
\newcommand{\DocDate}{2022-10-4}
-\newcommand{\DocVersion}{v0.1.25}
+\newcommand{\DocVersion}{v0.1.26}
\input{exam-zh-doc-setup.tex}
\usepackage{amssymb}
diff --git a/macros/xetex/latex/exam-zh/examples/example-multiple.pdf b/macros/xetex/latex/exam-zh/examples/example-multiple.pdf
index 967799ad5f..76abecf4e9 100644
--- a/macros/xetex/latex/exam-zh/examples/example-multiple.pdf
+++ b/macros/xetex/latex/exam-zh/examples/example-multiple.pdf
Binary files differ
diff --git a/macros/xetex/latex/exam-zh/examples/example-single.pdf b/macros/xetex/latex/exam-zh/examples/example-single.pdf
index dd0226e183..69f8591c5e 100644
--- a/macros/xetex/latex/exam-zh/examples/example-single.pdf
+++ b/macros/xetex/latex/exam-zh/examples/example-single.pdf
Binary files differ
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh-chinese-english.sty b/macros/xetex/latex/exam-zh/tex/exam-zh-chinese-english.sty
index 2e84afa5c6..e905af6f5a 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh-chinese-english.sty
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh-chinese-english.sty
@@ -8,7 +8,7 @@
\RequirePackage{expl3}
-\ProvidesExplPackage {exam-zh-chinese-english} {2023-06-01} {v0.1.25}
+\ProvidesExplPackage {exam-zh-chinese-english} {2023-06-22} {v0.1.26}
{exam-zh chinese and english module}
\PassOptionsToPackage { tcolorbox } { most }
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh-choices.sty b/macros/xetex/latex/exam-zh/tex/exam-zh-choices.sty
index f564fdff66..57e8dd4ef2 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh-choices.sty
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh-choices.sty
@@ -9,7 +9,7 @@
\RequirePackage{expl3}
\RequirePackage{xparse}
-\ProvidesExplPackage {exam-zh-choices} {2023-06-01} {v0.1.25}
+\ProvidesExplPackage {exam-zh-choices} {2023-06-22} {v0.1.26}
{exam-zh choices module}
\dim_new:N \l__examzh_choices_column_sep_dim
@@ -124,12 +124,14 @@
% 用户没有输入的话就采用自动计算列数
\int_compare:nNnT { \l__examzh_choices_columns_int } < {1}
{ \__examzh_choices_calc_columns: }
+ % 解决 columns 无效的问题
+ \keys_set:nn { exam-zh / choices } {#1}
% 计算每个选项内容的宽度 \l__examzh_choices_item_width_dim
\__examzh_choices_calc_item_width:
% 输出选项
\__examzh_print_choices:N \l__examzh_choices_seq
% 输出正确选项
- \__examzh_print_correctchoice:
+ % \__examzh_print_correctchoice:
\vspace* { \l__examzh_choices_bottom_sep_skip }
}
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh-font.sty b/macros/xetex/latex/exam-zh/tex/exam-zh-font.sty
index 71320f5305..91257434b7 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh-font.sty
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh-font.sty
@@ -9,7 +9,7 @@
\RequirePackage{expl3}
\RequirePackage{xparse}
-\ProvidesExplPackage {exam-zh-font} {2023-06-01} {v0.1.25}
+\ProvidesExplPackage {exam-zh-font} {2023-06-22} {v0.1.26}
{exam-zh font module}
\RequirePackage { unicode-math }
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh-question.sty b/macros/xetex/latex/exam-zh/tex/exam-zh-question.sty
index 40dde06024..4cb1c943fa 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh-question.sty
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh-question.sty
@@ -9,7 +9,7 @@
\RequirePackage{expl3}
\RequirePackage{xparse}
-\ProvidesExplPackage {exam-zh-question} {2023-06-01} {v0.1.25}
+\ProvidesExplPackage {exam-zh-question} {2023-06-22} {v0.1.26}
{exam-zh question module}
@@ -1612,12 +1612,14 @@
{
% \addvspace { \l__examzh_solution_top_sep_skip }
\keys_set:nn { exam-zh / solution } {#1}
- \vspace { \l__examzh_solution_top_sep_skip }
% 放在这是使得 \examsetup 设置 qedsymbol 可以放在正文区
\cs_set_eq:NN \qedsymbol \l__examzh_solution_qedsymbol_tl
\bool_if:NTF \l__examzh_solution_show_bool
{
+ \vspace { \l__examzh_solution_top_sep_skip }
\__examzh_solution_print_answer:n {#2}
+ \par
+ \vspace { \l__examzh_solution_bottom_sep_skip }
}
{
\str_case:VnF \l__examzh_solution_blank_type_str
@@ -1631,7 +1633,6 @@
\par
% \mode_leave_vertical:
% \addvspace { \l__examzh_solution_bottom_sep_skip }
- \vspace { \l__examzh_solution_bottom_sep_skip }
}
{}
\cs_new:Npn \__examzh_solution_simply_hide_solution:n #1
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh-symbols.sty b/macros/xetex/latex/exam-zh/tex/exam-zh-symbols.sty
index 4997a0d292..0ac2e1db4a 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh-symbols.sty
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh-symbols.sty
@@ -8,7 +8,7 @@
\RequirePackage{expl3}
-\ProvidesExplPackage {exam-zh-symbols} {2023-06-01} {v0.1.25}
+\ProvidesExplPackage {exam-zh-symbols} {2023-06-22} {v0.1.26}
{exam-zh symbols module}
\RequirePackage { tikz }
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh-textfigure.sty b/macros/xetex/latex/exam-zh/tex/exam-zh-textfigure.sty
index ccefefae71..5b21d1e2d3 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh-textfigure.sty
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh-textfigure.sty
@@ -7,7 +7,7 @@
\RequirePackage{expl3}
-\ProvidesExplPackage {exam-zh-textfigure} {2023-06-01} {v0.1.25}
+\ProvidesExplPackage {exam-zh-textfigure} {2023-06-22} {v0.1.26}
{exam-zh text with figure module}
diff --git a/macros/xetex/latex/exam-zh/tex/exam-zh.cls b/macros/xetex/latex/exam-zh/tex/exam-zh.cls
index 2959abe67f..818feeceb9 100644
--- a/macros/xetex/latex/exam-zh/tex/exam-zh.cls
+++ b/macros/xetex/latex/exam-zh/tex/exam-zh.cls
@@ -6,7 +6,7 @@
\NeedsTeXFormat{LaTeX2e}[2017/04/15]
\RequirePackage{expl3}
-\ProvidesExplClass {exam-zh} {2023-06-01} {v0.1.25} {LaTeX template for Chinese exam}
+\ProvidesExplClass {exam-zh} {2023-06-22} {v0.1.26} {LaTeX template for Chinese exam}
% 检查 LaTeX2e kernel 版本
\msg_new:nnn { exam-zh } { latex-too-old }
@@ -661,7 +661,7 @@
}
% 科目
-\tl_new:N \l__exam_zh_subject_tl
+\tl_new:N \l__examzh_subject_tl
\NewDocumentCommand \subject { o m }
{
\IfNoValueTF {#1}
@@ -669,14 +669,14 @@
% 默认使用自然宽度
\hbox_set:Nn \l_tmpa_box {#2}
\dim_set:Nn \l_tmpa_dim { \box_wd:N \l_tmpa_box * 2 }
- \tl_set:Nn \l__exam_zh_subject_tl
+ \tl_set:Nn \l__examzh_subject_tl
{
\__examzh_spread_box:nn { \l_tmpa_dim } {#2}
}
}
{
% 手动调整宽度
- \tl_set:Nn \l__exam_zh_subject_tl
+ \tl_set:Nn \l__examzh_subject_tl
{
\__examzh_spread_box:nn {#1} {#2}
}
@@ -691,10 +691,10 @@
\begin { center }
\let \footnote \thanks
{ \l__examzh_title_format_tl \@title \par }
- \tl_if_blank:VF \l__exam_zh_subject_tl
+ \tl_if_blank:VF \l__examzh_subject_tl
{
\addvspace { 1em }
- { \l__examzh_subject_format_tl \l__exam_zh_subject_tl }
+ { \l__examzh_subject_format_tl \l__examzh_subject_tl }
}
\end { center }
\par
@@ -1805,7 +1805,7 @@
{
\small
\use:c { __examzh_foot_content_a4paper_output: }
- % \l__exam_zh_subject_tl 试题第 \thepage { } 页(共 \pageref { LastPage } ~ 页)
+ % \l__examzh_subject_tl 试题第 \thepage { } 页(共 \pageref { LastPage } ~ 页)
}
}
}
@@ -1820,7 +1820,7 @@
\fancyfoot [ C ]
{
\small
- % \l__exam_zh_subject_tl 试题第 \thepage { } 页(共 \pageref { LastPage } ~ 页)
+ % \l__examzh_subject_tl 试题第 \thepage { } 页(共 \pageref { LastPage } ~ 页)
\use:c { __examzh_foot_content_a3paper_common_output: }
}
}
@@ -1832,7 +1832,7 @@
{
\small
\use:c { __examzh_foot_content_a3paper_separate_left_output: }
- % \l__exam_zh_subject_tl 试题第
+ % \l__examzh_subject_tl 试题第
% % \thepage
% \int_eval:n { 2 * \c@page - 1 }
% { } 页
@@ -1852,7 +1852,7 @@
% % \int_gincr:N \c@page
% \int_set:Nn \l__examzh_tmp_int { \lastpage@lastpage }
- % \l__exam_zh_subject_tl 试题第
+ % \l__examzh_subject_tl 试题第
% \int_eval:n { 2 * \c@page }
% { }
% 页