diff options
author | Karl Berry <karl@freefriends.org> | 2022-12-28 22:30:37 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-12-28 22:30:37 +0000 |
commit | 341d7a88d5dc07b04e7b4dce6600f152a9a61110 (patch) | |
tree | 8a82c828d81ad4c34806716d83152d098ea33b2a /Master/texmf-dist | |
parent | ec7c9cb91431be7925942ebb2b788b63c22ed7bf (diff) |
zref-clever (28dec22)
git-svn-id: svn://tug.org/texlive/trunk@65387 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/doc/latex/zref-clever/CHANGELOG.md | 16 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/zref-clever/zref-clever-code.pdf | bin | 1258005 -> 1283227 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/zref-clever/zref-clever.pdf | bin | 316250 -> 322543 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/zref-clever/zref-clever.tex | 166 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/zref-clever/zref-clever.dtx | 556 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/zref-clever/zref-clever.ins | 1 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/zref-clever/zref-clever-dutch.lang | 30 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/zref-clever/zref-clever-italian.lang | 275 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty | 58 |
9 files changed, 963 insertions, 139 deletions
diff --git a/Master/texmf-dist/doc/latex/zref-clever/CHANGELOG.md b/Master/texmf-dist/doc/latex/zref-clever/CHANGELOG.md index ae677ca3118..a11671dfedb 100644 --- a/Master/texmf-dist/doc/latex/zref-clever/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/zref-clever/CHANGELOG.md @@ -1,6 +1,20 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.3.1...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.3.2...HEAD) + +## [v0.3.2](https://github.com/gusbrs/zref-clever/compare/v0.3.1...v0.3.2) (2022-12-27) + +### Added +- Italian localization (see issue + [#11](https://github.com/gusbrs/zref-clever/issues/11)). +- Localization guidelines for contributors (in the Code documentation). +- Document UTF-8 input encoding requirement. +- Work-around for `beamer` in the User manual. + +### Changed +- Improved consistency of the Dutch language file with `babel` captions (see + PRs [#12](https://github.com/gusbrs/zref-clever/pull/12) and + [#13](https://github.com/gusbrs/zref-clever/pull/13)). ## [v0.3.1](https://github.com/gusbrs/zref-clever/compare/v0.3.0...v0.3.1) (2022-05-28) diff --git a/Master/texmf-dist/doc/latex/zref-clever/zref-clever-code.pdf b/Master/texmf-dist/doc/latex/zref-clever/zref-clever-code.pdf Binary files differindex ae52fa41e22..8b4cad12804 100644 --- a/Master/texmf-dist/doc/latex/zref-clever/zref-clever-code.pdf +++ b/Master/texmf-dist/doc/latex/zref-clever/zref-clever-code.pdf diff --git a/Master/texmf-dist/doc/latex/zref-clever/zref-clever.pdf b/Master/texmf-dist/doc/latex/zref-clever/zref-clever.pdf Binary files differindex 5a6aadba29c..3f975f70c9b 100644 --- a/Master/texmf-dist/doc/latex/zref-clever/zref-clever.pdf +++ b/Master/texmf-dist/doc/latex/zref-clever/zref-clever.pdf diff --git a/Master/texmf-dist/doc/latex/zref-clever/zref-clever.tex b/Master/texmf-dist/doc/latex/zref-clever/zref-clever.tex index 2ebf1b67395..ac477475290 100644 --- a/Master/texmf-dist/doc/latex/zref-clever/zref-clever.tex +++ b/Master/texmf-dist/doc/latex/zref-clever/zref-clever.tex @@ -64,6 +64,10 @@ \NewDocumentCommand\opt{m}{\texttt{#1}} +\NewDocumentCommand\username{m}{`\texttt{#1}'} + +\setlength{\marginparsep}{2\labelsep} + \definecolor{reffmtbox}{gray}{0.15} \definecolor{reffmtback}{gray}{0.85} \NewDocumentCommand\reffmt{m}{% @@ -96,6 +100,17 @@ text, lstset, condition, + RenewDocumentCommand, + NewCommandCopy, + ltx@gobble, + zref@label, + zref@wrapper@babel, + zref@ifpropundefined, + zref@setcurrent, + beamer@old@zref@label, + alt, + beamer@nameslide, + beamer@dummynameslide, } } \lstdefinestyle{zrefclever}{ @@ -380,6 +395,12 @@ available at \zcref{sec:how-tos}. The package does not accept load-time options, package options must be set using \cs{zcsetup} (see \zcref{sec:user-interface}). +\pkg{zref-clever} requires a recent \LaTeX{} kernel (2021-11-15 or newer) and +the packages \pkg{zref}, including some of its modules, and \pkg{ifdraft}. It +also requires UTF-8 input encoding, which has been the kernel's default for +some time. + + \section{Dependencies} \pkg{zref-clever} requires \pkg{zref}, and \LaTeX{} kernel 2021-11-15, or @@ -774,10 +795,7 @@ appearance of the whole reference list (see also the \opt{namefont} and does not affect the content of the \opt{note}, however. The option is intended exclusively for commands that only change font attributes: style, family, shape, weight, size, color, etc. Anything else, particularly commands -that may generate typeset output, is not supported. Given how package options -are handled by \LaTeX{}, the fact that this option receives commands as value -means this option \emph{can't} be set at load time, as a package option. If -you want to set it globally, use \cs{zcsetup} instead. +that may generate typeset output, is not supported. \DescribeOption{note} % The \opt{note} option receives as value some text to be typeset at the end of @@ -1246,8 +1264,8 @@ ones, and ``\texttt{last}'' to the last reference of the type-block. Less obviously, but hopefully still mnemonic enough, ``\texttt{sg}'' stands for ``single'', ``\texttt{pb}'' and ``\texttt{pe}'' for ``pair begin'' and ``pair end'', and finally ``\texttt{rb}'' and ``\texttt{re}'' for ``range begin'' and -``range end''. Each of them which receives as value a comma separated list of -four items in the form \texttt{\{preref*,preref,postref,postref*\}}, just like +``range end''. Each of them receives as value a comma separated list of four +items in the form \texttt{\{preref*,preref,postref,postref*\}}, just like \opt{refbounds}. The base options are mutually exclusive, which means, for example, that it is @@ -1258,13 +1276,12 @@ beginning of a range. Setting a group of them is the purpose of the derived options. Each of these sets all options under it. Some examples. \opt{+refbounds-first} sets \opt{refbounds-first}, \opt{refbounds-first-sg}, \opt{refbounds-first-pb}, and \opt{refbounds-first-rg}. In turn, -\opt{+refbounds-first-rb} sets \opt{refbounds-first-rb} and -\opt{refbounds-first-rb}. And quite conveniently, \opt{+refbounds} sets -\opt{+refbounds-first}, \opt{+refbounds-mid}, and \opt{+refbounds-last}, it is -hence sufficient to set it to define the behavior of what is typeset around -all references for the whole type-block. As you probably guessed by now, the -\opt{refbounds} option presented in \zcref{tab:reference-format} is an alias -of \opt{+refbounds}. +\opt{+refbounds-rb} sets \opt{refbounds-first-rb} and \opt{refbounds-mid-rb}. +And quite conveniently, \opt{+refbounds} sets \opt{+refbounds-first}, +\opt{+refbounds-mid}, and \opt{+refbounds-last}, it is hence sufficient to set +it to define the behavior of what is typeset around all references for the +whole type-block. As you probably guessed by now, the \opt{refbounds} option +presented in \zcref{tab:reference-format} is an alias of \opt{+refbounds}. Given that base and derived options are actually setting the same group of underlying options (the base ones), the order in which they are given is @@ -1318,6 +1335,7 @@ indeed required, without users having to worry about it at all. \toprule Language & Aliases \\ \midrule + dutch & \\ english & american \\ & australian \\ & british \\ @@ -1326,9 +1344,7 @@ indeed required, without users having to worry about it at all. & UKenglish \\ & USenglish \\ french & acadian \\ - & canadien \\ - & francais \\ - & frenchb \\ + & \\ \bottomrule \end{tabular} \quad @@ -1336,17 +1352,16 @@ indeed required, without users having to worry about it at all. \toprule Language & Aliases \\ \midrule - german & austrian \\ - & germanb \\ - & ngerman \\ + german & ngerman \\ + & austrian \\ & naustrian \\ - & nswissgerman \\ & swissgerman \\ + & nswissgerman \\ + italian & \\ portuguese & brazilian \\ & brazil \\ & portuges \\ spanish & \\ - dutch & \\ \bottomrule \end{tabular} \caption{Declared languages and aliases} @@ -1395,12 +1410,13 @@ in effect for the languages declared by \pkg{zref-clever}. \toprule Language & declension & gender & allcaps \\ \midrule + dutch & -- & f,m,n & -- \\ english & -- & -- & -- \\ french & -- & f,m & -- \\ german & N,A,D,G & f,m,n & yes \\ + italian & -- & f,m & -- \\ portuguese & -- & f,m & -- \\ spanish & -- & f,m & -- \\ - dutch & -- & f,m,n & -- \\ \bottomrule \end{tabular} \caption{Options for declared languages} @@ -2315,6 +2331,99 @@ Of course, you can always adapt things to your needs and, e.g., make the separate \opt{zlabel} option. +\subsection*{\cls{beamer}} + +\cls{beamer} does some really atypical things with regard to cross-references. +To start with, it redefines \cs{label} to receive an optional +\texttt{<\meta{overlay specification}>} argument. Then, presumably to support +overlays, it goes on and hijacks \pkg{hyperref}'s anchoring system, sets +anchors (\cs{hypertarget}s) to each \emph{label} in the \file{.snm} file, +while letting every standard label's anchor in the \file{.aux} file default to +\texttt{Doc-Start}. Of course, having rendered useless \pkg{hyperref}'s +anchoring, it has to redefine \cs{ref} so that it uses its own \file{.snm} +provided ``label anchors'' to make hyperlinks. In particular, from our +perspective, there is no support at all for \pkg{zref} provided by +\cls{beamer}. Which is specially unfortunate since the above procedures also +appear to break \pkg{cleveref}.\footnote{See, for example, + \url{https://tex.stackexchange.com/q/266080}, + \url{https://tex.stackexchange.com/q/668998}, and + \url{https://github.com/josephwright/beamer/issues/750}. The workaround + provided at \url{https://tex.stackexchange.com/a/266109} is not general + enough since it breaks \pkg{cleveref}'s ability to receive a list of labels + as argument.} + +Adding proper support for this is the business of \cls{beamer}, \pkg{zref}, +and/or \pkg{hyperref}. Likely the former's really. But, taking advantage of +\pkg{zref}'s flexibility, as an user, you can have a work-around in the +meantime. + +\begin{zcworkaround}[caption={\cls{beamer}}] +\documentclass{beamer} +\usepackage{zref-clever} +\makeatletter +\RenewDocumentCommand{\zlabel}{ D<>{1} m }{% + \ifx\label\ltx@gobble + \else + \zref@wrapper@babel{\zref@label<#1>}{#2}% + \fi +} +\NewCommandCopy\beamer@old@zref@label\zref@label +\RenewDocumentCommand{\zref@label}{ D<>{1} m }{% + \alt<#1>{% + \zref@ifpropundefined{anchor}{}{\zref@setcurrent{anchor}{#2}}% + \beamer@old@zref@label{#2}% + \beamer@nameslide{#2}% + }{% + \beamer@dummynameslide% + }% +} +\makeatother +\begin{document} +\begin{frame} + \begin{table} + \begin{tabular}{cc} + 1 & 2 \\ + 3 & 4 \\ + \end{tabular} + \caption{Table 1} + \zlabel{tab:1} + \end{table} +\end{frame} +\begin{frame} + \begin{figure} + \rule{5cm}{5cm} + \caption{Figure 1} + \zlabel{fig:1} + \end{figure} +\end{frame} +\begin{frame} + \zcref{tab:1,fig:1} +\end{frame} +\end{document} +\end{zcworkaround} + +This work-around redefines \cs{zlabel} so that it takes an overlay +specification argument, and provides that the work done by \cls{beamer} for +the standard \cs{label} is also done for it. And it works by setting the +\texttt{anchor} to the \emph{label} so as to be able to speak the +``\cls{beamer}-lingo'' of anchors. + +A couple of caveats though. First, there's probably still some work to be +done there in defining and setting reference types for \cls{beamer} specific +document objects, e.g. overlays. But it can be done by the standard user +interface of \pkg{zref-clever}. Second, since \cls{beamer}'s anchoring system +does not provide for uniqueness of anchors as \pkg{hyperref} does, the +procedure used by \pkg{zref-clever} in its \opt{amsmath} compatibility module +of setting both \cs{label} and \cs{zlabel} in \pkg{amsmath}'s display math +environments will result in duplicate anchors for labels set in them, with +corresponding \pkg{hyperref} warnings of ``destination with the same +identifier has been already used, duplicate ignored''. The warning is +actually harmless in this case, since both labels are set in the same place, +and thus have identical anchors. But, if it bothers you enough, you can look +at the \opt{amsmath} compatibility module in the code documentation, and +adjust things so that it sets only a \cs{zlabel}. + + \section{Acknowledgments} \pkg{zref-clever} would not be possible without other people's previous work @@ -2374,9 +2483,11 @@ were generously provided by (in chronological order): % 2021-10-10: https://tex.stackexchange.com/questions/618434/#comment1544401_618439 % 2022-01-12: https://chat.stackexchange.com/transcript/message/60129096#60129096 % and following discussion. + % 2022-12-26: https://chat.stackexchange.com/transcript/message/62644791#62644791 + % and following discussion. Frank Mittelbach, % 2021-10-14: https://github.com/latex3/latex2e/issues/687 - `\texttt{samcarter}', + \username{samcarter}, % 2021-10-14: https://chat.stackexchange.com/transcript/message/59361777#59361777 % 2021-10-21: https://chat.stackexchange.com/transcript/message/59418309#59418309 Alan Munn, @@ -2391,17 +2502,20 @@ were generously provided by (in chronological order): % 2021-11-26: https://github.com/latex3/l3build/issues/215 Jürgen Spitzmüller, % 2021-11-28: https://github.com/gusbrs/zref-clever/issues/2 - and `\texttt{niluxv}'. + and \username{niluxv}. % 2022-01-05: https://github.com/gusbrs/zref-clever/issues/4 - % 2022-01-05: https://github.com/gusbrs/zref-clever/pull/5 The package's language files have been provided or improved thanks to: Denis Bitouzé (French), % 2021-11-25: https://github.com/gusbrs/zref-clever/issues/1 François Lagarde (French), % 'flagarde' % 2021-12-09: discussion at https://github.com/gusbrs/zref-clever/issues/1 - and `\texttt{niluxv}' (Dutch). + \username{niluxv} (Dutch), % 2022-01-09: https://github.com/gusbrs/zref-clever/pull/5 + % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/12 + % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/13 + and Matteo Ferrigato (Italian). % 'matteo339' + % 2022-12-12: https://github.com/gusbrs/zref-clever/issues/11 If I have inadvertently left anyone off the list I apologize, and please let me know, so that I can correct the oversight. diff --git a/Master/texmf-dist/source/latex/zref-clever/zref-clever.dtx b/Master/texmf-dist/source/latex/zref-clever/zref-clever.dtx index e0d04a1264c..8604bd5c391 100644 --- a/Master/texmf-dist/source/latex/zref-clever/zref-clever.dtx +++ b/Master/texmf-dist/source/latex/zref-clever/zref-clever.dtx @@ -69,8 +69,8 @@ % \NewDocumentCommand\githubPR{m}{^^A % PR~\href{https://github.com/gusbrs/zref-clever/pull/#1}{\##1}} % -% ^^A Currently just for keeping semantic markup on this. % \NewDocumentCommand\contributor{m}{#1} +% \NewDocumentCommand\username{m}{`\texttt{#1}'} % % \NewDocumentCommand\opt{m}{\texttt{#1}} % @@ -165,15 +165,17 @@ % % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-clever} {2022-05-28} {0.3.1} +\ProvidesExplPackage {zref-clever} {2022-12-27} {0.3.2} {Clever LaTeX cross-references based on zref} % \end{macrocode} % % % \section{Dependencies} % -% Required packages. Besides these, \pkg{zref-hyperref}, \pkg{zref-titleref}, -% and \pkg{zref-check} may also be loaded depending on user options. +% Required packages. Besides these, \pkg{zref-hyperref} may also be loaded +% depending on user options. \pkg{zref-clever} also requires UTF-8 input +% encoding (see discussion with \contributor{David Carlisle} at +% \url{https://chat.stackexchange.com/transcript/message/62644791#62644791}). % % \begin{macrocode} \RequirePackage { zref-base } @@ -3514,7 +3516,7 @@ % polluting the markup too much given that, for languages that need it, it may % get to be used frequently. % -% \contributor{\texttt{@samcarter}} and \contributor{Alan Munn} provided +% \contributor{\username{samcarter}} and \contributor{Alan Munn} provided % useful comments about declension on the TeX.SX chat. Also, % \contributor{Florent Rougon}'s efforts in this area, with the \pkg{xcref} % package (\url{https://github.com/frougon/xcref}), have been an insightful @@ -6862,31 +6864,31 @@ ! \l_@@_link_star_bool } { - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn #2 { 1 } \@@_hyperlink:nnn { \@@_extract_url_unexp:n {#1} } { \@@_extract_unexp:nnn {#1} { anchor } { } } { \seq_item:Nn #2 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \@@_extract_unexp:nvn {#1} { l_@@_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn #2 { 3 } } \seq_item:Nn #2 { 4 } - \exp_not:N \group_end: } { - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn #2 { 1 } \seq_item:Nn #2 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \@@_extract_unexp:nvn {#1} { l_@@_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn #2 { 3 } \seq_item:Nn #2 { 4 } - \exp_not:N \group_end: } } { \@@_ref_default: } @@ -6911,29 +6913,29 @@ ! \l_@@_link_star_bool } { - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn #3 { 1 } \@@_hyperlink:nnn { \@@_extract_url_unexp:n {#1} } { \@@_extract_unexp:nnn {#1} { anchor } { } } { \seq_item:Nn #3 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \exp_not:n {#2} + \exp_not:N \group_end: \seq_item:Nn #3 { 3 } } \seq_item:Nn #3 { 4 } - \exp_not:N \group_end: } { - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn #3 { 1 } \seq_item:Nn #3 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \exp_not:n {#2} + \exp_not:N \group_end: \seq_item:Nn #3 { 3 } \seq_item:Nn #3 { 4 } - \exp_not:N \group_end: } } } @@ -6963,7 +6965,6 @@ { \l_@@_type_first_label_tl } { \l_@@_ref_property_tl } { - \exp_not:N \group_begin: \@@_hyperlink:nnn { \@@_extract_url_unexp:V @@ -6979,19 +6980,17 @@ \exp_not:V \l_@@_type_name_tl \exp_not:N \group_end: \exp_not:V \l_@@_namesep_tl - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn \l_@@_type_first_refbounds_seq { 1 } \seq_item:Nn \l_@@_type_first_refbounds_seq { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \@@_extract_unexp:Vvn \l_@@_type_first_label_tl { l_@@_ref_property_tl } { } - \seq_item:Nn \l_@@_type_first_refbounds_seq { 3 } \exp_not:N \group_end: + \seq_item:Nn \l_@@_type_first_refbounds_seq { 3 } } - \exp_not:V \l_@@_reffont_tl \seq_item:Nn \l_@@_type_first_refbounds_seq { 4 } - \exp_not:N \group_end: } { \exp_not:N \group_begin: @@ -7026,8 +7025,6 @@ ! \l_@@_link_star_bool } { - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn \l_@@_type_first_refbounds_seq { 1 } \@@_hyperlink:nnn @@ -7042,27 +7039,29 @@ { \seq_item:Nn \l_@@_type_first_refbounds_seq { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \@@_extract_unexp:Vvn \l_@@_type_first_label_tl { l_@@_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn \l_@@_type_first_refbounds_seq { 3 } } \seq_item:Nn \l_@@_type_first_refbounds_seq { 4 } - \exp_not:N \group_end: } { - \exp_not:N \group_begin: - \exp_not:V \l_@@_reffont_tl \seq_item:Nn \l_@@_type_first_refbounds_seq { 1 } \seq_item:Nn \l_@@_type_first_refbounds_seq { 2 } + \exp_not:N \group_begin: + \exp_not:V \l_@@_reffont_tl \@@_extract_unexp:Vvn \l_@@_type_first_label_tl { l_@@_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn \l_@@_type_first_refbounds_seq { 3 } \seq_item:Nn \l_@@_type_first_refbounds_seq { 4 } - \exp_not:N \group_end: } } { \@@_ref_default: } @@ -8098,12 +8097,6 @@ { \zref@localaddprop \ZREF@mainlist { subeq } } } } -% \end{macrocode} -% And a last touch of care for \pkg{amsmath}'s refinements: make the equation -% references \cs{textup}. -% \begin{macrocode} - \zcRefTypeSetup { equation } - { reffont = \upshape } \msg_info:nnn { zref-clever } { compat-package } { amsmath } } } @@ -8410,6 +8403,174 @@ % \pkg{translations}. % % +% \subsection{Localization guidelines} +% +% Since the task of localizing \pkg{zref-clever} to work in different +% languages depends on the generous work of contributors, it is a good idea to +% set some guidelines not only to ease the task itself but also to document +% what the package expects in this regard. +% +% The first general observation is that, contrary to a common initial reaction +% of those faced with the task of localizing the reference types, is that the +% job is not quite one of ``translation''. The reference type names are just +% the internal names used by the package to refer to them, technically, they +% could just as well be foobars. Of course, for practical reasons, they were +% chosen to be semantic. However, what we are searching for is not really the +% translation to the reference type name itself, but rather for the word / +% term / expression which is typically used to refer to the document object +% that the reference type is meant to represent. And terms that should work +% well in the contexts which cross-references are commonly used. +% +% That said, some comments about the reference types and common pitfalls. +% +% \textbf{Sectioning:} A number of reference types are provided to support +% referencing to document sectioning commands. Obviously, \texttt{part}, +% \texttt{chapter}, \texttt{section}, and \texttt{paragraph} are meant to +% refer to the sectioning commands of the standard classes and elsewhere, +% which anyone reading this is certainly acquainted with. Note that +% \pkg{zref-clever} uses -- by default at least, which is what the language +% files cater for -- the \texttt{section} reference type to refer to +% \cs{subsections} and \cs{subsubsections} as well, similarly, +% \texttt{paragraph} also refers to \cs{subparagraph}. The \texttt{appendix} +% reference type is meant to refer to any sectioning command -- be them +% chapters, sections, or paragraphs -- issued after \cs{appendix}, which +% corresponds to how the standard classes, the KOMA Script classes, and +% \cls{memoir} deal with appendices. The \texttt{book} reference type +% deserves some explanation. The word ``book'' has a good number of meanings, +% and the most common one is not the one which is intended here. The Webster +% dictionary gives us a couple of definitions of interest: ``1. A collection +% of sheets of paper, or similar material, blank, written, or printed, bound +% together; commonly, many folded and bound sheets containing continuous +% printing or writing.'' and ``3. A part or subdivision of a treatise or +% literary work; as, the tenth book of `Paradise Lost'.'' It is this third +% meaning which the \texttt{book} reference type is meant to support: a major +% subdivision of a work, much like \cs{part}. Even if it does not exist in +% the standard classes, it may exist elsewhere, in particular, it is provided +% by \cls{memoir}. +% +% \textbf{Common numbered objects:} Nothing surprising here, just being +% explicit. \texttt{table} and \texttt{figure} refer to the document's +% respective floats objects. \texttt{page} to the page number. \texttt{item} +% to the item number in \env{enumerate} environments. Similarly, +% \texttt{line} is meant to refer to line numbers. +% +% \textbf{Notes:} \pkg{zref-clever} provides three reference types in this +% area: \texttt{footnote}, \texttt{endnote}, and \texttt{note}. The first two +% refer to footnotes and end notes, respectively. The third is meant as a +% convenience for a general ``note'' object, either the other two, or +% something else. By experience, here is one place where that initial +% observation of not simply translating the reference types names is +% particularly relevant. There's a natural temptation, because three +% different types exist and are somewhat close to each other, to distinguish +% them clearly. Duty would compel us to do so. But that may lead to less +% than ideal results. Different terms work well for some languages, like +% English and German, which have compound words for the purpose. But less so +% for other languages, like Portuguese, French, or Italian. For example, in a +% document in French which only contains footnotes, arguably a very common use +% case, would it be better to refer to a footnote as just ``note'', or be very +% precise with ``note infrapaginale''? Of course, in a document which +% contains both footnotes and end notes, we may need the distinction. But is +% it really the better default? True, possibly the inclusion of the +% \texttt{note} reference type, with no clear object to refer to, creates more +% noise than convenience here. If I recall correctly, my intention was to +% provide an easy way out for users from possible contentious localizations +% for \texttt{footnote} and \texttt{endnote}, but I'm not sure if it's been +% working like this in practice, and I should probably have refrained from +% adding it in the first place. +% +% \textbf{Math \& Co.:} A good number of reference types provided by the +% package are meant to cater for document objects commonly used in Mathematics +% and related areas. They are either straight math environments, defined by +% the kernel, \pkg{amsmath} or other packages, or environments which are +% normally not pre-defined by the kernel or the standard classes, but are +% traditionally defined by users with the kernel's \cs{newtheorem} or similar +% constructs available in the \LaTeX{} package ecosystem. For most of them, +% localization should strive as much as possible to use the formal terms, +% jargon really, typically employed by mathematicians, logicians, and friends. +% Namely for the reference types: \texttt{equation}, \texttt{theorem}, +% \texttt{lemma}, \texttt{corollary}, \texttt{proposition}, +% \texttt{definition}, \texttt{proof}, \texttt{result}, and \texttt{remark}. +% Regarding \texttt{example}, \texttt{exercise}, and \texttt{solution} being +% somewhat less formal is admissible. But the chosen terms should still be +% fit for use in Math related contexts, and should be assumed were created by +% \cs{newtheorem} or similar, even if users may well find other uses for these +% types. +% +% \textbf{Code:} A couple of reference types are provided for code related +% environments: \texttt{algorithm} and \texttt{listing}. By experience, the +% \texttt{listing} type has already proven to be a particularly challenging +% one. Formally, it should be a good default term to encompass anything which +% may regularly be included in a \env{lstlisting} environment as provided by +% the \pkg{listings} package. However, it seems that in different languages +% it is quite difficult to find a satisfying term for it. Though my English +% is decent, I'm not a native speaker, still I'm not even sure how common the +% term is used for the purpose even in English. It seems to be traditional +% enough in the \LaTeX{} community at least. In doubt, pend to the jargon +% side, anglicism if need be. Since we are bound to displease mostly everyone +% anyway, at least we do so in a consistent manner. +% +% \textbf{Completeness and abbreviated forms:} Ideally, the language file +% should be as complete as possible. ``Complete'' meaning it contains: i) the +% defaults for all basic separators, \opt{namesep}, \opt{pairsep}, +% \opt{listsep}, \opt{lastsep}, \opt{tpairsep}, \opt{tlistsep}, +% \opt{tlastsep}, \opt{notesep}, and \opt{rangesep}; ii) the non-abbreviated +% forms of names for all the supported reference types, according to the +% language definitions, that is, usually for \opt{Name-sg}, \opt{name-sg}, +% \opt{Name-pl}, \opt{name-pl}, but only for the capitalized forms if the +% language was declared with \opt{allcaps} option, and names for each +% declension case, if the language was declared with \opt{declension}; iii) +% genders for each reference type, if the language was declared with +% \opt{gender}. The language file may include some other things, like some +% type specific settings for separators or refbounds, and also some +% abbreviated name forms. In the case of abbreviated name forms, it is usual +% and desirable to provide some, but they should be used sparingly, only for +% cases where the abbreviation is a common and well established tradition for +% the language. The reason is that \texttt{abbrev=true} is quite a common use +% case, and it is easier to provide an occasional wanted abbreviated form, if +% the language file didn't include it, than it is to disable several unwanted +% ones, if the language file includes too many of them. What should be aimed +% at is to provide a good default abbreviations set. Unusual or disputable +% abbreviations should be avoided. In particular, there is no need at all to +% provide the same set of abbreviations for each language. It is not because +% English has them for a given type that some other language has to have them, +% and it is not because English lacks them for another type, that other +% languages shouldn't have them. Still, with regard to abbreviated forms, it +% is better to be conservative than opinionated. +% +% \textbf{\pkg{babel} names:} As is known, \pkg{babel} defines a set of +% captions for different document objects for each supported language. In +% some cases, they intersect with the objects referred to with +% cross-references, in which case consistency with \pkg{babel} should be +% maintained as much as possible. This is specially the case for prominent +% and traditional objects, such as \cs{chaptername}, \cs{figurename}, +% \cs{tablename}, \cs{pagename}, \cs{partname}, and \cs{appendixname}. This +% is not set in stone, but there should be good reason to diverge from it. In +% particular, if a certain term is contentious in a given language, +% \pkg{babel}'s default should be preferred. For example, ``table'' +% vs. ``tableau'' in French, or ``cuadro'' vs. ``tabla'' in Spanish. +% +% \textbf{Input encoding of language files:} When \pkg{zref-clever} was +% released, the \LaTeX{} kernel already used UTF-8 as default input encoding. +% Indeed, \pkg{zref-clever} requires a kernel even newer than the one where +% the default input encoding was changed. That given, UTF-8 input encoding +% was made a requirement of the package, and hence the language files should +% be in UTF-8, since it makes them easier to read and maintain than LICR. +% +% \textbf{Precedence rule for options in the language files:} Any option given +% twice or more times has to have some precedence rule. Normally, the +% language files should not contain options in duplicity, but they may happen +% when setting some ``group'' \opt{refbounds} options, in which case +% precedence rules become relevant. For user facing options (those set with +% \cs{zcLanguageSetup}), the option is always set, regardless of its previous +% state. Which means that the last value takes precedence. For the language +% files, we have to load them at \texttt{begindocument} (or later), since +% that's the point where we know from \pkg{babel} or \pkg{polyglossia} the +% \cs{languagename}. But we also don't want to override any options the user +% has actively set in the preamble. So the language files only set the values +% if they were not previously set. In other words, for them the precedence +% order is inverted, the first value takes precedence. +% +% % \subsection{English} % % English language file has been initially provided by the author. @@ -8637,17 +8798,20 @@ type = solution , % % German language file has been initially provided by the author. % +% \pkg{babel-german} also has \file{.ldf}s for \texttt{germanb} and +% \texttt{ngermanb}, but they are deprecated as options and, if used, they +% fall back respectively to \texttt{german} and \texttt{ngerman}. +% % \begin{macrocode} %<*package> \zcDeclareLanguage [ declension = { N , A , D , G } , gender = { f , m , n } , allcaps ] { german } -\zcDeclareLanguageAlias { austrian } { german } -\zcDeclareLanguageAlias { germanb } { german } \zcDeclareLanguageAlias { ngerman } { german } +\zcDeclareLanguageAlias { austrian } { german } \zcDeclareLanguageAlias { naustrian } { german } -\zcDeclareLanguageAlias { nswissgerman } { german } \zcDeclareLanguageAlias { swissgerman } { german } +\zcDeclareLanguageAlias { nswissgerman } { german } %</package> % \end{macrocode} % @@ -9115,13 +9279,14 @@ type = solution , % \url{https://groups.google.com/g/fr.comp.text.tex/c/Fa11Tf6MFFs}) mailing % lists. % +% \pkg{babel-french} also has \file{.ldf}s for \texttt{francais}, +% \texttt{frenchb}, and \texttt{canadien}, but they are deprecated as options +% and, if used, they fall back to either \texttt{french} or \texttt{acadian}. +% % \begin{macrocode} %<*package> \zcDeclareLanguage [ gender = { f , m } ] { french } \zcDeclareLanguageAlias { acadian } { french } -\zcDeclareLanguageAlias { canadien } { french } -\zcDeclareLanguageAlias { francais } { french } -\zcDeclareLanguageAlias { frenchb } { french } %</package> % \end{macrocode} % @@ -9831,9 +9996,9 @@ type = solution , % % \subsection{Dutch} % -% Dutch language file initially contributed by \texttt{niluxv} (\githubPR{5}). -% All genders were checked against the ``Dikke Van Dale''. Many words have -% multiple genders. +% Dutch language file initially contributed by \contributor{\username{niluxv}} +% (\githubPR{5}). All genders were checked against the ``Dikke Van Dale''. +% Many words have multiple genders. % % \begin{macrocode} %<*package> @@ -9891,12 +10056,18 @@ type = paragraph , Name-pl = Alinea's , name-pl = alinea's , +% \end{macrocode} +% 2022-12-27, \contributor{\username{niluxv}}: ``bijlage'' is chosen over +% ``appendix'' (plural ``appendices'', gender: m, n) for consistency with +% babel/polyglossia. ``bijlages'' is also a valid plural; ``bijlagen'' is +% chosen for consistency with babel/polyglossia. +% \begin{macrocode} type = appendix , - gender = { m , n } , - Name-sg = Appendix , - name-sg = appendix , - Name-pl = Appendices , - name-pl = appendices , + gender = { f, m } , + Name-sg = Bijlage , + name-sg = bijlage , + Name-pl = Bijlagen , + name-pl = bijlagen , type = page , gender = { f , m } , @@ -9958,10 +10129,10 @@ type = note , type = equation , gender = f , - Name-sg = Vergelijking , - name-sg = vergelijking , - Name-pl = Vergelijkingen , - name-pl = vergelijkingen , + Name-sg = Vergelijking , + name-sg = vergelijking , + Name-pl = Vergelijkingen , + name-pl = vergelijkingen , Name-sg-ab = Vgl. , name-sg-ab = vgl. , Name-pl-ab = Vgl.'s , @@ -9977,9 +10148,10 @@ type = theorem , name-pl = stellingen , % \end{macrocode} -% 2022-01-09, \texttt{niluxv}: An alternative plural is ``lemmata''. That is -% also a correct English plural for lemma, but the English language file -% chooses ``lemmas''. For consistency we therefore choose ``lemma's''. +% 2022-01-09, \contributor{\username{niluxv}}: An alternative plural is +% ``lemmata''. That is also a correct English plural for lemma, but the +% English language file chooses ``lemmas''. For consistency we therefore +% choose ``lemma's''. % \begin{macrocode} type = lemma , gender = n , @@ -10011,10 +10183,10 @@ type = definition , type = proof , gender = n , - Name-sg = Bewijs , - name-sg = bewijs , - Name-pl = Bewijzen , - name-pl = bewijzen , + Name-sg = Bewijs , + name-sg = bewijs , + Name-pl = Bewijzen , + name-pl = bewijzen , type = result , gender = n , @@ -10037,16 +10209,21 @@ type = example , Name-pl = Voorbeelden , name-pl = voorbeelden , +% \end{macrocode} +% 2022-12-27, \contributor{\username{niluxv}}: ``algoritmes'' is also a valid +% plural. ``algoritmen'' is chosen to be consistent with using ``bijlagen'' +% (and not ``bijlages'') as the plural of ``bijlage''. +% \begin{macrocode} type = algorithm , gender = { n , f , m } , Name-sg = Algoritme , name-sg = algoritme , - Name-pl = Algoritmes , - name-pl = algoritmes , + Name-pl = Algoritmen , + name-pl = algoritmen , % \end{macrocode} -% 2022-01-09, \texttt{niluxv}: EN-NL Van Dale translates listing as (3) -% ``uitdraai van computerprogramma'', ``listing''. +% 2022-01-09, \contributor{\username{niluxv}}: EN-NL Van Dale translates +% listing as (3) ``uitdraai van computerprogramma'', ``listing''. % \begin{macrocode} type = listing , gender = m , @@ -10075,6 +10252,257 @@ type = solution , % \end{macrocode} % % +% \subsection{Italian} +% +% Italian language file initially contributed by Matteo Ferrigato +% (\githubissue{11}). +% +% \begin{macrocode} +%<*package> +\zcDeclareLanguage [ gender = { f , m } ] { italian } +%</package> +% \end{macrocode} +% +% \begin{macrocode} +%<*lang-italian> +% \end{macrocode} +% +% \begin{macrocode} +namesep = {\nobreakspace} , +pairsep = {~e\nobreakspace} , +listsep = {,~} , +lastsep = {~e\nobreakspace} , +tpairsep = {~e\nobreakspace} , +tlistsep = {,~} , +tlastsep = {,~e\nobreakspace} , +notesep = {~} , +rangesep = {~a\nobreakspace} , ++refbounds-rb = {da\nobreakspace,,,} , + +type = book , + gender = m , + Name-sg = Libro , + name-sg = libro , + Name-pl = Libri , + name-pl = libri , + +type = part , + gender = f , + Name-sg = Parte , + name-sg = parte , + Name-pl = Parti , + name-pl = parti , + +type = chapter , + gender = m , + Name-sg = Capitolo , + name-sg = capitolo , + Name-pl = Capitoli , + name-pl = capitoli , + +type = section , + gender = m , + Name-sg = Paragrafo , + name-sg = paragrafo , + Name-pl = Paragrafi , + name-pl = paragrafi , + +type = paragraph , + gender = m , + Name-sg = Capoverso , + name-sg = capoverso , + Name-pl = Capoversi , + name-pl = capoversi , + +type = appendix , + gender = f , + Name-sg = Appendice , + name-sg = appendice , + Name-pl = Appendici , + name-pl = appendici , + +type = page , + gender = f , + Name-sg = Pagina , + name-sg = pagina , + Name-pl = Pagine , + name-pl = pagine , + Name-sg-ab = Pag. , + name-sg-ab = pag. , + Name-pl-ab = Pag. , + name-pl-ab = pag. , + rangesep = {\textendash} , + rangetopair = false , + +refbounds-rb = {,,,} , + +type = line , + gender = f , + Name-sg = Riga , + name-sg = riga , + Name-pl = Righe , + name-pl = righe , + +type = figure , + gender = f , + Name-sg = Figura , + name-sg = figura , + Name-pl = Figure , + name-pl = figure , + Name-sg-ab = Fig. , + name-sg-ab = fig. , + Name-pl-ab = Fig. , + name-pl-ab = fig. , + +type = table , + gender = f , + Name-sg = Tabella , + name-sg = tabella , + Name-pl = Tabelle , + name-pl = tabelle , + Name-sg-ab = Tab. , + name-sg-ab = tab. , + Name-pl-ab = Tab. , + name-pl-ab = tab. , + +type = item , + gender = m , + Name-sg = Punto , + name-sg = punto , + Name-pl = Punti , + name-pl = punti , + +type = footnote , + gender = f , + Name-sg = Nota , + name-sg = nota , + Name-pl = Note , + name-pl = note , + +type = endnote , + gender = f , + Name-sg = Nota , + name-sg = nota , + Name-pl = Note , + name-pl = note , + +type = note , + gender = f , + Name-sg = Nota , + name-sg = nota , + Name-pl = Note , + name-pl = note , + +type = equation , + gender = f , + Name-sg = Equazione , + name-sg = equazione , + Name-pl = Equazioni , + name-pl = equazioni , + Name-sg-ab = Eq. , + name-sg-ab = eq. , + Name-pl-ab = Eq. , + name-pl-ab = eq. , + +refbounds-rb = {da\nobreakspace(,,,)} , + refbounds-first-sg = {,(,),} , + refbounds = {(,,,)} , + +type = theorem , + gender = m , + Name-sg = Teorema , + name-sg = teorema , + Name-pl = Teoremi , + name-pl = teoremi , + +type = lemma , + gender = m , + Name-sg = Lemma , + name-sg = lemma , + Name-pl = Lemmi , + name-pl = lemmi , + +type = corollary , + gender = m , + Name-sg = Corollario , + name-sg = corollario , + Name-pl = Corollari , + name-pl = corollari , + +type = proposition , + gender = f , + Name-sg = Proposizione , + name-sg = proposizione , + Name-pl = Proposizioni , + name-pl = proposizioni , + +type = definition , + gender = f , + Name-sg = Definizione , + name-sg = definizione , + Name-pl = Definizioni , + name-pl = definizioni , + +type = proof , + gender = f , + Name-sg = Dimostrazione , + name-sg = dimostrazione , + Name-pl = Dimostrazioni , + name-pl = dimostrazioni , + +type = result , + gender = m , + Name-sg = Risultato , + name-sg = risultato , + Name-pl = Risultati , + name-pl = risultati , + +type = remark , + gender = f , + Name-sg = Osservazione , + name-sg = osservazione , + Name-pl = Osservazioni , + name-pl = osservazioni , + +type = example , + gender = m , + Name-sg = Esempio , + name-sg = esempio , + Name-pl = Esempi , + name-pl = esempi , + +type = algorithm , + gender = m , + Name-sg = Algoritmo , + name-sg = algoritmo , + Name-pl = Algoritmi , + name-pl = algoritmi , + +type = listing , + gender = m , + Name-sg = Listato , + name-sg = listato , + Name-pl = Listati , + name-pl = listati , + +type = exercise , + gender = m , + Name-sg = Esercizio , + name-sg = esercizio , + Name-pl = Esercizi , + name-pl = esercizi , + +type = solution , + gender = f , + Name-sg = Soluzione , + name-sg = soluzione , + Name-pl = Soluzioni , + name-pl = soluzioni , +% \end{macrocode} +% +% \begin{macrocode} +%</lang-italian> +% \end{macrocode} +% +% % \PrintIndex % % diff --git a/Master/texmf-dist/source/latex/zref-clever/zref-clever.ins b/Master/texmf-dist/source/latex/zref-clever/zref-clever.ins index bcad3db50ab..f05b026520a 100644 --- a/Master/texmf-dist/source/latex/zref-clever/zref-clever.ins +++ b/Master/texmf-dist/source/latex/zref-clever/zref-clever.ins @@ -96,5 +96,6 @@ for those people who are interested. \generate{\file{zref-clever-portuguese.lang}{\from{zref-clever.dtx}{lang-portuguese}}} \generate{\file{zref-clever-spanish.lang}{\from{zref-clever.dtx}{lang-spanish}}} \generate{\file{zref-clever-dutch.lang}{\from{zref-clever.dtx}{lang-dutch}}} +\generate{\file{zref-clever-italian.lang}{\from{zref-clever.dtx}{lang-italian}}} \endbatchfile diff --git a/Master/texmf-dist/tex/latex/zref-clever/zref-clever-dutch.lang b/Master/texmf-dist/tex/latex/zref-clever/zref-clever-dutch.lang index dbe26ed4214..4e0e0acbc8a 100644 --- a/Master/texmf-dist/tex/latex/zref-clever/zref-clever-dutch.lang +++ b/Master/texmf-dist/tex/latex/zref-clever/zref-clever-dutch.lang @@ -88,11 +88,11 @@ type = paragraph , name-pl = alinea's , type = appendix , - gender = { m , n } , - Name-sg = Appendix , - name-sg = appendix , - Name-pl = Appendices , - name-pl = appendices , + gender = { f, m } , + Name-sg = Bijlage , + name-sg = bijlage , + Name-pl = Bijlagen , + name-pl = bijlagen , type = page , gender = { f , m } , @@ -154,10 +154,10 @@ type = note , type = equation , gender = f , - Name-sg = Vergelijking , - name-sg = vergelijking , - Name-pl = Vergelijkingen , - name-pl = vergelijkingen , + Name-sg = Vergelijking , + name-sg = vergelijking , + Name-pl = Vergelijkingen , + name-pl = vergelijkingen , Name-sg-ab = Vgl. , name-sg-ab = vgl. , Name-pl-ab = Vgl.'s , @@ -202,10 +202,10 @@ type = definition , type = proof , gender = n , - Name-sg = Bewijs , - name-sg = bewijs , - Name-pl = Bewijzen , - name-pl = bewijzen , + Name-sg = Bewijs , + name-sg = bewijs , + Name-pl = Bewijzen , + name-pl = bewijzen , type = result , gender = n , @@ -232,8 +232,8 @@ type = algorithm , gender = { n , f , m } , Name-sg = Algoritme , name-sg = algoritme , - Name-pl = Algoritmes , - name-pl = algoritmes , + Name-pl = Algoritmen , + name-pl = algoritmen , type = listing , gender = m , diff --git a/Master/texmf-dist/tex/latex/zref-clever/zref-clever-italian.lang b/Master/texmf-dist/tex/latex/zref-clever/zref-clever-italian.lang new file mode 100644 index 00000000000..f400d1302ac --- /dev/null +++ b/Master/texmf-dist/tex/latex/zref-clever/zref-clever-italian.lang @@ -0,0 +1,275 @@ +%% +%% This is file `zref-clever-italian.lang', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% zref-clever.dtx (with options: `lang-italian') +%% +%% This file was generated from file(s) of the LaTeX package "zref-clever". +%% +%% Copyright (C) 2021-2022 Gustavo Barros +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file: +%% +%% https://www.latex-project.org/lppl.txt +%% +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +%% This work is "maintained" (as per LPPL maintenance status) by +%% Gustavo Barros. +%% +%% This work consists of the files zref-clever.dtx, +%% zref-clever.ins, +%% zref-clever.tex, +%% zref-clever-code.tex, +%% and the files generated from them. +%% +%% The released version of this package is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the package can be found at +%% +%% https://github.com/gusbrs/zref-clever +%% +%% for those people who are interested. +%% +%% ----------------------------------------------------------------------- +%% +namesep = {\nobreakspace} , +pairsep = {~e\nobreakspace} , +listsep = {,~} , +lastsep = {~e\nobreakspace} , +tpairsep = {~e\nobreakspace} , +tlistsep = {,~} , +tlastsep = {,~e\nobreakspace} , +notesep = {~} , +rangesep = {~a\nobreakspace} , ++refbounds-rb = {da\nobreakspace,,,} , + +type = book , + gender = m , + Name-sg = Libro , + name-sg = libro , + Name-pl = Libri , + name-pl = libri , + +type = part , + gender = f , + Name-sg = Parte , + name-sg = parte , + Name-pl = Parti , + name-pl = parti , + +type = chapter , + gender = m , + Name-sg = Capitolo , + name-sg = capitolo , + Name-pl = Capitoli , + name-pl = capitoli , + +type = section , + gender = m , + Name-sg = Paragrafo , + name-sg = paragrafo , + Name-pl = Paragrafi , + name-pl = paragrafi , + +type = paragraph , + gender = m , + Name-sg = Capoverso , + name-sg = capoverso , + Name-pl = Capoversi , + name-pl = capoversi , + +type = appendix , + gender = f , + Name-sg = Appendice , + name-sg = appendice , + Name-pl = Appendici , + name-pl = appendici , + +type = page , + gender = f , + Name-sg = Pagina , + name-sg = pagina , + Name-pl = Pagine , + name-pl = pagine , + Name-sg-ab = Pag. , + name-sg-ab = pag. , + Name-pl-ab = Pag. , + name-pl-ab = pag. , + rangesep = {\textendash} , + rangetopair = false , + +refbounds-rb = {,,,} , + +type = line , + gender = f , + Name-sg = Riga , + name-sg = riga , + Name-pl = Righe , + name-pl = righe , + +type = figure , + gender = f , + Name-sg = Figura , + name-sg = figura , + Name-pl = Figure , + name-pl = figure , + Name-sg-ab = Fig. , + name-sg-ab = fig. , + Name-pl-ab = Fig. , + name-pl-ab = fig. , + +type = table , + gender = f , + Name-sg = Tabella , + name-sg = tabella , + Name-pl = Tabelle , + name-pl = tabelle , + Name-sg-ab = Tab. , + name-sg-ab = tab. , + Name-pl-ab = Tab. , + name-pl-ab = tab. , + +type = item , + gender = m , + Name-sg = Punto , + name-sg = punto , + Name-pl = Punti , + name-pl = punti , + +type = footnote , + gender = f , + Name-sg = Nota , + name-sg = nota , + Name-pl = Note , + name-pl = note , + +type = endnote , + gender = f , + Name-sg = Nota , + name-sg = nota , + Name-pl = Note , + name-pl = note , + +type = note , + gender = f , + Name-sg = Nota , + name-sg = nota , + Name-pl = Note , + name-pl = note , + +type = equation , + gender = f , + Name-sg = Equazione , + name-sg = equazione , + Name-pl = Equazioni , + name-pl = equazioni , + Name-sg-ab = Eq. , + name-sg-ab = eq. , + Name-pl-ab = Eq. , + name-pl-ab = eq. , + +refbounds-rb = {da\nobreakspace(,,,)} , + refbounds-first-sg = {,(,),} , + refbounds = {(,,,)} , + +type = theorem , + gender = m , + Name-sg = Teorema , + name-sg = teorema , + Name-pl = Teoremi , + name-pl = teoremi , + +type = lemma , + gender = m , + Name-sg = Lemma , + name-sg = lemma , + Name-pl = Lemmi , + name-pl = lemmi , + +type = corollary , + gender = m , + Name-sg = Corollario , + name-sg = corollario , + Name-pl = Corollari , + name-pl = corollari , + +type = proposition , + gender = f , + Name-sg = Proposizione , + name-sg = proposizione , + Name-pl = Proposizioni , + name-pl = proposizioni , + +type = definition , + gender = f , + Name-sg = Definizione , + name-sg = definizione , + Name-pl = Definizioni , + name-pl = definizioni , + +type = proof , + gender = f , + Name-sg = Dimostrazione , + name-sg = dimostrazione , + Name-pl = Dimostrazioni , + name-pl = dimostrazioni , + +type = result , + gender = m , + Name-sg = Risultato , + name-sg = risultato , + Name-pl = Risultati , + name-pl = risultati , + +type = remark , + gender = f , + Name-sg = Osservazione , + name-sg = osservazione , + Name-pl = Osservazioni , + name-pl = osservazioni , + +type = example , + gender = m , + Name-sg = Esempio , + name-sg = esempio , + Name-pl = Esempi , + name-pl = esempi , + +type = algorithm , + gender = m , + Name-sg = Algoritmo , + name-sg = algoritmo , + Name-pl = Algoritmi , + name-pl = algoritmi , + +type = listing , + gender = m , + Name-sg = Listato , + name-sg = listato , + Name-pl = Listati , + name-pl = listati , + +type = exercise , + gender = m , + Name-sg = Esercizio , + name-sg = esercizio , + Name-pl = Esercizi , + name-pl = esercizi , + +type = solution , + gender = f , + Name-sg = Soluzione , + name-sg = soluzione , + Name-pl = Soluzioni , + name-pl = soluzioni , +%% +%% +%% End of file `zref-clever-italian.lang'. diff --git a/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty b/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty index f56c716521a..b04299d8406 100644 --- a/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty +++ b/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty @@ -53,7 +53,7 @@ }% \endinput }% -\ProvidesExplPackage {zref-clever} {2022-05-28} {0.3.1} +\ProvidesExplPackage {zref-clever} {2022-12-27} {0.3.2} {Clever LaTeX cross-references based on zref} \RequirePackage { zref-base } \RequirePackage { zref-user } @@ -4730,31 +4730,31 @@ ! \l__zrefclever_link_star_bool } { - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn #2 { 1 } \__zrefclever_hyperlink:nnn { \__zrefclever_extract_url_unexp:n {#1} } { \__zrefclever_extract_unexp:nnn {#1} { anchor } { } } { \seq_item:Nn #2 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \__zrefclever_extract_unexp:nvn {#1} { l__zrefclever_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn #2 { 3 } } \seq_item:Nn #2 { 4 } - \exp_not:N \group_end: } { - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn #2 { 1 } \seq_item:Nn #2 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \__zrefclever_extract_unexp:nvn {#1} { l__zrefclever_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn #2 { 3 } \seq_item:Nn #2 { 4 } - \exp_not:N \group_end: } } { \__zrefclever_ref_default: } @@ -4771,29 +4771,29 @@ ! \l__zrefclever_link_star_bool } { - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn #3 { 1 } \__zrefclever_hyperlink:nnn { \__zrefclever_extract_url_unexp:n {#1} } { \__zrefclever_extract_unexp:nnn {#1} { anchor } { } } { \seq_item:Nn #3 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \exp_not:n {#2} + \exp_not:N \group_end: \seq_item:Nn #3 { 3 } } \seq_item:Nn #3 { 4 } - \exp_not:N \group_end: } { - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn #3 { 1 } \seq_item:Nn #3 { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \exp_not:n {#2} + \exp_not:N \group_end: \seq_item:Nn #3 { 3 } \seq_item:Nn #3 { 4 } - \exp_not:N \group_end: } } } @@ -4809,7 +4809,6 @@ { \l__zrefclever_type_first_label_tl } { \l__zrefclever_ref_property_tl } { - \exp_not:N \group_begin: \__zrefclever_hyperlink:nnn { \__zrefclever_extract_url_unexp:V @@ -4825,19 +4824,17 @@ \exp_not:V \l__zrefclever_type_name_tl \exp_not:N \group_end: \exp_not:V \l__zrefclever_namesep_tl - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 1 } \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \__zrefclever_extract_unexp:Vvn \l__zrefclever_type_first_label_tl { l__zrefclever_ref_property_tl } { } - \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 3 } \exp_not:N \group_end: + \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 3 } } - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 4 } - \exp_not:N \group_end: } { \exp_not:N \group_begin: @@ -4872,8 +4869,6 @@ ! \l__zrefclever_link_star_bool } { - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 1 } \__zrefclever_hyperlink:nnn @@ -4888,27 +4883,29 @@ { \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \__zrefclever_extract_unexp:Vvn \l__zrefclever_type_first_label_tl { l__zrefclever_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 3 } } \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 4 } - \exp_not:N \group_end: } { - \exp_not:N \group_begin: - \exp_not:V \l__zrefclever_reffont_tl \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 1 } \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 2 } + \exp_not:N \group_begin: + \exp_not:V \l__zrefclever_reffont_tl \__zrefclever_extract_unexp:Vvn \l__zrefclever_type_first_label_tl { l__zrefclever_ref_property_tl } { } + \exp_not:N \group_end: \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 3 } \seq_item:Nn \l__zrefclever_type_first_refbounds_seq { 4 } - \exp_not:N \group_end: } } { \__zrefclever_ref_default: } @@ -5578,8 +5575,6 @@ { \zref@localaddprop \ZREF@mainlist { subeq } } } } - \zcRefTypeSetup { equation } - { reffont = \upshape } \msg_info:nnn { zref-clever } { compat-package } { amsmath } } } @@ -5759,23 +5754,20 @@ \zcDeclareLanguage [ declension = { N , A , D , G } , gender = { f , m , n } , allcaps ] { german } -\zcDeclareLanguageAlias { austrian } { german } -\zcDeclareLanguageAlias { germanb } { german } \zcDeclareLanguageAlias { ngerman } { german } +\zcDeclareLanguageAlias { austrian } { german } \zcDeclareLanguageAlias { naustrian } { german } -\zcDeclareLanguageAlias { nswissgerman } { german } \zcDeclareLanguageAlias { swissgerman } { german } +\zcDeclareLanguageAlias { nswissgerman } { german } \zcDeclareLanguage [ gender = { f , m } ] { french } \zcDeclareLanguageAlias { acadian } { french } -\zcDeclareLanguageAlias { canadien } { french } -\zcDeclareLanguageAlias { francais } { french } -\zcDeclareLanguageAlias { frenchb } { french } \zcDeclareLanguage [ gender = { f , m } ] { portuguese } \zcDeclareLanguageAlias { brazilian } { portuguese } \zcDeclareLanguageAlias { brazil } { portuguese } \zcDeclareLanguageAlias { portuges } { portuguese } \zcDeclareLanguage [ gender = { f , m } ] { spanish } \zcDeclareLanguage [ gender = { f , m , n } ] { dutch } +\zcDeclareLanguage [ gender = { f , m } ] { italian } %% %% %% End of file `zref-clever.sty'. |