diff options
author | Norbert Preining <norbert@preining.info> | 2024-11-26 03:03:46 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-11-26 03:03:46 +0000 |
commit | 1ddba8cb76b4114c7f0737f7e34fb270f5b34f12 (patch) | |
tree | 57cfdcce44c261e577c6b7600155e153960b8092 /macros/latex/contrib | |
parent | 61d4485d965015b67117e69d18337e54340de5ca (diff) |
CTAN sync 202411260303
Diffstat (limited to 'macros/latex/contrib')
37 files changed, 865 insertions, 3027 deletions
diff --git a/macros/latex/contrib/litebook/License b/macros/latex/contrib/litebook/License deleted file mode 100644 index 842cf85e3c..0000000000 --- a/macros/latex/contrib/litebook/License +++ /dev/null @@ -1,415 +0,0 @@ -The LaTeX Project Public License -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- - -LPPL Version 1.3c 2008-05-04 - -Copyright 1999 2002-2008 LaTeX3 Project - Everyone is allowed to distribute verbatim copies of this - license document, but modification of it is not allowed. - - -PREAMBLE -======== - -The LaTeX Project Public License (LPPL) is the primary license under -which the LaTeX kernel and the base LaTeX packages are distributed. - -You may use this license for any work of which you hold the copyright -and which you wish to distribute. This license may be particularly -suitable if your work is TeX-related (such as a LaTeX package), but -it is written in such a way that you can use it even if your work is -unrelated to TeX. - -The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', -below, gives instructions, examples, and recommendations for authors -who are considering distributing their works under this license. - -This license gives conditions under which a work may be distributed -and modified, as well as conditions under which modified versions of -that work may be distributed. - -We, the LaTeX3 Project, believe that the conditions below give you -the freedom to make and distribute modified versions of your work -that conform with whatever technical specifications you wish while -maintaining the availability, integrity, and reliability of -that work. If you do not see how to achieve your goal while -meeting these conditions, then read the document `cfgguide.tex' -and `modguide.tex' in the base LaTeX distribution for suggestions. - - -DEFINITIONS -=========== - -In this license document the following terms are used: - - `Work' - Any work being distributed under this License. - - `Derived Work' - Any work that under any applicable law is derived from the Work. - - `Modification' - Any procedure that produces a Derived Work under any applicable - law -- for example, the production of a file containing an - original file associated with the Work or a significant portion of - such a file, either verbatim or with modifications and/or - translated into another language. - - `Modify' - To apply any procedure that produces a Derived Work under any - applicable law. - - `Distribution' - Making copies of the Work available from one person to another, in - whole or in part. Distribution includes (but is not limited to) - making any electronic components of the Work accessible by - file transfer protocols such as FTP or HTTP or by shared file - systems such as Sun's Network File System (NFS). - - `Compiled Work' - A version of the Work that has been processed into a form where it - is directly usable on a computer system. This processing may - include using installation facilities provided by the Work, - transformations of the Work, copying of components of the Work, or - other activities. Note that modification of any installation - facilities provided by the Work constitutes modification of the Work. - - `Current Maintainer' - A person or persons nominated as such within the Work. If there is - no such explicit nomination then it is the `Copyright Holder' under - any applicable law. - - `Base Interpreter' - A program or process that is normally needed for running or - interpreting a part or the whole of the Work. - - A Base Interpreter may depend on external components but these - are not considered part of the Base Interpreter provided that each - external component clearly identifies itself whenever it is used - interactively. Unless explicitly specified when applying the - license to the Work, the only applicable Base Interpreter is a - `LaTeX-Format' or in the case of files belonging to the - `LaTeX-format' a program implementing the `TeX language'. - - - -CONDITIONS ON DISTRIBUTION AND MODIFICATION -=========================================== - -1. Activities other than distribution and/or modification of the Work -are not covered by this license; they are outside its scope. In -particular, the act of running the Work is not restricted and no -requirements are made concerning any offers of support for the Work. - -2. You may distribute a complete, unmodified copy of the Work as you -received it. Distribution of only part of the Work is considered -modification of the Work, and no right to distribute such a Derived -Work may be assumed under the terms of this clause. - -3. You may distribute a Compiled Work that has been generated from a -complete, unmodified copy of the Work as distributed under Clause 2 -above, as long as that Compiled Work is distributed in such a way that -the recipients may install the Compiled Work on their system exactly -as it would have been installed if they generated a Compiled Work -directly from the Work. - -4. If you are the Current Maintainer of the Work, you may, without -restriction, modify the Work, thus creating a Derived Work. You may -also distribute the Derived Work without restriction, including -Compiled Works generated from the Derived Work. Derived Works -distributed in this manner by the Current Maintainer are considered to -be updated versions of the Work. - -5. If you are not the Current Maintainer of the Work, you may modify -your copy of the Work, thus creating a Derived Work based on the Work, -and compile this Derived Work, thus creating a Compiled Work based on -the Derived Work. - -6. If you are not the Current Maintainer of the Work, you may -distribute a Derived Work provided the following conditions are met -for every component of the Work unless that component clearly states -in the copyright notice that it is exempt from that condition. Only -the Current Maintainer is allowed to add such statements of exemption -to a component of the Work. - - a. If a component of this Derived Work can be a direct replacement - for a component of the Work when that component is used with the - Base Interpreter, then, wherever this component of the Work - identifies itself to the user when used interactively with that - Base Interpreter, the replacement component of this Derived Work - clearly and unambiguously identifies itself as a modified version - of this component to the user when used interactively with that - Base Interpreter. - - b. Every component of the Derived Work contains prominent notices - detailing the nature of the changes to that component, or a - prominent reference to another file that is distributed as part - of the Derived Work and that contains a complete and accurate log - of the changes. - - c. No information in the Derived Work implies that any persons, - including (but not limited to) the authors of the original version - of the Work, provide any support, including (but not limited to) - the reporting and handling of errors, to recipients of the - Derived Work unless those persons have stated explicitly that - they do provide such support for the Derived Work. - - d. You distribute at least one of the following with the Derived Work: - - 1. A complete, unmodified copy of the Work; - if your distribution of a modified component is made by - offering access to copy the modified component from a - designated place, then offering equivalent access to copy - the Work from the same or some similar place meets this - condition, even though third parties are not compelled to - copy the Work along with the modified component; - - 2. Information that is sufficient to obtain a complete, - unmodified copy of the Work. - -7. If you are not the Current Maintainer of the Work, you may -distribute a Compiled Work generated from a Derived Work, as long as -the Derived Work is distributed to all recipients of the Compiled -Work, and as long as the conditions of Clause 6, above, are met with -regard to the Derived Work. - -8. The conditions above are not intended to prohibit, and hence do not -apply to, the modification, by any method, of any component so that it -becomes identical to an updated version of that component of the Work as -it is distributed by the Current Maintainer under Clause 4, above. - -9. Distribution of the Work or any Derived Work in an alternative -format, where the Work or that Derived Work (in whole or in part) is -then produced by applying some process to that format, does not relax or -nullify any sections of this license as they pertain to the results of -applying that process. - -10. a. A Derived Work may be distributed under a different license - provided that license itself honors the conditions listed in - Clause 6 above, in regard to the Work, though it does not have - to honor the rest of the conditions in this license. - - b. If a Derived Work is distributed under a different license, that - Derived Work must provide sufficient documentation as part of - itself to allow each recipient of that Derived Work to honor the - restrictions in Clause 6 above, concerning changes from the Work. - -11. This license places no restrictions on works that are unrelated to -the Work, nor does this license place any restrictions on aggregating -such works with the Work by any means. - -12. Nothing in this license is intended to, or may be used to, prevent -complete compliance by all parties with all applicable laws. - - -NO WARRANTY -=========== - -There is no warranty for the Work. Except when otherwise stated in -writing, the Copyright Holder provides the Work `as is', without -warranty of any kind, either expressed or implied, including, but not -limited to, the implied warranties of merchantability and fitness for a -particular purpose. The entire risk as to the quality and performance -of the Work is with you. Should the Work prove defective, you assume -the cost of all necessary servicing, repair, or correction. - -In no event unless required by applicable law or agreed to in writing -will The Copyright Holder, or any author named in the components of the -Work, or any other party who may distribute and/or modify the Work as -permitted above, be liable to you for damages, including any general, -special, incidental or consequential damages arising out of any use of -the Work or out of inability to use the Work (including, but not limited -to, loss of data, data being rendered inaccurate, or losses sustained by -anyone as a result of any failure of the Work to operate with any other -programs), even if the Copyright Holder or said author or said other -party has been advised of the possibility of such damages. - - -MAINTENANCE OF THE WORK -======================= - -The Work has the status `author-maintained' if the Copyright Holder -explicitly and prominently states near the primary copyright notice in -the Work that the Work can only be maintained by the Copyright Holder -or simply that it is `author-maintained'. - -The Work has the status `maintained' if there is a Current Maintainer -who has indicated in the Work that they are willing to receive error -reports for the Work (for example, by supplying a valid e-mail -address). It is not required for the Current Maintainer to acknowledge -or act upon these error reports. - -The Work changes from status `maintained' to `unmaintained' if there -is no Current Maintainer, or the person stated to be Current -Maintainer of the work cannot be reached through the indicated means -of communication for a period of six months, and there are no other -significant signs of active maintenance. - -You can become the Current Maintainer of the Work by agreement with -any existing Current Maintainer to take over this role. - -If the Work is unmaintained, you can become the Current Maintainer of -the Work through the following steps: - - 1. Make a reasonable attempt to trace the Current Maintainer (and - the Copyright Holder, if the two differ) through the means of - an Internet or similar search. - - 2. If this search is successful, then enquire whether the Work - is still maintained. - - a. If it is being maintained, then ask the Current Maintainer - to update their communication data within one month. - - b. If the search is unsuccessful or no action to resume active - maintenance is taken by the Current Maintainer, then announce - within the pertinent community your intention to take over - maintenance. (If the Work is a LaTeX work, this could be - done, for example, by posting to comp.text.tex.) - - 3a. If the Current Maintainer is reachable and agrees to pass - maintenance of the Work to you, then this takes effect - immediately upon announcement. - - b. If the Current Maintainer is not reachable and the Copyright - Holder agrees that maintenance of the Work be passed to you, - then this takes effect immediately upon announcement. - - 4. If you make an `intention announcement' as described in 2b. above - and after three months your intention is challenged neither by - the Current Maintainer nor by the Copyright Holder nor by other - people, then you may arrange for the Work to be changed so as - to name you as the (new) Current Maintainer. - - 5. If the previously unreachable Current Maintainer becomes - reachable once more within three months of a change completed - under the terms of 3b) or 4), then that Current Maintainer must - become or remain the Current Maintainer upon request provided - they then update their communication data within one month. - -A change in the Current Maintainer does not, of itself, alter the fact -that the Work is distributed under the LPPL license. - -If you become the Current Maintainer of the Work, you should -immediately provide, within the Work, a prominent and unambiguous -statement of your status as Current Maintainer. You should also -announce your new status to the same pertinent community as -in 2b) above. - - -WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE -====================================================== - -This section contains important instructions, examples, and -recommendations for authors who are considering distributing their -works under this license. These authors are addressed as `you' in -this section. - -Choosing This License or Another License ----------------------------------------- - -If for any part of your work you want or need to use *distribution* -conditions that differ significantly from those in this license, then -do not refer to this license anywhere in your work but, instead, -distribute your work under a different license. You may use the text -of this license as a model for your own license, but your license -should not refer to the LPPL or otherwise give the impression that -your work is distributed under the LPPL. - -The document `modguide.tex' in the base LaTeX distribution explains -the motivation behind the conditions of this license. It explains, -for example, why distributing LaTeX under the GNU General Public -License (GPL) was considered inappropriate. Even if your work is -unrelated to LaTeX, the discussion in `modguide.tex' may still be -relevant, and authors intending to distribute their works under any -license are encouraged to read it. - -A Recommendation on Modification Without Distribution ------------------------------------------------------ - -It is wise never to modify a component of the Work, even for your own -personal use, without also meeting the above conditions for -distributing the modified component. While you might intend that such -modifications will never be distributed, often this will happen by -accident -- you may forget that you have modified that component; or -it may not occur to you when allowing others to access the modified -version that you are thus distributing it and violating the conditions -of this license in ways that could have legal implications and, worse, -cause problems for the community. It is therefore usually in your -best interest to keep your copy of the Work identical with the public -one. Many works provide ways to control the behavior of that work -without altering any of its licensed components. - -How to Use This License ------------------------ - -To use this license, place in each of the components of your work both -an explicit copyright notice including your name and the year the work -was authored and/or last substantially modified. Include also a -statement that the distribution and/or modification of that -component is constrained by the conditions in this license. - -Here is an example of such a notice and statement: - - %% pig.dtx - %% Copyright 2008 M. Y. Name - % - % This work may be distributed and/or modified under the - % conditions of the LaTeX Project Public License, either version 1.3 - % of this license or (at your option) any later version. - % The latest version of this license is in - % https://www.latex-project.org/lppl.txt - % and version 1.3c or later is part of all distributions of LaTeX - % version 2008 or later. - % - % This work has the LPPL maintenance status `maintained'. - % - % The Current Maintainer of this work is M. Y. Name. - % - % This work consists of the files pig.dtx and pig.ins - % and the derived file pig.sty. - -Given such a notice and statement in a file, the conditions -given in this license document would apply, with the `Work' referring -to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being -generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' -referring to any `LaTeX-Format', and both `Copyright Holder' and -`Current Maintainer' referring to the person `M. Y. Name'. - -If you do not want the Maintenance section of LPPL to apply to your -Work, change `maintained' above into `author-maintained'. -However, we recommend that you use `maintained', as the Maintenance -section was added in order to ensure that your Work remains useful to -the community even when you can no longer maintain and support it -yourself. - -Derived Works That Are Not Replacements ---------------------------------------- - -Several clauses of the LPPL specify means to provide reliability and -stability for the user community. They therefore concern themselves -with the case that a Derived Work is intended to be used as a -(compatible or incompatible) replacement of the original Work. If -this is not the case (e.g., if a few lines of code are reused for a -completely different task), then clauses 6b and 6d shall not apply. - - -Important Recommendations -------------------------- - - Defining What Constitutes the Work - - The LPPL requires that distributions of the Work contain all the - files of the Work. It is therefore important that you provide a - way for the licensee to determine which files constitute the Work. - This could, for example, be achieved by explicitly listing all the - files of the Work near the copyright notice of each file or by - using a line such as: - - % This work consists of all files listed in manifest.txt. - - in that place. In the absence of an unequivocal list it might be - impossible for the licensee to determine what is considered by you - to comprise the Work and, in such a case, the licensee would be - entitled to make reasonable conjectures as to which files comprise - the Work. diff --git a/macros/latex/contrib/litebook/README.md b/macros/latex/contrib/litebook/README.md deleted file mode 100644 index f546e115d7..0000000000 --- a/macros/latex/contrib/litebook/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# The `LiteBook` package - -This package provides a fresh cover and chapter design for book. - -**Welcome to pull requests -[here](https://github.com/xiamyphys/LiteBook).** - -## License - -This work may be distributed and/or modified under the conditions of the -[LaTeX Project Public License](http://www.latex-project.org/lppl.txt), -either version 1.3c of this license or (at your option) any later version. - -This work has the LPPL maintenance status `maintained`. - -The Current Maintainer of this work is -[Mingyu Hsia](https://www.ctan.org/author/xia-my).
\ No newline at end of file diff --git a/macros/latex/contrib/litebook/doc/cha/cha1.tex b/macros/latex/contrib/litebook/doc/cha/cha1.tex deleted file mode 100644 index d7a8e29acd..0000000000 --- a/macros/latex/contrib/litebook/doc/cha/cha1.tex +++ /dev/null @@ -1,100 +0,0 @@ -\chapter{Introduction to the Template} - -\section{The purpose of this package} -This template provides a streamlined design for typesetting books. Welcome to feedback bugs or ideas via email \href{mailto:xiamyphys@gmail.com}{\ttfamily xiamyphys@gmail.com} or \href{https://github.com/xiamyphys/litebook}{GitHub}. - -This template is used by me to reformat the textbook \href{https://github.com/xiamyphys/LaTeX-General-Relativity-R.Wald}{\emph{General Relativity, R. Wald}}, and I also use this template to typesetting my notes on \href{https://github.com/xiamyphys/Group-Theory-in-Physics}{\emph{Group Theory in Physics}}. You can download them on \href{https://github.com/xiamyphys}{GitHub}. - -\section{Installing \pkg{LiteBook} and loading it} -For portable version, simply download latest \verb|litebook.cls| file from \href{https://github.com/xiamyphys/LiteBook}{GitHub} or \href{https://ctan.org/pkg/litebook}{CTAN} and save it under your working directory. This way of installation is simple and convenient, but you have to manually update \verb|.cls| now and then. - -However, I strongly suggest that you should use terminal/cmd to implement the commands to update all the packages (and install this package) to the latest version or switch to portable version instead -\begin{verbatim} - sudo tlmgr update --self --all -\end{verbatim} - -If you are in some areas with awful Internet environment (such as GFW), you can choose a proper mirror source or use other means\footnote{Please comply with local network regulations.}. To learn more, please refer to \href{https://tex.stackexchange.com/questions/55437/how-do-i-update-my-tex-distribution}{How do I update my \hologo{TeX} distribution?} - -\section{Compatibility} -The test environments are macOS + Mac\hologo{TeX} 2024 / Overleaf / Ubuntu 22.04.2 and they all work fine for \hologo{pdfLaTeX} and \hologo{XeLaTeX} compilers. Windows and Unix platforms' unknown. The compiling time of current document via \hologo{pdfLaTeX} compiler is about \verb|1s| on \textsf{MacBook Air M2 8 GB (macOS 14.4.1)} when charging. - -\section{Cover configurations} -There are several lines of information and a cover image on the cover of this document, the corresponding commands are the following - -\begin{verbatim} - \cover{\UPLOWFadingImage[trim={0 {.9\paperheight} 0 0},clip]{cover} - [trim={0 {.5\paperheight} 0 0},clip]{cover}} - \title{\scshape The \pkg{LiteBook} Template} - \subtitle{Version 0.2b \today} \author{Hsia Mingyu} - \bioinfo{Hangzhou Dianzi University} - \press{\scshape The University of Chicago Press} -\end{verbatim} - -The same as the \pkg{book} class, the macro \cmd{title} could not be omitted, or it will return an error, and there will be a warning if the macro \cmd{author} is omitted. The \cmd{cover} can assign the format of the image on the cover and you can adjust the format of the image with the \pkg{fadingimage} package. - -\section{Math options of this template} -\begin{verbatim} - \documentclass[<math>]{litebook} -\end{verbatim} - -You can set the math font to be \mode{newtx} (default) or \mode{mtpro2}. - -\section{Preset packages and commands} -This template has preset with the following packages: -\begin{table}[!ht] - \centering - \begin{tabular}{l l l l l l l l} - \toprule - \pkg{amsthm} & \pkg{bm} & \pkg{cancel} & \pkg{derivative} & \pkg{esvect} & \pkg{extarrows} & \pkg{fixdif} & \pkg{nicefrac}\\ - \midrule - \pkg{nicematrix} & \pkg{physics2} & \pkg{refstyle} & \pkg{siunitx} & \pkg{booktabs} & \pkg{diagbox} & \pkg{fontawesome5} & \pkg{geometry}\\ - \midrule - \pkg{indentfirst} & \pkg{mdframed} & \pkg{multicol} & \pkg{multirow} & \pkg{setspace} & \pkg{tabularx} & \pkg{tikz} & \pkg{xcolor}\\ - \bottomrule - \end{tabular} -\end{table} - -You can click on them to go to the homepage to view the documentation. - -And commands \verb|\i|, \verb|\e|, \verb|\T| have been defined to input -$\i$, $\e$ in roman (non-italic) text and matrix transpose symbol $\T$, which can help you typeset math quickly. - -The template has preset the following commands for different type of references via \pkg{refstyle} package: \verb|\eqref{<label>}|, \verb|\figref{<label>}| and \verb|\tabref{<label>}|, you can add other ref commands via \pkg{refstyle} package. - -\section{Equation test} -The following is the Schr\"odinger Equation -\begin{equation} - \i\hbar\pdv{}t\Psi(\bm r,t)=\ab[-\frac{\hbar^2}{2m}\nabla^2+V(\bm r,t)]\Psi(\bm r,t) - \label{1.7.1} -\end{equation} - -\Eqref{1.7.1} is the time-dependent Schr\"odinger Equation for the nonrelativistic particle. - -\section{Figure and caption side by side test} -\begin{figure}[htbp] -\begin{minipage}{.32\textwidth} - \caption{A diagram showing the causal structure of spacetime in special relativity. The ``light cone'' of $p$ rather than a ``surface of simultaneity'' with $p$ now plays a fundamental role in determining the causal relationship of $p$ to other events.} - \label{1.1} -\end{minipage} -\hfill -\begin{minipage}{.64\textwidth} - \centering - \begin{tikzpicture} - \draw (-1,1) -- (1,-1) arc (-60:-120:2) -- (1,1) arc (-60:-120:2) arc (-60:-120:-2); - \shade [ball color=teal] (0,0) circle (.06) node [anchor=east,xshift=-1ex] {\sffamily\small p}; - \node at (0,1.5) {\sffamily\small Future}; - \path [->] (.6,1.5) edge [bend left] (.2,1); - \node at (0,-1.5) {\sffamily\small Past}; - \path [->] (.3,-1.5) edge [bend right] (.4,-1.3); - \node [left] at (-1,0) {\sffamily\small Spacelike related}; - \path [->] (-1,-.05) edge (-.6,-.1); - \path [->] (-1,.05) edge [bend left] (.6,.1); - \node [right] at (.8,.3) {\sffamily\small Future light cone}; - \path [->] (.8,.3) edge [bend left] (.6,.6); - \node [right] at (.8,-.3) {\sffamily\small Past light cone}; - \path [->] (.8,-.3) edge [bend right] (.6,-.6); - \end{tikzpicture} -\end{minipage} -\end{figure} - -Here, \figref{1.1} is a diagram showing the causal structure of spacetime in special relativity.
\ No newline at end of file diff --git a/macros/latex/contrib/litebook/doc/cha/cha2.tex b/macros/latex/contrib/litebook/doc/cha/cha2.tex deleted file mode 100644 index 5c6185f1d8..0000000000 --- a/macros/latex/contrib/litebook/doc/cha/cha2.tex +++ /dev/null @@ -1,49 +0,0 @@ -\chapter{Appendix: Package \pkg{thmlist}} - -This template has preset two \emph{styles} of theorem environment via the \pkg{thmlist} package, you can create a series of environments with the two styles -\begin{verbatim} - \mdflist{theorem, lemma, definition, proposition, postulate; - Theorem, Lemma, Definition, Proposition, Postulate; - DarkGreen, MidnightBlue, MidnightBlue, DarkOliveGreen, Indigo} - \amslist{remark, example, problem, solution; - Remark, Example, Problem, Solution; - DarkRed, Teal, Black, Black} -\end{verbatim} - -You can add the environments like the two commands above as you need. For more information, please refer to the document of the \pkg{thmlist} package. The following are the effects of the two styles. - -The next five environments show the style of the \pkg{mdframed} package. - -\begin{theorem}[The Theorem Environment]\leavevmode\newline - From WikipediA: A theorem is a statement that has been proved, or can be proved. -\end{theorem} - -\begin{lemma}[The Lemma Environment]\leavevmode\newline - From WikipediA: In mathematics, informal logic and argument mapping, a lemma (pl.: lemmas or lemmata) is a generally minor, proven proposition which is used as a stepping stone to a larger result. For that reason, it is also known as a ``helping theorem'' or an ``auxiliary theorem''. -\end{lemma} - -\begin{definition}[The Definition Environment]\leavevmode\newline - From WikipediA: A definition is used to give a precise meaning to a new term, by describing a condition which unambiguously qualifies what a mathematical term is and is not. -\end{definition} - -\begin{proposition}[The Proposition Environment]\leavevmode\newline - From WikipediA: A proposition is a central concept in the philosophy of language, semantics, logic, and related fields, often characterized as the primary bearer of truth or falsity. -\end{proposition} - -\begin{postulate}[The Postulate Environment]\leavevmode\newline - From WikipediA: A postulate is a statement everyone agrees to be correct. -\end{postulate} - -The next four environments show the style of the \pkg{amsthm} package. - -\begin{remark}[The Remark Environment]\leavevmode\newline - From Math StackExchange: The remark device is used for material that is is too long to be included in parentheses, while it deserves greater prominence than a footnote. -\end{remark} - -\example{ - From Cambridge Dictionary: The example is a way of helping someone to understand something by showing them how it is used.} - -\problem{ - From Springer: A problem is generally considered to be a task, a situation, or person which is difficult to deal with or control due to complexity and intransparency.} - -\solution{The quick brown fox jumps over the lazy dog.}
\ No newline at end of file diff --git a/macros/latex/contrib/litebook/doc/figures/cover.jpeg b/macros/latex/contrib/litebook/doc/figures/cover.jpeg Binary files differdeleted file mode 100644 index 2b6036083d..0000000000 --- a/macros/latex/contrib/litebook/doc/figures/cover.jpeg +++ /dev/null diff --git a/macros/latex/contrib/litebook/doc/litebook.pdf b/macros/latex/contrib/litebook/doc/litebook.pdf Binary files differdeleted file mode 100644 index 642f95c042..0000000000 --- a/macros/latex/contrib/litebook/doc/litebook.pdf +++ /dev/null diff --git a/macros/latex/contrib/litebook/doc/litebook.tex b/macros/latex/contrib/litebook/doc/litebook.tex deleted file mode 100644 index 5ec4378afe..0000000000 --- a/macros/latex/contrib/litebook/doc/litebook.tex +++ /dev/null @@ -1,32 +0,0 @@ -\documentclass{litebook} - -\cover{\UPLOWFadingImage[trim={0 {.9\paperheight} 0 0},clip]{cover} - [trim={0 {.5\paperheight} 0 0},clip]{cover}} -\title{The \pkg{LiteBook} Template} -\subtitle{Version 0.2b \today} -\author{Hsia Mingyu} -\bioinfo{Hangzhou Dianzi University} -\press{\scshape\textcolor{teal}{\faIcon{telegram-plane}}Hangzhou in Late Spring 2024} - -\mdflist{theorem, lemma, definition, proposition, postulate; - Theorem, Lemma, Definition, Proposition, Postulate; - DarkGreen, MidnightBlue, MidnightBlue, DarkOliveGreen, Indigo} -\amslist{remark, example, problem, solution; - Remark, Example, Problem, Solution; - DarkRed, Teal, Black, Black} - -\begin{document} - -\let\theremark=\relax -\def\theproblem{\arabic{problem}} -\def\theexample{\arabic{example}} -\let\thesolution=\relax - -\maketitle -\frontmatter -\tableofcontents -\mainmatter -\input{cha/cha1.tex} -\input{cha/cha2.tex} - -\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/litebook/tex/litebook.cls b/macros/latex/contrib/litebook/tex/litebook.cls deleted file mode 100644 index 0489b2f031..0000000000 --- a/macros/latex/contrib/litebook/tex/litebook.cls +++ /dev/null @@ -1,200 +0,0 @@ -%% **************************************************************************************************** -%% Copyright 2024 by Mingyu Hsia <xiamyphys@gmail.com> * -%% * -%% This work may be distributed and/or modified under * ***** * * * -%% the conditions of the LaTeX Project Public License * ** * * *** * * * -%% * * ** * * * ** * -%% http://www.latex-project.org/lppl.txt * * * * ***** ** * -%% * * ** * * * * * -%% either version 1.3c of this license or any later ***** ** * * *** * * * -%% version. * -%% * -%% This work has the LPPL maintenance status `maintained'. * -%% * -%% The Current Maintainer of this work is Mingyu Hsia. * -%% * -%% This work consists of the files litebook.cls, * -%% and README.md. * -%% available at https://github.com/xiamyphys/LiteBook * -%% **************************************************************************************************** -% !Mode:: "TeX:UTF-8" -\NeedsTeXFormat{LaTeX2e} -\PassOptionsToPackage{quiet}{xeCJK} -\ProvidesClass{litebook}[2024/03/26 v0.2b LiteBook document class] -\RequirePackage{kvoptions} -\RequirePackage{etoolbox} -\SetupKeyvalOptions{family=LITE, prefix=LITE@, setkeys=\kvsetkeys} -\def\ekv#1{\kvsetkeys{LITE}{#1}} - -\DeclareStringOption[newtx]{math} -\DeclareVoidOption{newtx}{\ekv{math=newtx}} -\DeclareVoidOption{mtpro2}{\ekv{math=mtpro2}} - -\DeclareDefaultOption{\PassOptionsToClass{\CurrentOption}{book}} -\ProcessKeyvalOptions*\relax -\LoadClass[letterpaper,11pt,openright]{book} - -\RequirePackage{geometry,indentfirst,setspace,enumitem,booktabs,tabularx,diagbox,multicol,multirow} -\geometry{lmargin = .8 in,rmargin = 1.2 in,tmargin = 1 in,bmargin = 1 in} -\setlength{\headheight}{13.6pt} - -\RequirePackage{lipsum,hologo} -\hologoFontSetup{general=\sffamily} -\RequirePackage{ifxetex} -\ifXeTeX - \RequirePackage{ctex} - \RequirePackage[quiet,no-math]{fontspec} - \RequirePackage{zhlipsum} -\else - \usepackage[T1]{fontenc} -\fi - -\RequirePackage{graphics,graphicx} -\graphicspath{{./figure/}{./figures/}{./image/}{./images/}{./graphics/}{./graphic/}{./pictures/}{./picture/}} - -\RequirePackage[labelsep=period,labelfont={bf,sf},font=small]{caption} -\RequirePackage[nokeyprefix]{refstyle} -\newref{eq}{refcmd=(\ref{#1}),name={\sffamily eq.~},Name={\sffamily Eq.~}} -\newref{fig}{name={\sffamily fig.~},Name={\sffamily Fig.~}} -\newref{tab}{name={\sffamily tab.~},Name={\sffamily Tab.~}} - -\RequirePackage{tocloft} -\setlength{\cftbeforetoctitleskip}{6\p@} -\setlength{\cftaftertoctitleskip}{24\p@} -\setlength{\cftbeforesecskip}{3\p@} -\def\contentsname{\sffamily\scshape\hfill Contents\hfill} -\setcounter{tocdepth}{1} - -\def\@makechapterhead#1{% - \vspace*{\p@}{% - \parindent \z@ \raggedright \normalfont - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \parbox{1 in} - {\centering\HUGE\normalfont\bfseries\textcolor{darkgray}\thechapter\vskip10\p@\normalsize\bfseries\textcolor{darkgray}{\bfseries\sffamily\scshape \@chapapp}}% - \tikz[baseline,overlay] - \draw[line width=3pt,dotted,dash pattern=on 0pt off 8pt, gray](0,-.8)--(0,1.2); - \fi - \fi - \interlinepenalty\@M\hspace*{2em} - \huge\bfseries\sffamily #1\par\nobreak - \vskip 36\p@ -}} -\def\@makeschapterhead#1{% - \gdef\s@chapter{#1} - \addcontentsline{toc}{chapter}{\s@chapter} - \vspace*{4\p@}% - {\parindent \z@ \raggedright - \normalfont - \interlinepenalty\@M - \huge \bfseries \sffamily #1\par\nobreak - \vskip 40\p@ -}} -\let\cleardoublepage=\clearpage -\renewcommand*{\cleardoublepage}{\clearpage\if@twoside \ifodd\c@page\else -\ifnum \thechapter=0 - \vspace*{\fill} - {\centering\itshape\Large This page was intentionally left blank.\par} - \vspace{\fill} -\else - \clearpage% - \thispagestyle{empty}% - \null\clearpage -\fi -\thispagestyle{empty}\newpage -\if@twocolumn\hbox{}\newpage\fi\fi\fi} - -\RequirePackage{fancyhdr} -\pagestyle{fancy} - \let\oldheadrule\headrule - \renewcommand{\headrule}{{\color{gray}\oldheadrule}} - \renewcommand{\headrulewidth}{1pt} - \fancyhead[OL]{\textsc{\color{darkgray}\sffamily\nouppercase\leftmark}} - \fancyhead[OR]{\color{darkgray}\sffamily\thepage} - \fancyhead[ER]{\textsc{\color{darkgray}\sffamily\nouppercase\rightmark}} - \fancyhead[EL]{\color{darkgray}\sffamily\thepage} - \cfoot{} - -\RequirePackage{tikz} -\usetikzlibrary{arrows,tikzmark,patterns,calc} -\RequirePackage{fadingimage} -\tikzset{>=stealth', -every picture/.append style={% - line join = round, - line cap = round, - thick -}} - -\RequirePackage[fixed]{fontawesome5} -\AddToHook{cmd/faIcon/before}{% - \begingroup\fontsize{\fpeval{\f@size*.9}}{0}\selectfont -} -\AddToHook{cmd/faIcon/after}{\endgroup} - -\RequirePackage[svgnames]{xcolor} -\RequirePackage[colorlinks,linkcolor=DarkGreen,urlcolor=Teal]{hyperref} -\def\pkg#1{\textcolor{DarkGreen}{\textsf{#1}}} -\def\mode#1{\textcolor{Indigo}{\textsf{#1}}} -\def\cmd#1{\textcolor{MidnightBlue}{\texttt{\string#1}}} - -\RequirePackage{datetime}\yyyymmdddate -\def\subtitle#1{\gdef\@subtitle{#1}} -\def\cover#1{\gdef\@cover{#1}} -\def\bioinfo#1{\gdef\@bioinfo{#1}} -\def\press#1{\gdef\@press{#1}} -\RequirePackage{anyfontsize} -\def\HUGE{\@setfontsize\HUGE{40}{50}} -\def\HUge{\@setfontsize\HUGE{35}{45}} - -\renewcommand*\maketitle{% -\begin{titlepage} - \newgeometry{margin = 0 in} - \ifcsname @cover\endcsname\@cover\vskip80\p@\else\vspace*{80\p@}\fi - \parindent=0pt - \centering\sffamily\bfseries - \HUge\@title\normalfont - \ifcsname @subtitle\endcsname - \vskip2ex\LARGE\sffamily\bfseries\@subtitle\normalfont\fi - \ifcsname @author\endcsname - \vskip4ex\LARGE\sffamily\bfseries\@author\normalfont\fi - \ifcsname @bioinfo\endcsname - \vskip2ex\Large\sffamily\bfseries\@bioinfo\normalfont\fi - \ifcsname @press\endcsname\vfill - \parbox[t]{\textwidth}{\centering - \sffamily\bfseries\large\@press\normalfont\vskip75\p@}\fi - \clearpage - \vspace*{\fill} - {\centering \Huge\sffamily\bfseries\itshape\@title\par} - \vspace{\fill} - \restoregeometry -\end{titlepage}} - -\ifdefstring{\LITE@math}{mtpro2}{% - \RequirePackage{amssymb} - \let\Bbbk\relax - \RequirePackage[mtpscr,mtpccal,mtpfrak]{mtpro2} - \RequirePackage[mono=false]{libertine} -}{\relax} -\ifdefstring{\LITE@math}{newtx}{% - \RequirePackage[libertine,mono=false]{newtx} -}{\relax} -\let\openbox\relax\def\hmmax{0}\def\bmmax{0} -\RequirePackage{physics2,bm,fixdif,derivative,cancel,extarrows,siunitx,nicefrac,nicematrix} -\usephysicsmodule{ab,braket,diagmat,doubleprod,xmat,ab.legacy,op.legacy} -\RequirePackage[e]{esvect} -\def\i{\mathrm i} -\def\e{\mathrm e} -\def\T{\mathsf T} -\AtBeginDocument{% - \setlength{\abovedisplayskip}{9pt} - \setlength{\belowdisplayskip}{9pt} -} -\numberwithin{equation}{section} -\RequirePackage[amscounter=section,amsstyle=definition, - mdfcounter=section,mdfstyle=mdflist]{thmlist} -\mdfsetup{skipabove=2pt,skipbelow=2pt} -\mdfdefinestyle{mdflist}{% - hidealllines=true, leftline=true, - linewidth=.5ex, innerleftmargin=1.5ex, - innerrightmargin=0pt, innertopmargin=-1.75ex, - innerbottommargin=0pt}
\ No newline at end of file diff --git a/macros/latex/contrib/litesolution/License b/macros/latex/contrib/litesolution/License deleted file mode 100644 index 842cf85e3c..0000000000 --- a/macros/latex/contrib/litesolution/License +++ /dev/null @@ -1,415 +0,0 @@ -The LaTeX Project Public License -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- - -LPPL Version 1.3c 2008-05-04 - -Copyright 1999 2002-2008 LaTeX3 Project - Everyone is allowed to distribute verbatim copies of this - license document, but modification of it is not allowed. - - -PREAMBLE -======== - -The LaTeX Project Public License (LPPL) is the primary license under -which the LaTeX kernel and the base LaTeX packages are distributed. - -You may use this license for any work of which you hold the copyright -and which you wish to distribute. This license may be particularly -suitable if your work is TeX-related (such as a LaTeX package), but -it is written in such a way that you can use it even if your work is -unrelated to TeX. - -The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', -below, gives instructions, examples, and recommendations for authors -who are considering distributing their works under this license. - -This license gives conditions under which a work may be distributed -and modified, as well as conditions under which modified versions of -that work may be distributed. - -We, the LaTeX3 Project, believe that the conditions below give you -the freedom to make and distribute modified versions of your work -that conform with whatever technical specifications you wish while -maintaining the availability, integrity, and reliability of -that work. If you do not see how to achieve your goal while -meeting these conditions, then read the document `cfgguide.tex' -and `modguide.tex' in the base LaTeX distribution for suggestions. - - -DEFINITIONS -=========== - -In this license document the following terms are used: - - `Work' - Any work being distributed under this License. - - `Derived Work' - Any work that under any applicable law is derived from the Work. - - `Modification' - Any procedure that produces a Derived Work under any applicable - law -- for example, the production of a file containing an - original file associated with the Work or a significant portion of - such a file, either verbatim or with modifications and/or - translated into another language. - - `Modify' - To apply any procedure that produces a Derived Work under any - applicable law. - - `Distribution' - Making copies of the Work available from one person to another, in - whole or in part. Distribution includes (but is not limited to) - making any electronic components of the Work accessible by - file transfer protocols such as FTP or HTTP or by shared file - systems such as Sun's Network File System (NFS). - - `Compiled Work' - A version of the Work that has been processed into a form where it - is directly usable on a computer system. This processing may - include using installation facilities provided by the Work, - transformations of the Work, copying of components of the Work, or - other activities. Note that modification of any installation - facilities provided by the Work constitutes modification of the Work. - - `Current Maintainer' - A person or persons nominated as such within the Work. If there is - no such explicit nomination then it is the `Copyright Holder' under - any applicable law. - - `Base Interpreter' - A program or process that is normally needed for running or - interpreting a part or the whole of the Work. - - A Base Interpreter may depend on external components but these - are not considered part of the Base Interpreter provided that each - external component clearly identifies itself whenever it is used - interactively. Unless explicitly specified when applying the - license to the Work, the only applicable Base Interpreter is a - `LaTeX-Format' or in the case of files belonging to the - `LaTeX-format' a program implementing the `TeX language'. - - - -CONDITIONS ON DISTRIBUTION AND MODIFICATION -=========================================== - -1. Activities other than distribution and/or modification of the Work -are not covered by this license; they are outside its scope. In -particular, the act of running the Work is not restricted and no -requirements are made concerning any offers of support for the Work. - -2. You may distribute a complete, unmodified copy of the Work as you -received it. Distribution of only part of the Work is considered -modification of the Work, and no right to distribute such a Derived -Work may be assumed under the terms of this clause. - -3. You may distribute a Compiled Work that has been generated from a -complete, unmodified copy of the Work as distributed under Clause 2 -above, as long as that Compiled Work is distributed in such a way that -the recipients may install the Compiled Work on their system exactly -as it would have been installed if they generated a Compiled Work -directly from the Work. - -4. If you are the Current Maintainer of the Work, you may, without -restriction, modify the Work, thus creating a Derived Work. You may -also distribute the Derived Work without restriction, including -Compiled Works generated from the Derived Work. Derived Works -distributed in this manner by the Current Maintainer are considered to -be updated versions of the Work. - -5. If you are not the Current Maintainer of the Work, you may modify -your copy of the Work, thus creating a Derived Work based on the Work, -and compile this Derived Work, thus creating a Compiled Work based on -the Derived Work. - -6. If you are not the Current Maintainer of the Work, you may -distribute a Derived Work provided the following conditions are met -for every component of the Work unless that component clearly states -in the copyright notice that it is exempt from that condition. Only -the Current Maintainer is allowed to add such statements of exemption -to a component of the Work. - - a. If a component of this Derived Work can be a direct replacement - for a component of the Work when that component is used with the - Base Interpreter, then, wherever this component of the Work - identifies itself to the user when used interactively with that - Base Interpreter, the replacement component of this Derived Work - clearly and unambiguously identifies itself as a modified version - of this component to the user when used interactively with that - Base Interpreter. - - b. Every component of the Derived Work contains prominent notices - detailing the nature of the changes to that component, or a - prominent reference to another file that is distributed as part - of the Derived Work and that contains a complete and accurate log - of the changes. - - c. No information in the Derived Work implies that any persons, - including (but not limited to) the authors of the original version - of the Work, provide any support, including (but not limited to) - the reporting and handling of errors, to recipients of the - Derived Work unless those persons have stated explicitly that - they do provide such support for the Derived Work. - - d. You distribute at least one of the following with the Derived Work: - - 1. A complete, unmodified copy of the Work; - if your distribution of a modified component is made by - offering access to copy the modified component from a - designated place, then offering equivalent access to copy - the Work from the same or some similar place meets this - condition, even though third parties are not compelled to - copy the Work along with the modified component; - - 2. Information that is sufficient to obtain a complete, - unmodified copy of the Work. - -7. If you are not the Current Maintainer of the Work, you may -distribute a Compiled Work generated from a Derived Work, as long as -the Derived Work is distributed to all recipients of the Compiled -Work, and as long as the conditions of Clause 6, above, are met with -regard to the Derived Work. - -8. The conditions above are not intended to prohibit, and hence do not -apply to, the modification, by any method, of any component so that it -becomes identical to an updated version of that component of the Work as -it is distributed by the Current Maintainer under Clause 4, above. - -9. Distribution of the Work or any Derived Work in an alternative -format, where the Work or that Derived Work (in whole or in part) is -then produced by applying some process to that format, does not relax or -nullify any sections of this license as they pertain to the results of -applying that process. - -10. a. A Derived Work may be distributed under a different license - provided that license itself honors the conditions listed in - Clause 6 above, in regard to the Work, though it does not have - to honor the rest of the conditions in this license. - - b. If a Derived Work is distributed under a different license, that - Derived Work must provide sufficient documentation as part of - itself to allow each recipient of that Derived Work to honor the - restrictions in Clause 6 above, concerning changes from the Work. - -11. This license places no restrictions on works that are unrelated to -the Work, nor does this license place any restrictions on aggregating -such works with the Work by any means. - -12. Nothing in this license is intended to, or may be used to, prevent -complete compliance by all parties with all applicable laws. - - -NO WARRANTY -=========== - -There is no warranty for the Work. Except when otherwise stated in -writing, the Copyright Holder provides the Work `as is', without -warranty of any kind, either expressed or implied, including, but not -limited to, the implied warranties of merchantability and fitness for a -particular purpose. The entire risk as to the quality and performance -of the Work is with you. Should the Work prove defective, you assume -the cost of all necessary servicing, repair, or correction. - -In no event unless required by applicable law or agreed to in writing -will The Copyright Holder, or any author named in the components of the -Work, or any other party who may distribute and/or modify the Work as -permitted above, be liable to you for damages, including any general, -special, incidental or consequential damages arising out of any use of -the Work or out of inability to use the Work (including, but not limited -to, loss of data, data being rendered inaccurate, or losses sustained by -anyone as a result of any failure of the Work to operate with any other -programs), even if the Copyright Holder or said author or said other -party has been advised of the possibility of such damages. - - -MAINTENANCE OF THE WORK -======================= - -The Work has the status `author-maintained' if the Copyright Holder -explicitly and prominently states near the primary copyright notice in -the Work that the Work can only be maintained by the Copyright Holder -or simply that it is `author-maintained'. - -The Work has the status `maintained' if there is a Current Maintainer -who has indicated in the Work that they are willing to receive error -reports for the Work (for example, by supplying a valid e-mail -address). It is not required for the Current Maintainer to acknowledge -or act upon these error reports. - -The Work changes from status `maintained' to `unmaintained' if there -is no Current Maintainer, or the person stated to be Current -Maintainer of the work cannot be reached through the indicated means -of communication for a period of six months, and there are no other -significant signs of active maintenance. - -You can become the Current Maintainer of the Work by agreement with -any existing Current Maintainer to take over this role. - -If the Work is unmaintained, you can become the Current Maintainer of -the Work through the following steps: - - 1. Make a reasonable attempt to trace the Current Maintainer (and - the Copyright Holder, if the two differ) through the means of - an Internet or similar search. - - 2. If this search is successful, then enquire whether the Work - is still maintained. - - a. If it is being maintained, then ask the Current Maintainer - to update their communication data within one month. - - b. If the search is unsuccessful or no action to resume active - maintenance is taken by the Current Maintainer, then announce - within the pertinent community your intention to take over - maintenance. (If the Work is a LaTeX work, this could be - done, for example, by posting to comp.text.tex.) - - 3a. If the Current Maintainer is reachable and agrees to pass - maintenance of the Work to you, then this takes effect - immediately upon announcement. - - b. If the Current Maintainer is not reachable and the Copyright - Holder agrees that maintenance of the Work be passed to you, - then this takes effect immediately upon announcement. - - 4. If you make an `intention announcement' as described in 2b. above - and after three months your intention is challenged neither by - the Current Maintainer nor by the Copyright Holder nor by other - people, then you may arrange for the Work to be changed so as - to name you as the (new) Current Maintainer. - - 5. If the previously unreachable Current Maintainer becomes - reachable once more within three months of a change completed - under the terms of 3b) or 4), then that Current Maintainer must - become or remain the Current Maintainer upon request provided - they then update their communication data within one month. - -A change in the Current Maintainer does not, of itself, alter the fact -that the Work is distributed under the LPPL license. - -If you become the Current Maintainer of the Work, you should -immediately provide, within the Work, a prominent and unambiguous -statement of your status as Current Maintainer. You should also -announce your new status to the same pertinent community as -in 2b) above. - - -WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE -====================================================== - -This section contains important instructions, examples, and -recommendations for authors who are considering distributing their -works under this license. These authors are addressed as `you' in -this section. - -Choosing This License or Another License ----------------------------------------- - -If for any part of your work you want or need to use *distribution* -conditions that differ significantly from those in this license, then -do not refer to this license anywhere in your work but, instead, -distribute your work under a different license. You may use the text -of this license as a model for your own license, but your license -should not refer to the LPPL or otherwise give the impression that -your work is distributed under the LPPL. - -The document `modguide.tex' in the base LaTeX distribution explains -the motivation behind the conditions of this license. It explains, -for example, why distributing LaTeX under the GNU General Public -License (GPL) was considered inappropriate. Even if your work is -unrelated to LaTeX, the discussion in `modguide.tex' may still be -relevant, and authors intending to distribute their works under any -license are encouraged to read it. - -A Recommendation on Modification Without Distribution ------------------------------------------------------ - -It is wise never to modify a component of the Work, even for your own -personal use, without also meeting the above conditions for -distributing the modified component. While you might intend that such -modifications will never be distributed, often this will happen by -accident -- you may forget that you have modified that component; or -it may not occur to you when allowing others to access the modified -version that you are thus distributing it and violating the conditions -of this license in ways that could have legal implications and, worse, -cause problems for the community. It is therefore usually in your -best interest to keep your copy of the Work identical with the public -one. Many works provide ways to control the behavior of that work -without altering any of its licensed components. - -How to Use This License ------------------------ - -To use this license, place in each of the components of your work both -an explicit copyright notice including your name and the year the work -was authored and/or last substantially modified. Include also a -statement that the distribution and/or modification of that -component is constrained by the conditions in this license. - -Here is an example of such a notice and statement: - - %% pig.dtx - %% Copyright 2008 M. Y. Name - % - % This work may be distributed and/or modified under the - % conditions of the LaTeX Project Public License, either version 1.3 - % of this license or (at your option) any later version. - % The latest version of this license is in - % https://www.latex-project.org/lppl.txt - % and version 1.3c or later is part of all distributions of LaTeX - % version 2008 or later. - % - % This work has the LPPL maintenance status `maintained'. - % - % The Current Maintainer of this work is M. Y. Name. - % - % This work consists of the files pig.dtx and pig.ins - % and the derived file pig.sty. - -Given such a notice and statement in a file, the conditions -given in this license document would apply, with the `Work' referring -to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being -generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' -referring to any `LaTeX-Format', and both `Copyright Holder' and -`Current Maintainer' referring to the person `M. Y. Name'. - -If you do not want the Maintenance section of LPPL to apply to your -Work, change `maintained' above into `author-maintained'. -However, we recommend that you use `maintained', as the Maintenance -section was added in order to ensure that your Work remains useful to -the community even when you can no longer maintain and support it -yourself. - -Derived Works That Are Not Replacements ---------------------------------------- - -Several clauses of the LPPL specify means to provide reliability and -stability for the user community. They therefore concern themselves -with the case that a Derived Work is intended to be used as a -(compatible or incompatible) replacement of the original Work. If -this is not the case (e.g., if a few lines of code are reused for a -completely different task), then clauses 6b and 6d shall not apply. - - -Important Recommendations -------------------------- - - Defining What Constitutes the Work - - The LPPL requires that distributions of the Work contain all the - files of the Work. It is therefore important that you provide a - way for the licensee to determine which files constitute the Work. - This could, for example, be achieved by explicitly listing all the - files of the Work near the copyright notice of each file or by - using a line such as: - - % This work consists of all files listed in manifest.txt. - - in that place. In the absence of an unequivocal list it might be - impossible for the licensee to determine what is considered by you - to comprise the Work and, in such a case, the licensee would be - entitled to make reasonable conjectures as to which files comprise - the Work. diff --git a/macros/latex/contrib/litesolution/README.md b/macros/latex/contrib/litesolution/README.md deleted file mode 100644 index 452c7e9de9..0000000000 --- a/macros/latex/contrib/litesolution/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# The `LiteSolution` class - -The LiteSolution class is designed for typesetting solutions of problems in exams, textbooks, etc. - -**Welcome to pull requests [here](https://github.com/xiamyphys/litesolution/pulls).** - -## License - -This work may be distributed and/or modified under the conditions of the [LaTeX Project Public License](http://www.latex-project.org/lppl.txt), either version 1.3c of this license or (at your option) any later version. - -This work has the LPPL maintenance status `maintained`. - -The Current Maintainer of this work is [Mingyu XIA](https://www.ctan.org/author/xia-my). - -## Derivative Works - -- [notebeamer](https://ctan.org/pkg/notebeamer): Package provides macros for inputting slides on note papers quickly. - -- [fadingimage](https://ctan.org/pkg/fadingimage): Package provides macros for inputting full width picture at the edges of pages quickly. diff --git a/macros/latex/contrib/litesolution/doc/figure/Beautiful-realities.jpeg b/macros/latex/contrib/litesolution/doc/figure/Beautiful-realities.jpeg Binary files differdeleted file mode 100644 index 2b6036083d..0000000000 --- a/macros/latex/contrib/litesolution/doc/figure/Beautiful-realities.jpeg +++ /dev/null diff --git a/macros/latex/contrib/litesolution/doc/figure/schrodinger.pdf b/macros/latex/contrib/litesolution/doc/figure/schrodinger.pdf Binary files differdeleted file mode 100644 index c9278e8113..0000000000 --- a/macros/latex/contrib/litesolution/doc/figure/schrodinger.pdf +++ /dev/null diff --git a/macros/latex/contrib/litesolution/doc/figure/universe.pdf b/macros/latex/contrib/litesolution/doc/figure/universe.pdf Binary files differdeleted file mode 100644 index 244c7770a7..0000000000 --- a/macros/latex/contrib/litesolution/doc/figure/universe.pdf +++ /dev/null diff --git a/macros/latex/contrib/litesolution/doc/figure/universe.tex b/macros/latex/contrib/litesolution/doc/figure/universe.tex deleted file mode 100644 index 7cce50ecd2..0000000000 --- a/macros/latex/contrib/litesolution/doc/figure/universe.tex +++ /dev/null @@ -1,44 +0,0 @@ -\documentclass[svgnames,tikz]{standalone} - -\usepackage{xcolor} -\usepackage{newtxtext,mtpro2,cancel,physics2,xfrac} -\usephysicsmodule{ab.legacy} -\usetikzlibrary{tikzmark} -\tikzset{every node/.style={align=center,DarkSlateGray!30}, - every path/.style={DarkSlateGray!30,line cap=round}} - -\begin{document}\tikz{ - \node [above right] at (0,0) {$\color{DarkSlateGray!30} - \tikzmarknode a\Psi=\displaystyle\tikzmarknode b\int - \tikzmarknode c{\mathrm e}^{ - \sfrac{\tikzmarknode d{\mathrm i}}{\tikzmarknode e\hbar} - \int\ab(\frac{\tikzmarknode fR}{16\pi \tikzmarknode gG}-\frac14\tikzmarknode hF^2 - +\overline\psi\mathrm i\tikzmarknode{i}{\cancel D}\psi-\tikzmarknode j\lambda - \tikzmarknode k{\varphi\overline\psi}\psi - +\abs{D\tikzmarknode l\varphi}^2-V(\varphi))}$}; - \draw ([yshift=-1ex] a.south) coordinate (A) --++ (0,-.5) - node [scale=.45,below] {Schr\"odinger\\\footnotesize wave function}; - \draw ([yshift=1ex] b.north) coordinate (B) --++ (0,.55) - node [scale=.45,above] {\footnotesize path integral\\Feynmann}; - \draw ([yshift=-1ex] c.south) coordinate (C) --++ (0,-.7) - node [scale=.45,below] {Euler\\\footnotesize exponential}; - \draw ([yshift=1ex] d.north) coordinate (D) --++ (0,.45) - node [scale=.45,above,xshift=1ex] {\footnotesize imaginary unit}; - \draw ([yshift=-1ex] e.south) coordinate (E) --++ (0,-.5) - node [scale=.45,below,xshift=2ex] {Planck\\\footnotesize quantum}; - \draw ([yshift=1ex] f.north) coordinate (F) --++ (0,.7) - node [scale=.45,above] {\footnotesize spacetime-relativity\\Einstein}; - \draw ([yshift=-1ex] g.south) coordinate (G) --++ (0,-.5) - node [scale=.45,below] {Newton\\\footnotesize gravitation}; - \draw ([yshift=1ex] h.north) coordinate (H) --++ (0,.5) - node [scale=.45,above,xshift=5ex] {\footnotesize strong/weak/e.m. interactions\\Maxwell Yang-Mills}; - \draw ([yshift=-1ex] i.south) coordinate (I) --++ (0,-.6) - node [scale=.45,below] {Dirac\\\footnotesize relativistic wave function}; - \draw ([yshift=-1ex] j.south) coordinate (J) --++ (0,-.2) - node [scale=.45,below,xshift=3ex] {Kobayashi-Maskawa\\\footnotesize CKM matrix}; - \draw ([yshift=1ex] k.north) coordinate (K) --++ (0,.5) - node [scale=.45,above] {\footnotesize $\varphi$ - $\psi$ interaction\\Yukawa}; - \draw ([yshift=-1ex] l.south) coordinate (L) --++ (0,-.3) - node [scale=.45,below] {Higgs\\\footnotesize Boson}; - \foreach \x in {A,B,...,L}\fill [DarkSlateGray!30] (\x) circle (.025);} -\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/litesolution/doc/litesolution.pdf b/macros/latex/contrib/litesolution/doc/litesolution.pdf Binary files differdeleted file mode 100644 index eb14917941..0000000000 --- a/macros/latex/contrib/litesolution/doc/litesolution.pdf +++ /dev/null diff --git a/macros/latex/contrib/litesolution/doc/litesolution.tex b/macros/latex/contrib/litesolution/doc/litesolution.tex deleted file mode 100644 index 34d82694a2..0000000000 --- a/macros/latex/contrib/litesolution/doc/litesolution.tex +++ /dev/null @@ -1,209 +0,0 @@ -%% ****************************************************** -%% * This work may be distributed and/or modified under * -%% * the conditions of the LaTeX Project Public License * -%% * http://www.latex-project.org/lppl.txt * -%% * either version 1.3c of this license or any later * -%% * version. * -%% ****************************************************** -\documentclass[mtpro2,twoside,openany]{litesolution} -\usepackage[listings]{tcolorbox} -\usepackage{pmboxdraw} -\lstset{language=[LaTeX]TeX,basicstyle=\small\ttfamily,breaklines=true,columns=flexible} - -\coverset{ - title = \sffamily The \pkg{LiteSolution} Class, - subtitle = \sffamily\scshape Hangzhou Dianzi University, - bioinfo = Mingyu XIA (\mailto{xiamyphys@gmail.com})\quad|\quad Version 2.4a, - covercolor = DarkSeaGreen, - coverhead = universe, - coverhead.rotate = 3, - cover = schrodinger, - cover.pattern = sixpointed stars -} - -\begin{document} - -\maketitle - -\frontmatter -\tableofcontents -\mainmatter - -\chapterimage{\UPFadingImage*[trim={0 {.9\paperheight} 0 0},clip]{Beautiful-realities}} - -\chapter{Introduction to the \pkg{LiteSolution} Class} - -\section{Preface} - -This is the document for the \pkg{LiteSolution} class, which is designed for typesetting solutions of problems in exams, textbooks, etc. - -Welcome to feedback bugs or ideas via email \href{mailto:xiamyphys@gmail.com}{\ttfamily xiamyphys@gmail.com} or \href{https://github.com/xiamyphys/litesolution}{GitHub}. - -\subsection{Installing \pkg{LiteSolution} and loading it} - -Simply download \verb|litesolution.cls| file from \href{https://github.com/xiamyphys/litesolution}{GitHub} or \href{https://ctan.org/pkg/litesolution}{CTAN} and save it under your working directory. However, I strongly suggest to use terminal to install and update all packages to the latest version - -\begin{verbatim} - sudo tlmgr update --self --all -\end{verbatim} - -To learn more, please refer to \href{https://tex.stackexchange.com/questions/55437/how-do-i-update-my-tex-distribution}{How do I update my \hologo{TeX} distribution?} - -\subsection{Compatibility} - -The test environments are macOS + Mac\hologo{TeX} 2024 / Overleaf / Ubuntu 22.04.2 + \hologo{TeX} Live 2024 and they all work fine for \hologo{pdfLaTeX} and \hologo{XeLaTeX} compilers. Windows and Unix platforms compatibility unknown. - -\section{Global Options of this Class} - -\begin{verbatim} - \documentclass[⟨options⟩]{litesolution} -\end{verbatim} - -\subsection{The \mode{answer} option} - -The \mode{hideanswer} mode can hide contents in the \cmd{solution} environment and \cmd{ans} command, and make the effect of \cmd{emph} weaker. - -\subsection{The \mode{math} option} - -The \mode{mtpro2}, \mode{newtx} and \mode{newtxsf} modes can format the font of formulas in the document. Please check if mtpro2 font has been installed on your computer correctly before using \mode{mtpro2} mode. - -\section{Derivative Works} -\begin{description} - \item[Package \pkg{notebeamer}] provides macros for inputting slides on note papers quickly. - \item[Package \pkg{fadingimage}] provides macros for inputting full width picture at the edges of pages quickly. -\end{description} - -\chapter{Settings \& Usages of this Class} - -\section{Cover Configurations} - -\subsection{The cover page configurations} - -\begin{verbatim} - \coverset{ - title = \sffamily The \pkg{LiteSolution} Class, - subtitle = \sffamily\scshape Hangzhou Dianzi University, - bioinfo = Mingyu XIA (\mailto{xiamyphys@gmail.com})\quad|\quad - Version 2.4a, - covercolor = DarkSeaGreen, - coverhead = universe, - coverhead.rotate = 3, - cover = schrodinger, - cover.pattern = sixpointed stars - } -\end{verbatim} - -\subsection{The chapter head configurations} - -\begin{verbatim} - \chapterimage {⟨insert image macro⟩} -\end{verbatim} - -This command can assign the format of the image at every chapters begin and you can adjust the format of the image with the \pkg{fadingimage} package. - -\section{Preset Packages} - -This template has preset many packages. The following packages are the common ones - -\begin{table}[htbp] - \centering\small - \begin{tabularx}{.96\linewidth}{*{6}{X}} - \toprule - \pkg{amsthm} & \pkg{amssymb} & \pkg{bm} & - \pkg{booktabs} & \pkg{cancel} & \pkg{caption}\\ - \midrule - \pkg{circuitikz} & \pkg{datetime} & \pkg{derivative} & - \pkg{diagbox} & \pkg{enumitem} & \pkg{esvect}\\ - \midrule - \pkg{extarrows} & \pkg{fadingimage} & \pkg{fancyhdr} & - \pkg{fixdif} & \pkg{fontawesome5}& \pkg{geometry}\\ - \midrule - \pkg{graphicx} & \pkg{hyperref} & \pkg{indentfirst} & - \pkg{lipsum} & \scriptsize\pkg{magicwatermark} & \pkg{mathtools}\\ - \midrule - \pkg{mhchem} & \pkg{multicol} & \pkg{multirow} & - \pkg{nicematrix} & \pkg{notebeamer} & \pkg{paracol}\\ - \midrule - \pkg{pgfplots} & \pkg{physics2} & \pkg{qrcode} & - \pkg{refstyle} & \pkg{setspace} & \pkg{siunitx}\\ - \midrule - \pkg{subcaption} & \pkg{tabularx} & \pkg{soul} & - \pkg{tasks} & \pkg{ulem} & \pkg{xcolor}\\ - \midrule - \pkg{xeCJK} & \pkg{xeCJKfntef} & \pkg{xfrac}\\ - \bottomrule - \end{tabularx} -\end{table} - -\section{Preset Commands} - -\subsection{The \cmd{ans} command} - -\begin{verbatim} - \ans {⟨contents⟩} -\end{verbatim} - -This command can underline the answer, and if mode \mode{noans} is enabled the answer will be hidden. - -\subsection{The \cmd{solute} command} - -\begin{verbatim} - \solute {⟨number⟩} \solute* {⟨contents⟩} -\end{verbatim} - -This command can create a fixable answer box when the mode \mode{noans} is enabled. - -\subsection{The \cmd{emph} command} - -\begin{verbatim} - \emph {⟨content⟩} \emph* {⟨content⟩} -\end{verbatim} - -\emph{The Quick Brown Fox Jumps Over the Lazy Dog: non-hideanswer mode} - -\emph*{The Quick Brown Fox Jumps Over the Lazy Dog: hideanswer mode} - -\subsection{Other preset commands} - -\begin{verbatim} - \def\i{\mathrm i} \def\e{\mathrm e} \def\T{\mathsf T} - \let\leq\leqslant \let\geq\geqslant \let\vec\vv -\end{verbatim} - -\section{Preset \pkg{amsthm} Environments} - -\subsection{The \cmd{problem} environment} - -\begin{tcblisting}{sidebyside,colback=DarkGreen!5,colframe=DarkGreen!80} -\begin{problem}[Keywords]\leavevmode -\begin{tasks}(2) - \task Choice A \task[\true] Choice B - \task Choice C \task Choice D -\end{tasks} -\end{problem} -\end{tcblisting} - -\subsection{The \cmd{solution} and \cmd{note} environment} - -\begin{minipage}{.48\textwidth} -\begin{tcblisting}{sidebyside,colback=MidnightBlue!5,colframe=MidnightBlue!80} -\begin{solution} - B is correct. -\end{solution} -\end{tcblisting} -\end{minipage} -\hfill -\begin{minipage}{.48\textwidth} -\begin{tcblisting}{sidebyside,colback=DarkRed!5,colframe=DarkRed!80} -\begin{note} - We note that. -\end{note} -\end{tcblisting} -\end{minipage} - -\section*{Original Code for the Cover Head} - -\setstretch{1.15} -\lstinputlisting{figure/universe.tex} - -\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/litesolution/tex/litesolution.cls b/macros/latex/contrib/litesolution/tex/litesolution.cls deleted file mode 100644 index 2b7a3ecb34..0000000000 --- a/macros/latex/contrib/litesolution/tex/litesolution.cls +++ /dev/null @@ -1,307 +0,0 @@ -%% *********************************************************** -%% Copyright 2024 by Mingyu XIA <xiamyphys@gmail.com> * -%% * -%% This work may be distributed and/or modified under * -%% the conditions of the LaTeX Project Public License * -%% * -%% http://www.latex-project.org/lppl.txt * -%% * -%% either version 1.3c of this license or any later * -%% version. * -%% * -%% This work has the LPPL maintenance status `maintained'. * -%% * -%% The Current Maintainer of this work is Mingyu XIA. * -%% * -%% This work consists of the files litesolution.cls, * -%% and README.md. * -%% available at https://github.com/xiamyphys/litesolution * -%% *********************************************************** -% !Mode:: "TeX:UTF-8" -\NeedsTeXFormat{LaTeX2e} -\PassOptionsToPackage{no-math}{fontspec} -\PassOptionsToPackage{svgnames}{xcolor} -\ProvidesClass{litesolution}[2024/08/15 v2.4a LiteSolution document class] -\RequirePackage{kvoptions,etoolbox,keyval} -\SetupKeyvalOptions{family=LITE, prefix=LITE@, setkeys=\kvsetkeys} -\def\ekv#1{\kvsetkeys{LITE}{#1}} - -\DeclareStringOption{answer} -\DeclareVoidOption{hideanswer}{\ekv{answer=hideanswer}} - -\DeclareStringOption[newtx]{math} -\DeclareVoidOption{newtx}{\ekv{math=newtx}} -\DeclareVoidOption{newtxsf}{\ekv{math=newtxsf}} -\DeclareVoidOption{mtpro2}{\ekv{math=mtpro2}} - -\DeclareDefaultOption{\PassOptionsToClass{\CurrentOption}{book}} -\ProcessKeyvalOptions*\relax -\LoadClass[letterpaper,11pt]{book} - -\RequirePackage{setspace,datetime,tabularx,caption,subcaption,anyfontsize,booktabs,multicol,diagbox,paracol} -\linespread{1.3} -\ddmmyyyydate -\captionsetup{labelsep=period,labelfont={bf,sf},font=small} -\AtBeginEnvironment{figure}{\vspace*{-1ex}} -\AfterEndEnvironment{figure}{\vspace*{-2ex}} -\AtBeginEnvironment{paracol}{\nointerlineskip} -\AfterEndEnvironment{paracol}{\nointerlineskip} -\columnratio{.64} -\RequirePackage[inline]{enumitem} -\setlist[enumerate]{itemsep=.5ex} -\setlist[itemize]{itemsep=.5ex} -\RequirePackage[notelinecolor=MidnightBlue,notemargin=.75in]{notebeamer} -\geometry{margin=1in,headheight=14pt} -\RequirePackage[nokeyprefix]{refstyle} -\newref{eq}{refcmd=(\ref{#1}),name={\sffamily eq.~},Name={\sffamily Eq.~}} -\newref{fig}{name={\sffamily fig.~},Name={\sffamily Fig.~}} -\newref{tab}{name={\sffamily tab.~},Name={\sffamily Tab.~}} - -\RequirePackage{graphicx,magicwatermark,pagecolor} -\graphicspath{{./figure/}{./figures/}{./image/}{./images/}{./graphics/}{./graphic/}{./pictures/}{./picture/}} - -\RequirePackage{ifxetex} -\ifXeTeX - \RequirePackage[quiet,CJKmath,CheckSingle,PlainEquation]{xeCJK} - \RequirePackage{zhlipsum} - \setlength{\parindent}{2em} -\fi - -\ifdefstring{\LITE@math}{mtpro2}{% - \RequirePackage[mtpscr,mtpccal,mtpfrak]{mtpro2} - \let\Bbbk\relax - \RequirePackage[mono=false]{libertine} -}{\relax} -\ifdefstring{\LITE@math}{newtx}{% - \RequirePackage[libertine,mono=false]{newtx} - \let\Bbbk\relax -}{\relax} -\ifdefstring{\LITE@math}{newtxsf}{% - \RequirePackage{newtxsf,mathrsfs} - \RequirePackage[mono=false]{libertine} -}{\relax} -\let\openbox\relax\def\hmmax{0}\def\bmmax{0} -\RequirePackage{amssymb,mathtools,physics2,bm,fixdif,derivative,cancel,extarrows,siunitx,xfrac,nicematrix} -\usephysicsmodule{ab,braket,diagmat,doubleprod,xmat,ab.legacy,op.legacy} -\RequirePackage[e]{esvect} -\let\vec\vv -\renewcommand*\env@cases[1][.84]{% - \let\@ifnextchar\new@ifnextchar - \left\lbrace - \def\arraystretch{#1}% - \array{@{}l@{\quad}l@{}}% -} -\AtBeginDocument{% - \def\i{\mathrm i}\def\e{\mathrm e}\def\T{\mathsf T} - \let\leq\leqslant\let\geq\geqslant - \setlength{\abovedisplayskip}{9pt} - \setlength{\belowdisplayskip}{9pt} -} - -\RequirePackage[hidelinks]{hyperref} -\def\mailto#1{\href{mailto:#1}{\ttfamily #1}} -\RequirePackage{fontawesome5} -\AddToHook{cmd/faIcon/before}{% - \begingroup\fontsize{\fpeval{\f@size*.8}}{0}\selectfont -} -\AddToHook{cmd/faIcon/after}{\endgroup} - -\RequirePackage{circuitikz,pgfplots,fadingimage} -\RequirePackage[version=4]{mhchem} -\usetikzlibrary{arrows,tikzmark,patterns,calc,angles,quotes,intersections} -\tikzset{>=stealth', - every picture/.append style={% - line join=round,line cap=round,thick - }} -\pgfplotsset{compat=1.8} -\ctikzset{capacitors/width=.12,capacitors/height=.3} -\NewDocumentCommand\length{ O{} m m m m m }{% - \node [#1] at ($.5*($#3+#2$)$) {#4}#6 - \draw [->|,thick] ($.5*($#3+#2+#5$)$) -- #3#6 - \draw [->|,thick] ($.5*($#3+#2-#5$)$) -- #2#6 -} -\NewDocumentCommand\wall{ m m m }{ - \fill [pattern=north east lines] #1 rectangle #2#3 - \draw [very thick,line cap=butt] let \p1=#1, \p2=#2 in (\x1,\y1) (\x2,\y2) (\x1,\y1) -- (\x2,\y1)#3 -} - -\RequirePackage{tasks,lipsum,hologo,qrcode} -\settasks{label=\sffamily\Alph*.,label-width=1.25em,item-indent=2em,label-offset=.25em} -\hologoFontSetup{general=\sffamily} -\def\pkg#1{\textcolor{DarkGreen}{\textsf{#1}}} -\def\mode#1{\textcolor{Indigo}{\textsf{#1}}} -\def\cmd#1{\textcolor{MidnightBlue}{\texttt{\string#1}}} - -\define@key{coverset}{title}{\gdef\@title{#1}} -\define@key{coverset}{subtitle}{\gdef\@subtitle{#1}} -\define@key{coverset}{bioinfo}{\gdef\@bioinfo{#1}} -\define@key{coverset}{covercolor}{\gdef\@covercolor{#1}} -\define@key{coverset}{coverhead}{\gdef\@coverhead{#1}} -\define@key{coverset}{coverhead.rotate}{\gdef\@coverheadrotate{#1}} -\define@key{coverset}{cover}{\gdef\@cover{#1}} -\define@key{coverset}{cover.pattern}{\gdef\@coverpattern{#1}} -\def\coverset#1{ - \setkeys{coverset}{#1} - \ifcsname @covercolor\endcsname - \relax - \else - \gdef\@covercolor{DarkSlateGray} - \fi -} - -\renewcommand*\maketitle{ - \begin{titlepage} - \newgeometry{margin=0in} - \newpagecolor{\@covercolor!15} - \gdef\@covercolor{DarkSlateGray} - \tikz[remember picture,overlay]{ - \fill [white,opacity=.5] ($(current page.south west)+(.2*\paperwidth,.6*\paperheight)$) rectangle (current page.south east); - \fill [white,opacity=.5] ($(current page.south west)+(.3*\paperwidth,.7*\paperheight)$) rectangle (current page.south east); - \node [darkgray] at ($(current page.south west)+(.65*\paperwidth,.65*\paperheight)$) {\Huge\bfseries\@title}; - \ifcsname @subtitle\endcsname - \node [rotate=90,gray,opacity=.6] at ($(current page.south west)+(.25*\paperwidth,.3*\paperheight)$) {\huge\bfseries\@subtitle}; - \fi - \ifcsname @bioinfo\endcsname - \node [gray,opacity=.4] at ($(current page.south)+(.15*\paperwidth,.075*\paperheight)$) {\large\@bioinfo}; - \fi - \ifcsname @coverhead\endcsname - \ifcsname @coverheadrotate\endcsname - \relax - \else - \gdef\@coverheadrotate{0} - \fi - \node [rotate=\@coverheadrotate] at ($(current page.center)+(0,.35*\paperheight)$) {\includegraphics[width=\paperwidth]{\@coverhead}}; - \fi - \ifcsname @cover\endcsname - \node (@cover) at ($(current page.south west)+(.65*\paperwidth,.3*\paperheight)$) {\includegraphics[height=.3\paperheight]{\@cover}}; - \ifcsname @coverpattern\endcsname - \fill [scope fading=south,pattern=\@coverpattern,pattern color=\@covercolor!15!white!25] (@cover.south west) rectangle (@cover.north east); - \fi\fi} - \end{titlepage} - \restoregeometry - \restorepagecolor - \if@twoside - \clearpage% - \newpagecolor{\@covercolor!15!white!25} - \thispagestyle{empty}% - \null\clearpage - \fi - \restorepagecolor -} - -\RequirePackage{tocloft} -\setlength{\cftbeforetoctitleskip}{6\p@} -\setlength{\cftaftertoctitleskip}{24\p@} -\AddToHook{cmd/tableofcontents/before}{ - \begingroup - \setstretch{1.5} -} -\AddToHook{cmd/tableofcontents/after}{\endgroup} -\renewcommand\contentsname{\sffamily\scshape Contents} -\setcounter{tocdepth}{1} - -\let\@chapapptmp\@chapapp -\gdef\@chapapp{\textsc{\@chapapptmp}} -\def\chapterimage#1{\gdef\@chapterimage{#1}} -\def\@makechapterhead#1{% - \def\thesection{\arabic{chapter}.\arabic{section}} - \def\theproblem{\thechapter.\arabic{problem}} - \vspace*{-36\p@}{% - \parindent \z@ \raggedright \normalfont - \ifcsname @chapterimage\endcsname - \@chapterimage - \else\leavevmode - \fi - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \parbox{6em} - {\centering\@setfontsize\HUGE{30}{40}\normalfont\bfseries\textcolor{darkgray}\thechapter\vskip4\p@\normalsize\bfseries\textcolor{darkgray}{\bfseries\sffamily\@chapapp}}% - \fi - \fi - \interlinepenalty\@M\hspace*{3ex} - \huge\bfseries #1\par\nobreak - \vskip 36\p@ -}} -\def\@makeschapterhead#1{% -\def\thesection{\arabic{section}} -\def\theproblem{\arabic{problem}} -\setcounter{section}{0} -\setcounter{problem}{0} -{\centering -\ifcsname @chapterimage\endcsname - \@chapterimage -\fi\vskip-40\p@ - \parindent \z@ \normalfont - \interlinepenalty\@M - \huge \bfseries #1\par\nobreak - \vskip 28\p@}} -\let\cleardoublepage=\clearpage -\renewcommand*\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else -\ifnum \thechapter=0 - \vspace*{\fill} - {\centering\itshape\Large This page was intentionally left blank.\par} - \vspace{\fill} -\else - \clearpage% - \thispagestyle{empty}% - \null\clearpage -\fi -\thispagestyle{empty}\newpage -\if@twocolumn\hbox{}\newpage\fi\fi\fi} - -\RequirePackage{fancyhdr} -\pagestyle{fancy} -\let\oldheadrule\headrule -\renewcommand{\headrule}{{\color{gray}\oldheadrule}} -\renewcommand{\headrulewidth}{1pt} -\fancyfoot[L]{\footnotesize\fbox{Unauthorized copying or reuse of any part of this page is illegal}} -\fancyfoot[OR]{\sffamily\bfseries GO ON TO THE NEXT PAGE} -\if@twoside\cfoot{} - \fancyhead[OL]{\color{darkgray}\nouppercase\leftmark} - \fancyhead[OR]{\color{darkgray}\sffamily\thepage} - \fancyhead[ER]{\color{darkgray}\nouppercase\rightmark} - \fancyhead[EL]{\color{darkgray}\sffamily\thepage} -\else - \fancyhead[L]{\color{darkgray}\nouppercase\leftmark} - \fancyhead[R]{\color{darkgray}\nouppercase\rightmark} - \cfoot{\color{darkgray}\sffamily\thepage} -\fi - -\RequirePackage{amsthm} -\renewcommand\qedsymbol{$\color{gray}\blacksquare$} -\theoremstyle{definition} -\newtheorem{problem}{\color{DarkGreen}\faIcon{pen-square}~\textsc{\textsf{Problem}}}[chapter] -\newtheorem*{solution}{\color{MidnightBlue}\faIcon{check-square}~\textsc{\textsf{Solution}}} -\newtheorem*{scratch}{\color{MidnightBlue}\faIcon{check-square}~\textsc{\textsf{Scratch}}} -\newtheorem*{note}{\color{DarkRed}\faIcon{info-circle}~\textsc{\textsf{Note}}} -\RequirePackage{comment,ulem,soul} -\ifxetex - \RequirePackage{xeCJKfntef} - \def\@emph#1{\CJKsout*[thickness=2.5ex, format=\color{\@covercolor!15}]{#1}} - \def\s@emph#1{\CJKunderwave{#1}} -\else - \def\@emph#1{\sethlcolor{\@covercolor!15}\hl{#1}} - \def\s@emph#1{\uwave{#1}} -\fi -\ifdefstring{\LITE@answer}{hideanswer}{% - \def\ans#1{\underline{\phantom{#1}}} - \def\choiceans#1{\phantom{#1}} - \def\s@solute#1{\begin{scratch}#1\end{scratch}} - \def\@solute#1{\begin{scratch}\leavevmode\vspace*{#1ex}\end{scratch}} - \AtBeginDocument{% - \excludecomment{solution}\excludecomment{note} - \let\endsolution\relax\let\endnote\relax} - \def\true{\addtocounter{task}{1}\thetask} - \DeclareRobustCommand\emph{\@ifstar\s@emph\s@emph} -}{ - \def\ans#1{\underline{~#1~}} - \def\s@solute#1{\relax}\def\@solute#1{\relax} - \AtBeginDocument{% - \excludecomment{scratch} - \let\endscratch\relax} - \def\true{\addtocounter{task}{1}\faIcon{check-circle}} - \DeclareRobustCommand\emph{\@ifstar\s@emph\@emph} -} -\DeclareRobustCommand\solute{\@ifstar\s@solute\@solute} -%% -%% End of file `litesolution.cls'. diff --git a/macros/latex/contrib/thmlist/License b/macros/latex/contrib/thmlist/License deleted file mode 100644 index 842cf85e3c..0000000000 --- a/macros/latex/contrib/thmlist/License +++ /dev/null @@ -1,415 +0,0 @@ -The LaTeX Project Public License -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- - -LPPL Version 1.3c 2008-05-04 - -Copyright 1999 2002-2008 LaTeX3 Project - Everyone is allowed to distribute verbatim copies of this - license document, but modification of it is not allowed. - - -PREAMBLE -======== - -The LaTeX Project Public License (LPPL) is the primary license under -which the LaTeX kernel and the base LaTeX packages are distributed. - -You may use this license for any work of which you hold the copyright -and which you wish to distribute. This license may be particularly -suitable if your work is TeX-related (such as a LaTeX package), but -it is written in such a way that you can use it even if your work is -unrelated to TeX. - -The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', -below, gives instructions, examples, and recommendations for authors -who are considering distributing their works under this license. - -This license gives conditions under which a work may be distributed -and modified, as well as conditions under which modified versions of -that work may be distributed. - -We, the LaTeX3 Project, believe that the conditions below give you -the freedom to make and distribute modified versions of your work -that conform with whatever technical specifications you wish while -maintaining the availability, integrity, and reliability of -that work. If you do not see how to achieve your goal while -meeting these conditions, then read the document `cfgguide.tex' -and `modguide.tex' in the base LaTeX distribution for suggestions. - - -DEFINITIONS -=========== - -In this license document the following terms are used: - - `Work' - Any work being distributed under this License. - - `Derived Work' - Any work that under any applicable law is derived from the Work. - - `Modification' - Any procedure that produces a Derived Work under any applicable - law -- for example, the production of a file containing an - original file associated with the Work or a significant portion of - such a file, either verbatim or with modifications and/or - translated into another language. - - `Modify' - To apply any procedure that produces a Derived Work under any - applicable law. - - `Distribution' - Making copies of the Work available from one person to another, in - whole or in part. Distribution includes (but is not limited to) - making any electronic components of the Work accessible by - file transfer protocols such as FTP or HTTP or by shared file - systems such as Sun's Network File System (NFS). - - `Compiled Work' - A version of the Work that has been processed into a form where it - is directly usable on a computer system. This processing may - include using installation facilities provided by the Work, - transformations of the Work, copying of components of the Work, or - other activities. Note that modification of any installation - facilities provided by the Work constitutes modification of the Work. - - `Current Maintainer' - A person or persons nominated as such within the Work. If there is - no such explicit nomination then it is the `Copyright Holder' under - any applicable law. - - `Base Interpreter' - A program or process that is normally needed for running or - interpreting a part or the whole of the Work. - - A Base Interpreter may depend on external components but these - are not considered part of the Base Interpreter provided that each - external component clearly identifies itself whenever it is used - interactively. Unless explicitly specified when applying the - license to the Work, the only applicable Base Interpreter is a - `LaTeX-Format' or in the case of files belonging to the - `LaTeX-format' a program implementing the `TeX language'. - - - -CONDITIONS ON DISTRIBUTION AND MODIFICATION -=========================================== - -1. Activities other than distribution and/or modification of the Work -are not covered by this license; they are outside its scope. In -particular, the act of running the Work is not restricted and no -requirements are made concerning any offers of support for the Work. - -2. You may distribute a complete, unmodified copy of the Work as you -received it. Distribution of only part of the Work is considered -modification of the Work, and no right to distribute such a Derived -Work may be assumed under the terms of this clause. - -3. You may distribute a Compiled Work that has been generated from a -complete, unmodified copy of the Work as distributed under Clause 2 -above, as long as that Compiled Work is distributed in such a way that -the recipients may install the Compiled Work on their system exactly -as it would have been installed if they generated a Compiled Work -directly from the Work. - -4. If you are the Current Maintainer of the Work, you may, without -restriction, modify the Work, thus creating a Derived Work. You may -also distribute the Derived Work without restriction, including -Compiled Works generated from the Derived Work. Derived Works -distributed in this manner by the Current Maintainer are considered to -be updated versions of the Work. - -5. If you are not the Current Maintainer of the Work, you may modify -your copy of the Work, thus creating a Derived Work based on the Work, -and compile this Derived Work, thus creating a Compiled Work based on -the Derived Work. - -6. If you are not the Current Maintainer of the Work, you may -distribute a Derived Work provided the following conditions are met -for every component of the Work unless that component clearly states -in the copyright notice that it is exempt from that condition. Only -the Current Maintainer is allowed to add such statements of exemption -to a component of the Work. - - a. If a component of this Derived Work can be a direct replacement - for a component of the Work when that component is used with the - Base Interpreter, then, wherever this component of the Work - identifies itself to the user when used interactively with that - Base Interpreter, the replacement component of this Derived Work - clearly and unambiguously identifies itself as a modified version - of this component to the user when used interactively with that - Base Interpreter. - - b. Every component of the Derived Work contains prominent notices - detailing the nature of the changes to that component, or a - prominent reference to another file that is distributed as part - of the Derived Work and that contains a complete and accurate log - of the changes. - - c. No information in the Derived Work implies that any persons, - including (but not limited to) the authors of the original version - of the Work, provide any support, including (but not limited to) - the reporting and handling of errors, to recipients of the - Derived Work unless those persons have stated explicitly that - they do provide such support for the Derived Work. - - d. You distribute at least one of the following with the Derived Work: - - 1. A complete, unmodified copy of the Work; - if your distribution of a modified component is made by - offering access to copy the modified component from a - designated place, then offering equivalent access to copy - the Work from the same or some similar place meets this - condition, even though third parties are not compelled to - copy the Work along with the modified component; - - 2. Information that is sufficient to obtain a complete, - unmodified copy of the Work. - -7. If you are not the Current Maintainer of the Work, you may -distribute a Compiled Work generated from a Derived Work, as long as -the Derived Work is distributed to all recipients of the Compiled -Work, and as long as the conditions of Clause 6, above, are met with -regard to the Derived Work. - -8. The conditions above are not intended to prohibit, and hence do not -apply to, the modification, by any method, of any component so that it -becomes identical to an updated version of that component of the Work as -it is distributed by the Current Maintainer under Clause 4, above. - -9. Distribution of the Work or any Derived Work in an alternative -format, where the Work or that Derived Work (in whole or in part) is -then produced by applying some process to that format, does not relax or -nullify any sections of this license as they pertain to the results of -applying that process. - -10. a. A Derived Work may be distributed under a different license - provided that license itself honors the conditions listed in - Clause 6 above, in regard to the Work, though it does not have - to honor the rest of the conditions in this license. - - b. If a Derived Work is distributed under a different license, that - Derived Work must provide sufficient documentation as part of - itself to allow each recipient of that Derived Work to honor the - restrictions in Clause 6 above, concerning changes from the Work. - -11. This license places no restrictions on works that are unrelated to -the Work, nor does this license place any restrictions on aggregating -such works with the Work by any means. - -12. Nothing in this license is intended to, or may be used to, prevent -complete compliance by all parties with all applicable laws. - - -NO WARRANTY -=========== - -There is no warranty for the Work. Except when otherwise stated in -writing, the Copyright Holder provides the Work `as is', without -warranty of any kind, either expressed or implied, including, but not -limited to, the implied warranties of merchantability and fitness for a -particular purpose. The entire risk as to the quality and performance -of the Work is with you. Should the Work prove defective, you assume -the cost of all necessary servicing, repair, or correction. - -In no event unless required by applicable law or agreed to in writing -will The Copyright Holder, or any author named in the components of the -Work, or any other party who may distribute and/or modify the Work as -permitted above, be liable to you for damages, including any general, -special, incidental or consequential damages arising out of any use of -the Work or out of inability to use the Work (including, but not limited -to, loss of data, data being rendered inaccurate, or losses sustained by -anyone as a result of any failure of the Work to operate with any other -programs), even if the Copyright Holder or said author or said other -party has been advised of the possibility of such damages. - - -MAINTENANCE OF THE WORK -======================= - -The Work has the status `author-maintained' if the Copyright Holder -explicitly and prominently states near the primary copyright notice in -the Work that the Work can only be maintained by the Copyright Holder -or simply that it is `author-maintained'. - -The Work has the status `maintained' if there is a Current Maintainer -who has indicated in the Work that they are willing to receive error -reports for the Work (for example, by supplying a valid e-mail -address). It is not required for the Current Maintainer to acknowledge -or act upon these error reports. - -The Work changes from status `maintained' to `unmaintained' if there -is no Current Maintainer, or the person stated to be Current -Maintainer of the work cannot be reached through the indicated means -of communication for a period of six months, and there are no other -significant signs of active maintenance. - -You can become the Current Maintainer of the Work by agreement with -any existing Current Maintainer to take over this role. - -If the Work is unmaintained, you can become the Current Maintainer of -the Work through the following steps: - - 1. Make a reasonable attempt to trace the Current Maintainer (and - the Copyright Holder, if the two differ) through the means of - an Internet or similar search. - - 2. If this search is successful, then enquire whether the Work - is still maintained. - - a. If it is being maintained, then ask the Current Maintainer - to update their communication data within one month. - - b. If the search is unsuccessful or no action to resume active - maintenance is taken by the Current Maintainer, then announce - within the pertinent community your intention to take over - maintenance. (If the Work is a LaTeX work, this could be - done, for example, by posting to comp.text.tex.) - - 3a. If the Current Maintainer is reachable and agrees to pass - maintenance of the Work to you, then this takes effect - immediately upon announcement. - - b. If the Current Maintainer is not reachable and the Copyright - Holder agrees that maintenance of the Work be passed to you, - then this takes effect immediately upon announcement. - - 4. If you make an `intention announcement' as described in 2b. above - and after three months your intention is challenged neither by - the Current Maintainer nor by the Copyright Holder nor by other - people, then you may arrange for the Work to be changed so as - to name you as the (new) Current Maintainer. - - 5. If the previously unreachable Current Maintainer becomes - reachable once more within three months of a change completed - under the terms of 3b) or 4), then that Current Maintainer must - become or remain the Current Maintainer upon request provided - they then update their communication data within one month. - -A change in the Current Maintainer does not, of itself, alter the fact -that the Work is distributed under the LPPL license. - -If you become the Current Maintainer of the Work, you should -immediately provide, within the Work, a prominent and unambiguous -statement of your status as Current Maintainer. You should also -announce your new status to the same pertinent community as -in 2b) above. - - -WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE -====================================================== - -This section contains important instructions, examples, and -recommendations for authors who are considering distributing their -works under this license. These authors are addressed as `you' in -this section. - -Choosing This License or Another License ----------------------------------------- - -If for any part of your work you want or need to use *distribution* -conditions that differ significantly from those in this license, then -do not refer to this license anywhere in your work but, instead, -distribute your work under a different license. You may use the text -of this license as a model for your own license, but your license -should not refer to the LPPL or otherwise give the impression that -your work is distributed under the LPPL. - -The document `modguide.tex' in the base LaTeX distribution explains -the motivation behind the conditions of this license. It explains, -for example, why distributing LaTeX under the GNU General Public -License (GPL) was considered inappropriate. Even if your work is -unrelated to LaTeX, the discussion in `modguide.tex' may still be -relevant, and authors intending to distribute their works under any -license are encouraged to read it. - -A Recommendation on Modification Without Distribution ------------------------------------------------------ - -It is wise never to modify a component of the Work, even for your own -personal use, without also meeting the above conditions for -distributing the modified component. While you might intend that such -modifications will never be distributed, often this will happen by -accident -- you may forget that you have modified that component; or -it may not occur to you when allowing others to access the modified -version that you are thus distributing it and violating the conditions -of this license in ways that could have legal implications and, worse, -cause problems for the community. It is therefore usually in your -best interest to keep your copy of the Work identical with the public -one. Many works provide ways to control the behavior of that work -without altering any of its licensed components. - -How to Use This License ------------------------ - -To use this license, place in each of the components of your work both -an explicit copyright notice including your name and the year the work -was authored and/or last substantially modified. Include also a -statement that the distribution and/or modification of that -component is constrained by the conditions in this license. - -Here is an example of such a notice and statement: - - %% pig.dtx - %% Copyright 2008 M. Y. Name - % - % This work may be distributed and/or modified under the - % conditions of the LaTeX Project Public License, either version 1.3 - % of this license or (at your option) any later version. - % The latest version of this license is in - % https://www.latex-project.org/lppl.txt - % and version 1.3c or later is part of all distributions of LaTeX - % version 2008 or later. - % - % This work has the LPPL maintenance status `maintained'. - % - % The Current Maintainer of this work is M. Y. Name. - % - % This work consists of the files pig.dtx and pig.ins - % and the derived file pig.sty. - -Given such a notice and statement in a file, the conditions -given in this license document would apply, with the `Work' referring -to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being -generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' -referring to any `LaTeX-Format', and both `Copyright Holder' and -`Current Maintainer' referring to the person `M. Y. Name'. - -If you do not want the Maintenance section of LPPL to apply to your -Work, change `maintained' above into `author-maintained'. -However, we recommend that you use `maintained', as the Maintenance -section was added in order to ensure that your Work remains useful to -the community even when you can no longer maintain and support it -yourself. - -Derived Works That Are Not Replacements ---------------------------------------- - -Several clauses of the LPPL specify means to provide reliability and -stability for the user community. They therefore concern themselves -with the case that a Derived Work is intended to be used as a -(compatible or incompatible) replacement of the original Work. If -this is not the case (e.g., if a few lines of code are reused for a -completely different task), then clauses 6b and 6d shall not apply. - - -Important Recommendations -------------------------- - - Defining What Constitutes the Work - - The LPPL requires that distributions of the Work contain all the - files of the Work. It is therefore important that you provide a - way for the licensee to determine which files constitute the Work. - This could, for example, be achieved by explicitly listing all the - files of the Work near the copyright notice of each file or by - using a line such as: - - % This work consists of all files listed in manifest.txt. - - in that place. In the absence of an unequivocal list it might be - impossible for the licensee to determine what is considered by you - to comprise the Work and, in such a case, the licensee would be - entitled to make reasonable conjectures as to which files comprise - the Work. diff --git a/macros/latex/contrib/thmlist/README.md b/macros/latex/contrib/thmlist/README.md deleted file mode 100644 index 60af372021..0000000000 --- a/macros/latex/contrib/thmlist/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# The `thmlist` package - -This package provides a simple way for adding theorem environments quickly. - -**Welcome to pull requests -[here](https://github.com/xiamyphys/thmlist).** - -## License - -This work may be distributed and/or modified under the conditions of the -[LaTeX Project Public License](http://www.latex-project.org/lppl.txt), -either version 1.3c of this license or (at your option) any later version. - -This work has the LPPL maintenance status `maintained`. - -The Current Maintainer of this work is -[Mingyu Hsia](https://www.ctan.org/author/xia-my).
\ No newline at end of file diff --git a/macros/latex/contrib/thmlist/doc/thmlist.pdf b/macros/latex/contrib/thmlist/doc/thmlist.pdf Binary files differdeleted file mode 100644 index 777f06bf05..0000000000 --- a/macros/latex/contrib/thmlist/doc/thmlist.pdf +++ /dev/null diff --git a/macros/latex/contrib/thmlist/doc/thmlist.tex b/macros/latex/contrib/thmlist/doc/thmlist.tex deleted file mode 100644 index 4006ef061d..0000000000 --- a/macros/latex/contrib/thmlist/doc/thmlist.tex +++ /dev/null @@ -1,120 +0,0 @@ -\documentclass[11pt,svgnames]{article} -\usepackage{geometry,titlesec,datetime,xcolor,hologo} -\titleformat*{\section}{\bfseries\large} -\hologoFontSetup{general=\sffamily} -\usepackage[libertine,mono=false]{libertine} -\usepackage[colorlinks,urlcolor=Indigo]{hyperref} -\def\pkg#1{\textcolor{DarkGreen}{\textsf{#1}}} -\def\mode#1{\textcolor{Indigo}{\textsf{#1}}} -\def\cmd#1{\textcolor{MidnightBlue}{\texttt{\string#1}}} - -\title{\bfseries The \pkg{thmlist} Package} -\author{% - Hsia Mingyu, \href{https://www.hdu.edu.cn}{Hangzhou Dianzi University}\\ - \href{mailto:xiamyphys@gmail.com}{\ttfamily xiamyphys@gmail.com}} -\yyyymmdddate\date{\today} -\date{Version 0.1b\quad\thanks{\url{https://github.com/xiamyphys/thmlist}}\today} - -\usepackage[amscounter=section,amsstyle=definition, - mdfcounter=section,mdfstyle=mdflist]{thmlist} -\mdfsetup{skipabove=2pt, skipbelow=2pt} -\mdfdefinestyle{mdflist}{% - skipabove=0pt, skipbelow=0pt, - hidealllines=true, leftline=true, - linewidth=.5ex, innerleftmargin=1.5ex, - innerrightmargin=0pt, innertopmargin=-1.75ex, - innerbottommargin=0pt} -\mdflist{theorem, lemma, definition; - Théorème, Lemme, Définition; - DarkOliveGreen, MidnightBlue, MidnightBlue} -\amslist{remark, example; - Remarque, Exemple; - DarkRed, Teal} - -\begin{document} - -\def\theexample{\arabic{example}}\let\theremark=\relax - -\maketitle\vspace*{-4ex} - -\begin{abstract} -This is the document for the \pkg{thmlist} package, which provides a simple way for adding theorem environments quickly. -\end{abstract} - -\section{The purpose of this package} -This package provides a simple way for adding theorem environments quickly. Welcome to feedback bugs or ideas via email \href{mailto:xiamyphys@gmail.com}{\ttfamily xiamyphys@gmail.com} or \href{https://github.com/xiamyphys/thmlist}{GitHub}. - -This package has required the \pkg{amsthm} and \pkg{mdframed} packages to create different style of theorem environments, \pkg{pgffor} to support \cmd{foreach} loop and \pkg{listofitems} to support list reading. - -\section{Loading \pkg{thmlist}} -I strongly advise you to use terminal/cmd to implement the commands to update all the packages (and install this package) to the latest version or switch to portable version -\begin{verbatim} - sudo tlmgr update --self --all -\end{verbatim} - -\section{Key values of this package} -\begin{verbatim} - \usepackage[amscounter=<counter>,amsstyle=<style>, - mdfcounter=<counter>,mdfstyle=<style>]{thmlist} -\end{verbatim} - -This package has four keys: \cmd{amscounter}, \cmd{amsstyle}, \cmd{mdfcounter}, \cmd{mdfstyle}. - -The \cmd{amscounter} and the \cmd{mdfcounter} keys can set the `numberwithin' of the theorem environments with(out) the frame style respectively, and the \cmd{amsstyle} and the \cmd{mdfstyle} keys can set the style of the theorem environments with(out) the frame style respectively. - -If you have not set the keys, the default values of the four keys will be applied -\begin{verbatim} - amscounter=section,amsstyle=definition,mdfcounter=section,mdfstyle={} -\end{verbatim} - -\section{Create theorem environments with(out) the framed style} - -Define a style of the \pkg{mdframed} package and set the key \cmd{mdfstyle=mdflist} correspondingly. -\begin{verbatim} - \mdfsetup{skipabove=2pt, skipbelow=2pt} - \mdfdefinestyle{mdflist}{% - skipabove=0pt, skipbelow=0pt, - hidealllines=true, leftline=true, - linewidth=.5ex, innerleftmargin=1.5ex, - innerrightmargin=0pt, innertopmargin=-1.75ex, - innerbottommargin=0pt} -\end{verbatim} - -You should put the counter configuration of some environments after \verb|\begin{document}|, or them will not work. Such as -\begin{verbatim} - \def\theexample{\arabic{example}} \let\theremark=\relax -\end{verbatim} - -Then, input the name of the environments in the first line and input the corresponding title and color of the environments in the next two lines. -\begin{itemize} - \item The \cmd{mdflist} macro can create a series of theorem environments with the frame. - \item The \cmd{amslist} macro can create a series of theorem environments without the frame. -\end{itemize} -\begin{verbatim} - \mdflist{theorem, lemma, definition; - Théorème, Lemme, Définition; - DarkOliveGreen, MidnightBlue, MidnightBlue} - \amslist{remark, example; - Remarque, Exemple; - DarkRed, Teal} -\end{verbatim} - -The following is the effect of the style configuration above. - -\begin{theorem}[The Théorème Environment]\leavevmode\newline - From WikipediA: A theorem is a statement that has been proved, or can be proved. -\end{theorem} - -\begin{lemma}[The Lemme Environment]\leavevmode\newline - From WikipediA: In mathematics, informal logic and argument mapping, a lemma (pl.: lemmas or lemmata) is a generally minor, proven proposition which is used as a stepping stone to a larger result. For that reason, it is also known as a ``helping theorem'' or an ``auxiliary theorem''. -\end{lemma} - -\begin{definition}[The Définition Environment]\leavevmode\newline - From WikipediA: A definition is used to give a precise meaning to a new term, by describing a condition which unambiguously qualifies what a mathematical term is and is not. -\end{definition} - -\remark{This package works fine with the \pkg{Standard Document Classes}.} - -\example{From Cambridge Dictionary: The example is a way of helping someone to understand something by showing them how it is used.} - -\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/thmlist/tex/thmlist.sty b/macros/latex/contrib/thmlist/tex/thmlist.sty deleted file mode 100644 index 40e19ef13e..0000000000 --- a/macros/latex/contrib/thmlist/tex/thmlist.sty +++ /dev/null @@ -1,63 +0,0 @@ -%% **************************************************************************************************** -%% Copyright 2024 by Mingyu Hsia <xiamyphys@gmail.com> * -%% * -%% This work may be distributed and/or modified under * ***** * * * -%% the conditions of the LaTeX Project Public License * ** * * *** * * * -%% * * ** * * * ** * -%% http://www.latex-project.org/lppl.txt * * * * ***** ** * -%% * * ** * * * * * -%% either version 1.3c of this license or any later ***** ** * * *** * * * -%% version. * -%% * -%% This work has the LPPL maintenance status `maintained'. * -%% * -%% The Current Maintainer of this work is Mingyu Hsia. * -%% * -%% This work consists of the files thmlist.sty, * -%% and README.md. * -%% available at https://github.com/xiamyphys/thmlist * -%% **************************************************************************************************** -\NeedsTeXFormat{LaTeX2e}[2020/10/01] -\ProvidesPackage{thmlist}[2024/03/26/ v0.1b Package for creating amsthm environments quickly.] - -\DeclareOptionX{amscounter}{\gdef\@amscounter{#1}} -\DeclareOptionX{mdfcounter}{\gdef\@mdfcounter{#1}} -\ExecuteOptionsX{amscounter=section} -\ExecuteOptionsX{mdfcounter=section} - -\DeclareOptionX{amsstyle}{\gdef\@amsstyle{#1}} -\DeclareOptionX{mdfstyle}{\gdef\@mdfstyle{#1}} -\ExecuteOptionsX{amsstyle=definition} -\ExecuteOptionsX{mdfstyle=mdempty} - -\DeclareOptionX{thmfont}{\gdef\@thmfont{#1}} -\ExecuteOptionsX{thmfont=\sffamily} - -\DeclareOptionX*{\PackageWarning{thmlist}{`\CurrentOption' ignored}} -\ProcessOptionsX\relax - -\RequirePackage{amsthm,mdframed,listofitems,pgffor} -\def\th@definition{\thm@notefont{}\normalfont} -\theoremstyle{\@amsstyle}\mdfdefinestyle{mdempty}{} - -\setsepchar{;/,}\ignoreemptyitems -\def\mdflist#1{\gdef\@mdflist{#1}} -\def\amslist#1{\gdef\@amslist{#1}} -\AtBeginDocument{% - \ifcsname @mdflist\endcsname - \readlist*\mdflist{\@mdflist} - \def\@mdfnum{\listlen\mdflist[1]} - \foreach \x in {1,...,\@mdfnum}{% - \expandafter\xdef\csname\x\x\endcsname{\noexpand - \newmdtheoremenv[linecolor=\mdflist[3,\x],style=\@mdfstyle]{\mdflist[1,\x]} - {\noexpand\color{\mdflist[3,\x]}\noexpand\@thmfont{\mdflist[2,\x]}}[\@mdfcounter]}\csname\x\x\endcsname} - \fi - \ifcsname @amslist\endcsname - \readlist*\amslist{\@amslist} - \def\@amsnum{\listlen\amslist[1]} - \foreach \x in {1,...,\@amsnum}{% - \expandafter\xdef\csname\x\x\endcsname{\noexpand - \newtheorem{\amslist[1,\x]} - {\noexpand\color{\amslist[3,\x]}\noexpand\@thmfont{\amslist[2,\x]}}[\@amscounter]}\csname\x\x\endcsname} - \fi -}
\ No newline at end of file diff --git a/macros/latex/contrib/whatsnote/doc/whatsnote.pdf b/macros/latex/contrib/whatsnote/doc/whatsnote.pdf Binary files differindex 1b62dc61e1..bfd33d4fdf 100644 --- a/macros/latex/contrib/whatsnote/doc/whatsnote.pdf +++ b/macros/latex/contrib/whatsnote/doc/whatsnote.pdf diff --git a/macros/latex/contrib/whatsnote/doc/whatsnote.tex b/macros/latex/contrib/whatsnote/doc/whatsnote.tex index 432e2c58bb..0b402348f6 100644 --- a/macros/latex/contrib/whatsnote/doc/whatsnote.tex +++ b/macros/latex/contrib/whatsnote/doc/whatsnote.tex @@ -11,7 +11,7 @@ \coverset { title = The \pkg{WhatsNote} Class, - subtitle = Version 3.0A, + subtitle = Version 3.0B, bioinfo = Mingyu Xia \url{<xiamyphys@gmail.com>}, color = MidnightBlue, head = universe/3, @@ -44,10 +44,11 @@ \subsection{Font} -You can set \keys{\cmdmac~math-font}, \keys{\cmdmac~main-font}, -\keys{\cmdmac~sans-font} and \keys{\cmdmac~mono-font}. +You can set \keys{\cmdmac~math-font} \keys{\cmdmac~main-font} +\keys{\cmdmac~sans-font} \keys{\cmdmac~mono-font}. The \keys{\cmdmac~CJK-font} can be set via \hologo{XeLaTeX} compiler. +\begin{framed} \begin{verbatim} math-font = STIX Two Math, main-font = { {Libertinus Serif} }, @@ -58,6 +59,7 @@ The \keys{\cmdmac~CJK-font} can be set via \hologo{XeLaTeX} compiler. CJKsans-font = { {LXGW WenKai} [BoldFont = *-Medium, AutoFakeSlant] }, CJKmono-font = { {LXGW WenKai Mono} [BoldFont = *-Medium, AutoFakeSlant] }, \end{verbatim} +\end{framed} \scratch \begin{solution} @@ -73,25 +75,15 @@ will be hidden when enable this. \section{Left Text \& Right Figure} -\begin{framed} - \begin{verbatim} - \begin{textfig}[ key values ] - <Left Content> - \textfigsplit - <Right Content> - \end{textfig} - \end{verbatim} -\end{framed} +\begin{verbatim} + \begin {textfig} [ ratio ] + <Left Content> \textfigsplit <Right Content> + \end {textfig} +\end{verbatim} -The keys in the environment \env{textfig} accepts the following values: -\begin{tasks}[ label = \ensuremath\bullet ](2) - \task \keys{\cmdmac~lefthand ratio} accepts float point number. - \task \keys{\cmdmac~righthand ratio} accepts float point number. - \task \keys{\cmdmac~lefthand width} accepts diameter. - \task \keys{\cmdmac~righthand width} accepts diameter. -\end{tasks} +The keys in the environment \env{textfig} accepts a ratio that separate by a colon (\cmd:). -\begin{textfig}[ lefthand ratio = .72 ] +\begin{textfig}[ 3:2 ] \begin{problem}[ text-fig layout] \lipsum [ 1 ] \begin{tasks}(4) diff --git a/macros/latex/contrib/whatsnote/tex/litebook.cls b/macros/latex/contrib/whatsnote/tex/litebook.cls new file mode 100644 index 0000000000..c7e038975c --- /dev/null +++ b/macros/latex/contrib/whatsnote/tex/litebook.cls @@ -0,0 +1,26 @@ +%% *********************************************************************** +%% Copyright 2024 by M.Y. XIA <xiamyphys@gmail.com> * +%% * +%% This work may be distributed and/or modified under the conditions * +%% of the LaTeX Project Public License * +%% * +%% http://www.latex-project.org/lppl.txt * +%% * +%% either version 1.3c of this license or any later version. * +%% * +%% This work has the LPPL maintenance status `obsoleted'. * +%% This work has the LPPL maintenance status `obsoleted'. * +%% This work has the LPPL maintenance status `obsoleted'. * +%% *********************************************************************** +\ProvidesExplClass {litebook} {2024/11/26} {0.2b} + {Now replaced by the whatsnote class} + +\msg_new:nnn { litebook } { Obsolete~LaTeX~Package } + { The~litebook~class~is~now~obsoleted.~ + Please~load~the~`whatsnote'~class~instead,~or~ + access~the~'obsolete~packages'~dictionary~on~CTAN. } +\msg_error:nn { litebook } { Obsolete~LaTeX~Package } + +\LoadClass{minimal} + +\endinput
\ No newline at end of file diff --git a/macros/latex/contrib/whatsnote/tex/litesolution.cls b/macros/latex/contrib/whatsnote/tex/litesolution.cls new file mode 100644 index 0000000000..4234fb2dbe --- /dev/null +++ b/macros/latex/contrib/whatsnote/tex/litesolution.cls @@ -0,0 +1,26 @@ +%% *********************************************************************** +%% Copyright 2024 by M.Y. XIA <xiamyphys@gmail.com> * +%% * +%% This work may be distributed and/or modified under the conditions * +%% of the LaTeX Project Public License * +%% * +%% http://www.latex-project.org/lppl.txt * +%% * +%% either version 1.3c of this license or any later version. * +%% * +%% This work has the LPPL maintenance status `obsoleted'. * +%% This work has the LPPL maintenance status `obsoleted'. * +%% This work has the LPPL maintenance status `obsoleted'. * +%% *********************************************************************** +\ProvidesExplClass {litesolution} {2024/11/26} {2.4a} + {Now replaced by the whatsnote class} + +\msg_new:nnn { litesolution } { Obsolete~LaTeX~Package } + { The~litesolution~class~is~now~obsoleted.~ + Please~load~the~`whatsnote'~class~instead,~or~ + access~the~'obsolete~packages'~dictionary~on~CTAN. } +\msg_error:nn { litesolution } { Obsolete~LaTeX~Package } + +\LoadClass{minimal} + +\endinput
\ No newline at end of file diff --git a/macros/latex/contrib/whatsnote/tex/thmlist.sty b/macros/latex/contrib/whatsnote/tex/thmlist.sty new file mode 100644 index 0000000000..a8124be74e --- /dev/null +++ b/macros/latex/contrib/whatsnote/tex/thmlist.sty @@ -0,0 +1,27 @@ +%% *********************************************************************** +%% Copyright 2024 by M.Y. XIA <xiamyphys@gmail.com> * +%% * +%% This work may be distributed and/or modified under the conditions * +%% of the LaTeX Project Public License * +%% * +%% http://www.latex-project.org/lppl.txt * +%% * +%% either version 1.3c of this license or any later version. * +%% * +%% This work has the LPPL maintenance status `obsoleted'. * +%% This work has the LPPL maintenance status `obsoleted'. * +%% This work has the LPPL maintenance status `obsoleted'. * +%% *********************************************************************** +\ProvidesExplPackage {thmlist} {2024/11/26} {0.1b} + {Formally a part of the class litebook} + +\msg_new:nnn { thmlist } { Obsolete~LaTeX~Package } + { The~thmlist~package~is~now~obsoleted.~ + Its~functions~are~contained~in~the~`whatsnote'~class,~ + and~its~functions~are~highly~redundant~with~existing~packages,~ + and~its~functions~can~be~very~easily~achieved~by~expl3. + Please~load~the~`whatsnote'~class~instead,~or~ + access~the~'obsolete~packages'~dictionary~on~CTAN. + } +\msg_error:nn { thmlist } { Obsolete~LaTeX~Package } +\endinput
\ No newline at end of file diff --git a/macros/latex/contrib/whatsnote/tex/whats-font-module.code.tex b/macros/latex/contrib/whatsnote/tex/whats-font-module.code.tex index e6ebbb6adf..19ab0f7b01 100644 --- a/macros/latex/contrib/whatsnote/tex/whats-font-module.code.tex +++ b/macros/latex/contrib/whatsnote/tex/whats-font-module.code.tex @@ -21,7 +21,7 @@ [ warnings-off = { mathtools-colon, mathtools-overbracket } ] {unicode-math} \tl_if_empty:NF \g__whatsnote_math_font - { \setmathfont{ \g__whatsnote_math_font } } + { \setmathfont { \g__whatsnote_math_font } } \usephysicsmodule{bm-um.legacy} } diff --git a/macros/latex/contrib/whatsnote/tex/whats-layout-module.code.tex b/macros/latex/contrib/whatsnote/tex/whats-layout-module.code.tex index 3dead99c38..ff190de229 100644 --- a/macros/latex/contrib/whatsnote/tex/whats-layout-module.code.tex +++ b/macros/latex/contrib/whatsnote/tex/whats-layout-module.code.tex @@ -1,11 +1,13 @@ \whatsnote_provide_module:n { layout } -% \bool_if:NT \g__whatsnote_darkmode_bool -% { -% \pagecolor{black!90} -% \hook_gput_code:nnn { env/document/before } { . } -% { \color{gray!5}\global\let\default@color\current@color } -% } +\bool_if:NTF \g__whatsnote_darkmode_bool + { + \pagecolor{black!90} + \color{black!10} + \tl_set:Nn \l__whats_darkmode_fading_tl {!30} + \AtBeginDocument{\color_select:n{black!10}} + } + { \tl_new:N \l__whats_darkmode_fading_tl } \def\@makechapterhead#1 { @@ -39,121 +41,54 @@ \renewcommand*{\theproblem}{\arabic{problem}} \setcounter{section}{0} \setcounter{problem}{0} - \vspace*{-35\p@} { \centering \parindent \z@ \normalfont \interlinepenalty\@M \huge \bfseries #1\par\nobreak - \vskip 30\p@ + \vskip 40\p@ } } -\box_new:N \l__whats_left_box -\box_new:N \l__whats_right_box -\box_new:N \l__whats_seg_box -\keys_define:nn { whats / textfig } - { - lefthand~ratio .fp_set:N = \l__whats_left_ratio_fp , - lefthand~ratio .initial:n = .64 , - lefthand~width .dim_set:N = \l__whats_left_dim , - righthand~ratio .fp_set:N = \l__whats_right_ratio_fp , - righthand~ratio .initial:n = .32 , - righthand~width .dim_set:N = \l__whats_right_dim , - sidebyside~gap .dim_set:N = \l__whats_gap_dim , - sidebyside~gap .initial:n = .02\linewidth , - before~left .tl_set:N = \l__whats_before_left_tl , - before~right .tl_set:N = \l__whats_before_right_tl , - } -\cs_new_protected:Npn \textfigsplit - { - %% Width is too small! Abort! - \dim_compare:nNnT \l__whats_right_dim > { 10sp } - { - \__whats_textfig_end_save: - \__whats_textfig_save:NN \l__whats_right_box \l__whats_right_dim - \l__whats_before_right_tl \ignorespaces - } - } -\NewDocumentEnvironment{textfig}{ O{} } - { - \medskip \keys_set:nn { whats / textfig } {#1} - \__whats_calc_width: - \__whats_textfig_save:NN \l__whats_left_box \l__whats_left_dim - \l__whats_before_left_tl \ignorespaces - } +\NewDocumentEnvironment{textfig}{O{7 \c_colon_str 2}} { - \__whats_textfig_end_save: - \__whats_textfig_typeset: - \medskip - } -\cs_new:Npn \__whats_calc_width: - { - \bool_lazy_and:nnTF - { \dim_compare_p:nNn \l__whats_left_dim = \c_zero_dim } - { \dim_compare_p:nNn \l__whats_right_dim = \c_zero_dim } + \group_begin: + \seq_set_split:Nee \l__whats_textfig_ratio_seq {\c_colon_str} {#1} + \vspace{4.5pt plus 1.5pt minus 1.5pt} \noindent + \minipage { - \bool_lazy_and:nnTF - { \fp_compare_p:nNn { abs ( \l__whats_left_ratio_fp ) } < { 0.0001 } } - { \fp_compare_p:nNn { abs ( \l__whats_right_ratio_fp ) } < { 0.0001 } } - { - \dim_set:Nn \l__whats_left_dim { 0.5\linewidth - 0.5\l__whats_gap_dim } - \dim_set:Nn \l__whats_right_dim { \l__whats_left_dim } - } + \fp_eval:n { - \fp_compare:nNnTF { abs ( \l__whats_left_ratio_fp ) } < { 0.0001 } - { - \dim_set:Nn \l__whats_right_dim - { - \fp_use:N \l__whats_right_ratio_fp - \dimexpr \linewidth - \l__whats_gap_dim \relax - } - \dim_set:Nn \l__whats_left_dim - { \linewidth - \l__whats_gap_dim - \l__whats_right_dim } - } - { - \dim_set:Nn \l__whats_left_dim - { - \fp_use:N \l__whats_left_ratio_fp - \dimexpr \linewidth - \l__whats_gap_dim \relax - } - \dim_set:Nn \l__whats_right_dim - { \linewidth - \l__whats_gap_dim - \l__whats_left_dim } - } - } - } - { - \dim_compare:nNnTF \l__whats_left_dim = \c_zero_dim - { - \dim_set:Nn \l__whats_left_dim - { \linewidth - \l__whats_gap_dim - \l__whats_right_dim } - } - { - \dim_set:Nn \l__whats_right_dim - { \linewidth - \l__whats_gap_dim - \l__whats_left_dim } - } + .96*\seq_item:Nn \l__whats_textfig_ratio_seq {1}/ + ( + \seq_item:Nn \l__whats_textfig_ratio_seq {1} + + \seq_item:Nn \l__whats_textfig_ratio_seq {2} + ) + }\dimexpr \linewidth } } -\cs_new:Npn \__whats_textfig_save:NN #1 #2 - { - \hbox_set:Nw #1 - \minipage {#2} - \setlength{\parindent}{0pt} - } -\cs_new:Npn \__whats_textfig_end_save: { \endminipage - \hbox_set_end: + \vspace{4.5pt plus 1.5pt minus 1.5pt} \par + \group_end: } -\cs_new:Npn \__whats_textfig_typeset: + +\NewDocumentCommand \textfigsplit {} { - \hbox_to_wd:nn { \linewidth } + \endminipage + \hspace{.02\linewidth} + \minipage { - \hbox_unpack_drop:N \l__whats_left_box - \hss - \hbox_unpack_drop:N \l__whats_right_box - } + \fp_eval:n + { + .96*\seq_item:Nn \l__whats_textfig_ratio_seq {2}/ + ( + \seq_item:Nn \l__whats_textfig_ratio_seq {1} + + \seq_item:Nn \l__whats_textfig_ratio_seq {2} + ) + }\dimexpr \linewidth + } } \RequirePackage{ tasks, multirow, multicol } diff --git a/macros/latex/contrib/whatsnote/tex/whats-theorem-module.code.tex b/macros/latex/contrib/whatsnote/tex/whats-theorem-module.code.tex index fcde4a0ade..04a7b8fa78 100644 --- a/macros/latex/contrib/whatsnote/tex/whats-theorem-module.code.tex +++ b/macros/latex/contrib/whatsnote/tex/whats-theorem-module.code.tex @@ -1,7 +1,7 @@ \whatsnote_provide_module:n { theorem } \RequirePackage - { mathtools, amssymb, amsthm, cancel, extarrows, + { mathtools, amssymb, keytheorems, cancel, extarrows, nicematrix, siunitx, physics2, fixdif, derivative } \newtheorem{theorem}{Theorem} @@ -19,17 +19,17 @@ { \ensuremath { \mathcolor { gray } { \blacksquare } } } \newtheorem { problem } { - \sffamily\scshape \color { DarkGreen } + \sffamily\scshape \color { DarkGreen \l__whats_darkmode_fading_tl } \faIcon { pen-square }~Problem } [ chapter ] \newtheorem* { solution } { - \sffamily\scshape \color { MidnightBlue } + \sffamily\scshape \color { MidnightBlue \l__whats_darkmode_fading_tl } \faIcon { check-square }~Solution } \newtheorem* { scratchwork } { - \sffamily\scshape \color { MidnightBlue } + \sffamily\scshape \color { MidnightBlue \l__whats_darkmode_fading_tl } \faIcon { eraser }~Scratch~Work } \RequirePackage{comment} diff --git a/macros/latex/contrib/whatsnote/tex/whatsnote.cls b/macros/latex/contrib/whatsnote/tex/whatsnote.cls index 1915375e33..235df43972 100644 --- a/macros/latex/contrib/whatsnote/tex/whatsnote.cls +++ b/macros/latex/contrib/whatsnote/tex/whatsnote.cls @@ -20,8 +20,8 @@ %% and README.md. * %% available at https://github.com/xiamyphys/whatsnote * %% *********************************************************************** -\def\whatsnote@date{2024/11/11} -\def\whatsnote@version{3.0A} +\def\whatsnote@date{2024/11/26} +\def\whatsnote@version{3.0B} \ProvidesExplClass {whatsnote} {\whatsnote@date} {\whatsnote@version} {LaTeX Class for taking Note} diff --git a/macros/latex/contrib/zref-clever/CHANGELOG.md b/macros/latex/contrib/zref-clever/CHANGELOG.md index 9cfeded72f..189a3d7052 100644 --- a/macros/latex/contrib/zref-clever/CHANGELOG.md +++ b/macros/latex/contrib/zref-clever/CHANGELOG.md @@ -1,6 +1,26 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.4.9...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.5.0...HEAD) + +## [v0.5.0](https://github.com/gusbrs/zref-clever/compare/v0.4.9...v0.5.0) (2024-11-25) + +### Added +- Swedish localization (see issue + [#35](https://github.com/gusbrs/zref-clever/issues/35)). + +### Changed +- The `declension` option from `\zcDeclareLanguage`, the `case` option from + `\zcLanguageSetup`, and the `d` general option (from `\zcref`) have been + renamed to `variants`, `variant`, and `v`, respectively. This is a + "semantic generalization" of the existing infrastructure. In other words, + the package now interprets more broadly type name variants, which can be + used for any language-specific needs and not just declension cases. See + discussion at issue [#35](https://github.com/gusbrs/zref-clever/issues/35). + +### Deprecated +- The `declension` option from `\zcDeclareLanguage`, the `case` option from + `\zcLanguageSetup`, and the `d` general option (from `\zcref`) have been + deprecated in favor of their new names. ## [v0.4.9](https://github.com/gusbrs/zref-clever/compare/v0.4.8...v0.4.9) (2024-11-16) diff --git a/macros/latex/contrib/zref-clever/zref-clever-code.pdf b/macros/latex/contrib/zref-clever/zref-clever-code.pdf Binary files differindex 67cc89a1db..bbadec4b54 100644 --- a/macros/latex/contrib/zref-clever/zref-clever-code.pdf +++ b/macros/latex/contrib/zref-clever/zref-clever-code.pdf diff --git a/macros/latex/contrib/zref-clever/zref-clever-doc.pdf b/macros/latex/contrib/zref-clever/zref-clever-doc.pdf Binary files differindex 658f16af4e..0d690197ac 100644 --- a/macros/latex/contrib/zref-clever/zref-clever-doc.pdf +++ b/macros/latex/contrib/zref-clever/zref-clever-doc.pdf diff --git a/macros/latex/contrib/zref-clever/zref-clever-doc.tex b/macros/latex/contrib/zref-clever/zref-clever-doc.tex index fc7290791d..f446558a5d 100644 --- a/macros/latex/contrib/zref-clever/zref-clever-doc.tex +++ b/macros/latex/contrib/zref-clever/zref-clever-doc.tex @@ -733,11 +733,11 @@ language known by \pkg{zref-clever}. For more details on \zcref*[ref=title,noname]{sec:internationalization}, see \zcref{sec:internationalization}. -\DescribeOption{d} % -The \opt{d} option sets the declension case, and affects the type name used -for typesetting the reference. Whether this option is operative, and which -values it accepts, depends on the declared setup for each language. For -details, see \zcref{sec:internationalization}. +\DescribeOption{v} % +The \opt{v} option sets the variant, and affects the type name used for +typesetting the reference. Whether this option is operative, and which values +it accepts, depends on the declared setup for each language. For details, see +\zcref{sec:internationalization}. \DescribeOption{nudge} % \DescribeOption{nudgeif} % @@ -1360,7 +1360,9 @@ indeed required, without users having to worry about it at all. & UKenglish \\ & USenglish \\ french & acadian \\ - spanish & \\ + & \\ + & \\ + & \\ \bottomrule \end{tabular} \quad @@ -1378,6 +1380,8 @@ indeed required, without users having to worry about it at all. & brazil \\ & portuges \\ russian & \\ + spanish & \\ + swedish & \\ \bottomrule \end{tabular} \caption{Declared languages and aliases} @@ -1399,32 +1403,35 @@ with \cs{zcDeclareLanguage}, \cs{zcDeclareLanguageAlias}, and \end{function} Declare a new language for use with \pkg{zref-clever}. If \meta{language} has already been declared, just warn. The \meta{options} argument receives the -usual \texttt{key=value} list and recognizes three keys: \opt{declension}, -\opt{gender}, and \opt{allcaps}. \opt{declension} receives a coma separated -list of valid declension cases for \meta{language}. The first element of the -list is considered to be the default case, both for the \opt{d} option in -\cs{zcref} and for the \opt{case} option in \cs{zcLanguageSetup}. Similarly, -\opt{gender} receives a comma separated list of genders for \meta{language}. -The elements in this list are those which are recognized as valid for the -language for both the \opt{g} option in \cs{zcref} and the \opt{gender} option -in \cs{zcLanguageSetup}. There is no default presumed in this case. Finally, -\opt{allcaps} can be used with languages for which nouns must be always -capitalized for grammatical reasons. For a language declared with the -\opt{allcaps} option, the \opt{cap} reference option (see \zcref{sec:options}) -is disregarded, and \cs{zcref} always uses the capitalized type name forms. -This means that language files for languages with such a trait can be halved -in size, and that user customization for them is simplified, only requiring -the capitalized name forms. On the other hand, the non-capitalized -\texttt{name-} reference format options are rendered no-op for the language in -question. \zcref[S]{tab:language-options} presents an overview of the options -in effect for the languages declared by \pkg{zref-clever}. -\cs{zcDeclareLanguage} is preamble only. +usual \texttt{key=value} list and recognizes three keys: \opt{variants}, +\opt{gender}, and \opt{allcaps}. \opt{variants} receives a coma separated +list of valid type name variants for \meta{language}.\footnote{This option was + initially conceived to support declension cases, but was eventually + generalized to encompass a broader meaning, and is now more flexibly + interpreted as simply ``variants''.} The first element of the list is +considered to be the default variant, both for the \opt{v} option in +\cs{zcref} and for the \opt{variant} option in \cs{zcLanguageSetup}. +Similarly, \opt{gender} receives a comma separated list of genders for +\meta{language}. The elements in this list are those which are recognized as +valid for the language for both the \opt{g} option in \cs{zcref} and the +\opt{gender} option in \cs{zcLanguageSetup}. There is no default presumed in +this case. Finally, \opt{allcaps} can be used with languages for which nouns +must be always capitalized for grammatical reasons. For a language declared +with the \opt{allcaps} option, the \opt{cap} reference option (see +\zcref{sec:options}) is disregarded, and \cs{zcref} always uses the +capitalized type name forms. This means that language files for languages +with such a trait can be halved in size, and that user customization for them +is simplified, only requiring the capitalized name forms. On the other hand, +the non-capitalized \texttt{name-} reference format options are rendered no-op +for the language in question. \zcref[S]{tab:language-options} presents an +overview of the options in effect for the languages declared by +\pkg{zref-clever}. \cs{zcDeclareLanguage} is preamble only. \begin{table} \centering \begin{tabular}{l>{\ttfamily}c>{\ttfamily}c>{\ttfamily}c} \toprule - Language & declension & gender & allcaps \\ + Language & variants & gender & allcaps \\ \midrule dutch & -- & f,m,n & -- \\ english & -- & -- & -- \\ @@ -1434,6 +1441,7 @@ in effect for the languages declared by \pkg{zref-clever}. portuguese & -- & f,m & -- \\ spanish & -- & f,m & -- \\ russian & n,a,g,d,i,p & f,m,n & -- \\ + swedish & -- & -- & -- \\ \bottomrule \end{tabular} \caption{Options for declared languages} @@ -1459,24 +1467,24 @@ the user. \cs{zcDeclareLanguageAlias} is preamble only. Sets language-specific reference format options for \meta{language} (see \zcref{sec:reference-format}), be they type-specific or not. \meta{language} must be already known to \pkg{zref-clever}. Besides reference format options, -\cs{zcLanguageSetup} knows three other keys: \opt{type}, \opt{case}, and +\cs{zcLanguageSetup} knows three other keys: \opt{type}, \opt{variant}, and \opt{gender}. The first two work like a ``switch'' affecting the options \emph{following} it. For example, if \texttt{type=foo} is given in \meta{options} the options following it will be set as type-specific options -for reference type \texttt{foo}. Similarly, after \texttt{case=X} (provided -\texttt{X} is a valid declension case for \meta{language}), the following -\texttt{[Nn]ame-} options will set values for the \texttt{X} declension case -(other reference format options are not affected by \opt{case}). Before the -first occurrence of either \opt{type} or \opt{case} default values are set. -For \opt{case} this means the default declension case, which is the first -element of the list provided to the \opt{declension} option in -\cs{zcDeclareLanguage}. For \opt{type} this means language-specific but not -type-specific option values (see \zcref{sec:reference-format}). An empty -valued \texttt{type=} key can also ``unset'' the type. The \opt{gender} key -sets the gender of the current \texttt{type} (provided the value it receives -is one of the declared genders for \meta{language}). For \texttt{type}s which -have multiple valid genders for a given language, the option can also receive -a comma separated list. \cs{zcLanguageSetup} is preamble only. +for reference type \texttt{foo}. Similarly, after \texttt{variant=X} +(provided \texttt{X} is a valid variant for \meta{language}), the following +\texttt{[Nn]ame-} options will set values for the \texttt{X} variant (other +reference format options are not affected by \opt{variant}). Before the first +occurrence of either \opt{type} or \opt{variant} default values are set. For +\opt{variant} this means the default variant, which is the first element of +the list provided to the \opt{variants} option in \cs{zcDeclareLanguage}. For +\opt{type} this means language-specific but not type-specific option values +(see \zcref{sec:reference-format}). An empty valued \texttt{type=} key can +also ``unset'' the type. The \opt{gender} key sets the gender of the current +\texttt{type} (provided the value it receives is one of the declared genders +for \meta{language}). For \texttt{type}s which have multiple valid genders +for a given language, the option can also receive a comma separated list. +\cs{zcLanguageSetup} is preamble only. A couple of examples to illustrate the syntax of \cs{zcLanguageSetup}: @@ -1492,16 +1500,16 @@ A couple of examples to illustrate the syntax of \cs{zcLanguageSetup}: \zcLanguageSetup{german}{ type = section , gender = m , - case = N , + variant = N , Name-sg = Abschnitt , Name-pl = Abschnitte , - case = A , + variant = A , Name-sg = Abschnitt , Name-pl = Abschnitte , - case = D , + variant = D , Name-sg = Abschnitt , Name-pl = Abschnitten , - case = G , + variant = G , Name-sg = Abschnitts , Name-pl = Abschnitte , } @@ -1517,16 +1525,16 @@ particularly for numbered and gendered articles, even if those don't have their typeset output automated. For reference type names, the declension cases for each language must be -declared with \cs{zcDeclareLanguage}, and the name reference format options -must be provided for each case, which is done for built-in language files of -languages which have noun declension, and can be done by the user with -\cs{zcLanguageSetup}, as we've seen. \pkg{zref-clever} does not try to guess -or infer the case though, you must tell it to \cs{zcref}. And this is done by -means of the \opt{d} option (see \zcref{sec:options}). So you may write -something like ``\texttt{nach den - \cs{zcref}[d=D]\{sec:section-1,sec:section-2\}}'' to get ``nach den +declared as \opt{variants} with \cs{zcDeclareLanguage}, and the name reference +format options must be provided for each case, which is done for built-in +language files of languages which have noun declension, and can be done by the +user with \cs{zcLanguageSetup}, as we've seen. \pkg{zref-clever} does not try +to guess or infer the case though, you must tell it to \cs{zcref}. And this +is done by means of the \opt{v} option (see \zcref{sec:options}). So you may +write something like ``\texttt{nach den + \cs{zcref}[v=D]\{sec:section-1,sec:section-2\}}'' to get ``nach den Abschnitten 1 und 2''. Or ``\texttt{trotz des - \cs{zcref}[d=G]\{eq:theorem-1\}}'' to get ``trotz des Theorems 1''. + \cs{zcref}[v=G]\{eq:theorem-1\}}'' to get ``trotz des Theorems 1''. Regarding the text surrounding the reference -- the inflected article, the passing preposition, etc.\ --, the issue is more delicate. \pkg{zref-clever} @@ -1677,9 +1685,9 @@ the kernel, its syntax and underlying relation with counters is pretty much the same. The same for \pkg{ntheorem}. For \pkg{thmtools}' \cs{declaretheorem}, though some adjustments to the examples below may be required, the basic logic is the same (there is no integration with the -\opt{Refname}, \opt{refname}, and \opt{label} options, which are targeted to -the standard reference system, but you don't actually need them to get things -working conveniently). +\opt{Refname} and \opt{refname} options, which are targeted to the standard +reference system, but you don't actually need them to get things working +conveniently). \subsubsection*{Simple case} @@ -2542,10 +2550,12 @@ The package's language files have been provided or improved thanks to: % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/13 Matteo Ferrigato (Italian), % 'matteo339' % 2022-12-12: https://github.com/gusbrs/zref-clever/issues/11 - and Sergey Slyusarev (Russian). % 'jemmybutton' + Sergey Slyusarev (Russian), % 'jemmybutton' % 2024-05-18: https://github.com/gusbrs/zref-clever/issues/28 % 2024-05-19: https://github.com/gusbrs/zref-clever/pull/29 % 2024-05-20: https://github.com/gusbrs/zref-clever/pull/30 + and \username{Timmyfox} (Swedish). + % 2024-11-22: https://github.com/gusbrs/zref-clever/issues/35 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/macros/latex/contrib/zref-clever/zref-clever.dtx b/macros/latex/contrib/zref-clever/zref-clever.dtx index 40b488eb9b..48969fe7ec 100644 --- a/macros/latex/contrib/zref-clever/zref-clever.dtx +++ b/macros/latex/contrib/zref-clever/zref-clever.dtx @@ -172,7 +172,7 @@ % % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-clever} {2024-11-16} {0.4.9} +\ProvidesExplPackage {zref-clever} {2024-11-25} {0.5.0} {Clever LaTeX cross-references based on zref} % \end{macrocode} % @@ -618,31 +618,31 @@ See~documentation~for~'\iow_char:N\\zcDeclareLanguage'~and~ '\iow_char:N\\zcDeclareLanguageAlias'. } -\msg_new:nnn { zref-clever } { unknown-language-decl } +\msg_new:nnn { zref-clever } { unknown-language-variant } { - Can't~set~declension~'#1'~for~unknown~language~'#2'~\msg_line_context:.~ + Can't~set~variant~'#1'~for~unknown~language~'#2'~\msg_line_context:.~ See~documentation~for~'\iow_char:N\\zcDeclareLanguage'~and~ '\iow_char:N\\zcDeclareLanguageAlias'. } -\msg_new:nnn { zref-clever } { language-no-decl-ref } +\msg_new:nnn { zref-clever } { language-no-variants-ref } { - Language~'#1'~has~no~declared~declension~cases~\msg_line_context:.~ - Nothing~to~do~with~option~'d=#2'. + Language~'#1'~has~no~declared~variants~\msg_line_context:.~ + Nothing~to~do~with~option~'v=#2'. } \msg_new:nnn { zref-clever } { language-no-gender } { Language~'#1'~has~no~declared~gender~\msg_line_context:.~ Nothing~to~do~with~option~'#2=#3'. } -\msg_new:nnn { zref-clever } { language-no-decl-setup } +\msg_new:nnn { zref-clever } { language-no-variants-setup } { - Language~'#1'~has~no~declared~declension~cases~\msg_line_context:.~ - Nothing~to~do~with~option~'case=#2'. + Language~'#1'~has~no~declared~variants~\msg_line_context:.~ + Nothing~to~do~with~option~'variant=#2'. } -\msg_new:nnn { zref-clever } { unknown-decl-case } +\msg_new:nnn { zref-clever } { unknown-variant } { - Declension~case~'#1'~unknown~for~language~'#2'~\msg_line_context:.~ - Using~default~declension~case. + Variant~'#1'~unknown~for~language~'#2'~\msg_line_context:.~ + Using~default~variant. } \msg_new:nnn { zref-clever } { nudge-multitype } { @@ -1410,19 +1410,19 @@ % { % \l_@@_setup_type_tl , % \l_@@_setup_language_tl , -% \l_@@_lang_decl_case_tl , -% \l_@@_lang_declension_seq , +% \l_@@_lang_variant_tl , +% \l_@@_lang_variants_seq , % \l_@@_lang_gender_seq , % } -% Store ``current'' type, language, and declension cases in different places -% for type-specific and language-specific options handling, notably in -% \cs{@@_provide_langfile:n}, \cs{zcRefTypeSetup}, and -% \cs{zcLanguageSetup}, but also for language specific options retrieval. +% Store ``current'' type, language, and variants in different places for +% type-specific and language-specific options handling, notably in +% \cs{@@_provide_langfile:n}, \cs{zcRefTypeSetup}, and \cs{zcLanguageSetup}, +% but also for language specific options retrieval. % \begin{macrocode} \tl_new:N \l_@@_setup_type_tl \tl_new:N \l_@@_setup_language_tl -\tl_new:N \l_@@_lang_decl_case_tl -\seq_new:N \l_@@_lang_declension_seq +\tl_new:N \l_@@_lang_variant_tl +\seq_new:N \l_@@_lang_variants_seq \seq_new:N \l_@@_lang_gender_seq % \end{macrocode} % \end{macro} @@ -1701,18 +1701,18 @@ % the only difference is that the ``language name'' happens to be the same as % the ``base language name'', in other words, it is an ``alias to itself''. % \oarg{options} receive a \texttt{k=v} set of options, with three valid -% options. The first, \opt{declension}, takes the noun declension cases -% prefixes for \meta{language} as a comma separated list, whose first element -% is taken to be the default case. The second, \opt{gender}, receives the -% genders for \meta{language} as comma separated list. The third, -% \opt{allcaps}, is a boolean, and indicates that for \meta{language} all -% nouns must be capitalized for grammatical reasons, in which case, the -% \opt{cap} option is disregarded for \meta{language}. If \meta{language} is -% already known, just warn. This implies a particular restriction regarding -% \oarg{options}, namely that these options, when defined by the package, -% cannot be redefined by the user. This is deliberate, otherwise the built-in -% language files would become much too sensitive to this particular user -% input, and unnecessarily so. \cs{zcDeclareLanguage} is preamble only. +% options. The first, \opt{variants}, takes the variants for \meta{language} +% as a comma separated list, whose first element is taken to be the default +% case. The second, \opt{gender}, receives the genders for \meta{language} as +% comma separated list. The third, \opt{allcaps}, is a boolean, and indicates +% that for \meta{language} all nouns must be capitalized for grammatical +% reasons, in which case, the \opt{cap} option is disregarded for +% \meta{language}. If \meta{language} is already known, just warn. This +% implies a particular restriction regarding \oarg{options}, namely that these +% options, when defined by the package, cannot be redefined by the user. This +% is deliberate, otherwise the built-in language files would become much too +% sensitive to this particular user input, and unnecessarily so. +% \cs{zcDeclareLanguage} is preamble only. % \begin{syntax} % \cs{zcDeclareLanguage} \oarg{options} \marg{language} % \end{syntax} @@ -1769,21 +1769,23 @@ % \begin{macrocode} \keys_define:nn { zref-clever/declarelang } { - declension .code:n = + variants .code:n = { \seq_new:c { \@@_opt_varname_language:enn - { \l_@@_setup_language_tl } { declension } { seq } + { \l_@@_setup_language_tl } { variants } { seq } } \seq_gset_from_clist:cn { \@@_opt_varname_language:enn - { \l_@@_setup_language_tl } { declension } { seq } + { \l_@@_setup_language_tl } { variants } { seq } } {#1} } , - declension .value_required:n = true , + variants .value_required:n = true , + % NOTE Option deprecated in 2024-11-24 for v0.5.0. + declension .meta:n = { variants = {#1} } , gender .code:n = { \seq_new:c @@ -1826,11 +1828,11 @@ % behavior is language dependent, but the language itself can also be set as % an option (\opt{lang}, value stored in \cs{l_@@_ref_language_tl}). % Second, some of its tasks must be done regardless of any option being -% given (e.g. the default declension case, the \opt{allcaps} option). -% Hence, we must validate the language settings after the reference options -% have been set. It is expected to be called right (or soon) after -% \cs{keys_set:nn} in \cs{@@_zcref:nnn}, where current values for -% \cs{l_@@_ref_language_tl} and \cs{l_@@_ref_decl_case_tl} are in place. +% given (e.g. the default variant, the \opt{allcaps} option). Hence, we +% must validate the language settings after the reference options have been +% set. It is expected to be called right (or soon) after \cs{keys_set:nn} +% in \cs{@@_zcref:nnn}, where current values for \cs{l_@@_ref_language_tl} +% and \cs{l_@@_ref_variant_tl} are in place. % \begin{macrocode} \cs_new_protected:Npn \@@_process_language_settings: { @@ -1838,47 +1840,47 @@ { \l_@@_ref_language_tl } { % \end{macrocode} -% Validate the declension case (\opt{d}) option against the declared cases for -% the reference language. If the user value for the latter does not match the -% declension cases declared for the former, the function sets an appropriate -% value for \cs{l_@@_ref_decl_case_tl}, either using the default case, or -% clearing the variable, depending on the language setup. And also issues a -% warning about it. +% Validate the variant (\opt{v}) option against the declared variants for the +% reference language. If the user value for the latter does not match the +% variants declared for the former, the function sets an appropriate value for +% \cs{l_@@_ref_variant_tl}, either using the default case, or clearing the +% variable, depending on the language setup. And also issues a warning about +% it. % \begin{macrocode} \@@_opt_seq_get:cNF { \@@_opt_varname_language:enn - { \l_@@_ref_language_tl } { declension } { seq } + { \l_@@_ref_language_tl } { variants } { seq } } - \l_@@_lang_declension_seq - { \seq_clear:N \l_@@_lang_declension_seq } - \seq_if_empty:NTF \l_@@_lang_declension_seq + \l_@@_lang_variants_seq + { \seq_clear:N \l_@@_lang_variants_seq } + \seq_if_empty:NTF \l_@@_lang_variants_seq { - \tl_if_empty:NF \l_@@_ref_decl_case_tl + \tl_if_empty:NF \l_@@_ref_variant_tl { \msg_warning:nnee { zref-clever } - { language-no-decl-ref } + { language-no-variants-ref } { \l_@@_ref_language_tl } - { \l_@@_ref_decl_case_tl } - \tl_clear:N \l_@@_ref_decl_case_tl + { \l_@@_ref_variant_tl } + \tl_clear:N \l_@@_ref_variant_tl } } { - \tl_if_empty:NTF \l_@@_ref_decl_case_tl + \tl_if_empty:NTF \l_@@_ref_variant_tl { - \seq_get_left:NN \l_@@_lang_declension_seq - \l_@@_ref_decl_case_tl + \seq_get_left:NN \l_@@_lang_variants_seq + \l_@@_ref_variant_tl } { - \seq_if_in:NVF \l_@@_lang_declension_seq - \l_@@_ref_decl_case_tl + \seq_if_in:NVF \l_@@_lang_variants_seq + \l_@@_ref_variant_tl { \msg_warning:nnee { zref-clever } - { unknown-decl-case } - { \l_@@_ref_decl_case_tl } + { unknown-variant } + { \l_@@_ref_variant_tl } { \l_@@_ref_language_tl } - \seq_get_left:NN \l_@@_lang_declension_seq - \l_@@_ref_decl_case_tl + \seq_get_left:NN \l_@@_lang_variants_seq + \l_@@_ref_variant_tl } } } @@ -1933,15 +1935,15 @@ } { % \end{macrocode} -% If the language itself is not declared, we still have to issue declension -% and gender warnings, if \opt{d} or \opt{g} options were used. +% If the language itself is not declared, we still have to variant and gender +% warnings, if \opt{d} or \opt{g} options were used. % \begin{macrocode} - \tl_if_empty:NF \l_@@_ref_decl_case_tl + \tl_if_empty:NF \l_@@_ref_variant_tl { - \msg_warning:nnee { zref-clever } { unknown-language-decl } - { \l_@@_ref_decl_case_tl } + \msg_warning:nnee { zref-clever } { unknown-language-variant } + { \l_@@_ref_variant_tl } { \l_@@_ref_language_tl } - \tl_clear:N \l_@@_ref_decl_case_tl + \tl_clear:N \l_@@_ref_variant_tl } \tl_if_empty:NF \l_@@_ref_gender_tl { @@ -2005,7 +2007,7 @@ % % \cs{@@_provide_langfile:n} is only meant to load the built-in language % files. For languages declared by the user, or for any settings to a known -% language made with \cs{zcLanguageSetup}, values are populated directly to a +% language made with \cs{zcLanguageSetup}, values are populated directly to % corresponding variables. Hence, there is no need to ``load'' anything in % this case: definitions and assignments made by the user are performed % immediately. @@ -2051,15 +2053,15 @@ \@@_opt_seq_get:cNF { \@@_opt_varname_language:nnn - {#1} { declension } { seq } + {#1} { variants } { seq } } - \l_@@_lang_declension_seq - { \seq_clear:N \l_@@_lang_declension_seq } - \seq_if_empty:NTF \l_@@_lang_declension_seq - { \tl_clear:N \l_@@_lang_decl_case_tl } + \l_@@_lang_variants_seq + { \seq_clear:N \l_@@_lang_variants_seq } + \seq_if_empty:NTF \l_@@_lang_variants_seq + { \tl_clear:N \l_@@_lang_variant_tl } { - \seq_get_left:NN \l_@@_lang_declension_seq - \l_@@_lang_decl_case_tl + \seq_get_left:NN \l_@@_lang_variants_seq + \l_@@_lang_variant_tl } \@@_opt_seq_get:cNF { @@ -2110,25 +2112,25 @@ { \tl_clear:N \l_@@_setup_type_tl } { \tl_set:Nn \l_@@_setup_type_tl {#1} } } , - case .code:n = + variant .code:n = { - \seq_if_empty:NTF \l_@@_lang_declension_seq + \seq_if_empty:NTF \l_@@_lang_variants_seq { - \msg_info:nnee { zref-clever } { language-no-decl-setup } + \msg_info:nnee { zref-clever } { language-no-variants-setup } { \l_@@_setup_language_tl } {#1} } { - \seq_if_in:NnTF \l_@@_lang_declension_seq {#1} - { \tl_set:Nn \l_@@_lang_decl_case_tl {#1} } + \seq_if_in:NnTF \l_@@_lang_variants_seq {#1} + { \tl_set:Nn \l_@@_lang_variant_tl {#1} } { - \msg_info:nnee { zref-clever } { unknown-decl-case } + \msg_info:nnee { zref-clever } { unknown-variant } {#1} { \l_@@_setup_language_tl } - \seq_get_left:NN \l_@@_lang_declension_seq - \l_@@_lang_decl_case_tl + \seq_get_left:NN \l_@@_lang_variants_seq + \l_@@_lang_variant_tl } } } , - case .value_required:n = true , + variant .value_required:n = true , gender .value_required:n = true , gender .code:n = { @@ -2459,7 +2461,7 @@ { option-only-type-specific } {#1} } { - \tl_if_empty:NTF \l_@@_lang_decl_case_tl + \tl_if_empty:NTF \l_@@_lang_variant_tl { \@@_opt_tl_gset_if_new:cn { @@ -2476,7 +2478,7 @@ \@@_opt_varname_lang_type:eeen { \l_@@_setup_language_tl } { \l_@@_setup_type_tl } - { \l_@@_lang_decl_case_tl - #1 } { tl } + { \l_@@_lang_variant_tl - #1 } { tl } } {##1} } @@ -3583,11 +3585,11 @@ % % % -% \subsubsection*{\opt{d} option} +% \subsubsection*{\opt{v} option} % -% For setting the declension case. Short for convenience and for not -% polluting the markup too much given that, for languages that need it, it may -% get to be used frequently. +% For setting the variant. Short for convenience and for not polluting the +% markup too much given that, for languages that need it, it may get to be +% used frequently. % % \contributor{\username{samcarter}} and \contributor{Alan Munn} provided % useful comments about declension on the TeX.SX chat. Also, @@ -3596,11 +3598,13 @@ % source to frame the problem in general terms. % % \begin{macrocode} -\tl_new:N \l_@@_ref_decl_case_tl +\tl_new:N \l_@@_ref_variant_tl \keys_define:nn { zref-clever/reference } { - d .code:n = - { \msg_warning:nnn { zref-clever } { option-document-only } { d } } , + v .code:n = + { \msg_warning:nnn { zref-clever } { option-document-only } { v } } , + % NOTE Option deprecated in 2024-11-24 for v0.5.0. + d .meta:n = { v = {#1} } , } \AddToHook { begindocument } { @@ -3610,8 +3614,10 @@ % We just store the value at this point, which is validated by % \cs{@@_process_language_settings:} after \cs{keys_set:nn}. % \begin{macrocode} - d .tl_set:N = \l_@@_ref_decl_case_tl , - d .value_required:n = true , + v .tl_set:N = \l_@@_ref_variant_tl , + v .value_required:n = true , + % NOTE Option deprecated in 2024-11-24 for v0.5.0. + d .meta:n = { v = {#1} } , } } % \end{macrocode} @@ -4634,15 +4640,15 @@ \@@_opt_seq_get:cNF { \@@_opt_varname_language:nnn - {#1} { declension } { seq } + {#1} { variants } { seq } } - \l_@@_lang_declension_seq - { \seq_clear:N \l_@@_lang_declension_seq } - \seq_if_empty:NTF \l_@@_lang_declension_seq - { \tl_clear:N \l_@@_lang_decl_case_tl } + \l_@@_lang_variants_seq + { \seq_clear:N \l_@@_lang_variants_seq } + \seq_if_empty:NTF \l_@@_lang_variants_seq + { \tl_clear:N \l_@@_lang_variant_tl } { - \seq_get_left:NN \l_@@_lang_declension_seq - \l_@@_lang_decl_case_tl + \seq_get_left:NN \l_@@_lang_variants_seq + \l_@@_lang_variant_tl } \@@_opt_seq_get:cNF { @@ -4674,25 +4680,27 @@ { \tl_clear:N \l_@@_setup_type_tl } { \tl_set:Nn \l_@@_setup_type_tl {#1} } } , - case .code:n = + variant .code:n = { - \seq_if_empty:NTF \l_@@_lang_declension_seq + \seq_if_empty:NTF \l_@@_lang_variants_seq { - \msg_warning:nnee { zref-clever } { language-no-decl-setup } + \msg_warning:nnee { zref-clever } { language-no-variants-setup } { \l_@@_setup_language_tl } {#1} } { - \seq_if_in:NnTF \l_@@_lang_declension_seq {#1} - { \tl_set:Nn \l_@@_lang_decl_case_tl {#1} } + \seq_if_in:NnTF \l_@@_lang_variants_seq {#1} + { \tl_set:Nn \l_@@_lang_variant_tl {#1} } { - \msg_warning:nnee { zref-clever } { unknown-decl-case } + \msg_warning:nnee { zref-clever } { unknown-variant } {#1} { \l_@@_setup_language_tl } - \seq_get_left:NN \l_@@_lang_declension_seq - \l_@@_lang_decl_case_tl + \seq_get_left:NN \l_@@_lang_variants_seq + \l_@@_lang_variant_tl } } } , - case .value_required:n = true , + variant .value_required:n = true , + % NOTE Option deprecated in 2024-11-24 for v0.5.0. + case .meta:n = { variant = {#1} } , gender .value_required:n = true , gender .code:n = { @@ -5030,7 +5038,7 @@ { option-only-type-specific } {#1} } { - \tl_if_empty:NTF \l_@@_lang_decl_case_tl + \tl_if_empty:NTF \l_@@_lang_variant_tl { \@@_opt_tl_gset:cn { @@ -5047,7 +5055,7 @@ \@@_opt_varname_lang_type:eeen { \l_@@_setup_language_tl } { \l_@@_setup_type_tl } - { \l_@@_lang_decl_case_tl - #1 } + { \l_@@_lang_variant_tl - #1 } { tl } } {##1} @@ -7353,11 +7361,11 @@ } \l_@@_type_name_tl { - \tl_if_empty:NF \l_@@_ref_decl_case_tl + \tl_if_empty:NF \l_@@_ref_variant_tl { \tl_put_left:Nn \l_@@_name_format_tl { - } \tl_put_left:NV \l_@@_name_format_tl - \l_@@_ref_decl_case_tl + \l_@@_ref_variant_tl } \@@_opt_tl_get:cNF { @@ -7396,17 +7404,17 @@ } \l_@@_type_name_tl { - \tl_if_empty:NF \l_@@_ref_decl_case_tl + \tl_if_empty:NF \l_@@_ref_variant_tl { \tl_put_left:Nn \l_@@_name_format_tl { - } \tl_put_left:NV \l_@@_name_format_tl - \l_@@_ref_decl_case_tl + \l_@@_ref_variant_tl \tl_put_left:Nn \l_@@_name_format_fallback_tl { - } \tl_put_left:NV \l_@@_name_format_fallback_tl - \l_@@_ref_decl_case_tl + \l_@@_ref_variant_tl } \@@_opt_tl_get:cNF { @@ -8560,19 +8568,19 @@ % 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 +% language was declared with \opt{allcaps} option, and names for each variant, +% if the language was declared with \opt{variants}; 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, @@ -8854,7 +8862,7 @@ type = solution , % \begin{macrocode} %<*package> \zcDeclareLanguage - [ declension = { N , A , D , G } , gender = { f , m , n } , allcaps ] + [ variants = { N , A , D , G } , gender = { f , m , n } , allcaps ] { german } \zcDeclareLanguageAlias { ngerman } { german } \zcDeclareLanguageAlias { austrian } { german } @@ -8881,106 +8889,106 @@ rangesep = {~bis\nobreakspace} , type = book , gender = n , - case = N , + variant = N , Name-sg = Buch , Name-pl = Bücher , - case = A , + variant = A , Name-sg = Buch , Name-pl = Bücher , - case = D , + variant = D , Name-sg = Buch , Name-pl = Büchern , - case = G , + variant = G , Name-sg = Buches , Name-pl = Bücher , type = part , gender = m , - case = N , + variant = N , Name-sg = Teil , Name-pl = Teile , - case = A , + variant = A , Name-sg = Teil , Name-pl = Teile , - case = D , + variant = D , Name-sg = Teil , Name-pl = Teilen , - case = G , + variant = G , Name-sg = Teiles , Name-pl = Teile , type = chapter , gender = n , - case = N , + variant = N , Name-sg = Kapitel , Name-pl = Kapitel , - case = A , + variant = A , Name-sg = Kapitel , Name-pl = Kapitel , - case = D , + variant = D , Name-sg = Kapitel , Name-pl = Kapiteln , - case = G , + variant = G , Name-sg = Kapitels , Name-pl = Kapitel , type = section , gender = m , - case = N , + variant = N , Name-sg = Abschnitt , Name-pl = Abschnitte , - case = A , + variant = A , Name-sg = Abschnitt , Name-pl = Abschnitte , - case = D , + variant = D , Name-sg = Abschnitt , Name-pl = Abschnitten , - case = G , + variant = G , Name-sg = Abschnitts , Name-pl = Abschnitte , type = paragraph , gender = m , - case = N , + variant = N , Name-sg = Absatz , Name-pl = Absätze , - case = A , + variant = A , Name-sg = Absatz , Name-pl = Absätze , - case = D , + variant = D , Name-sg = Absatz , Name-pl = Absätzen , - case = G , + variant = G , Name-sg = Absatzes , Name-pl = Absätze , type = appendix , gender = m , - case = N , + variant = N , Name-sg = Anhang , Name-pl = Anhänge , - case = A , + variant = A , Name-sg = Anhang , Name-pl = Anhänge , - case = D , + variant = D , Name-sg = Anhang , Name-pl = Anhängen , - case = G , + variant = G , Name-sg = Anhangs , Name-pl = Anhänge , type = page , gender = f , - case = N , + variant = N , Name-sg = Seite , Name-pl = Seiten , - case = A , + variant = A , Name-sg = Seite , Name-pl = Seiten , - case = D , + variant = D , Name-sg = Seite , Name-pl = Seiten , - case = G , + variant = G , Name-sg = Seite , Name-pl = Seiten , rangesep = {\textendash} , @@ -8988,37 +8996,37 @@ type = page , type = line , gender = f , - case = N , + variant = N , Name-sg = Zeile , Name-pl = Zeilen , - case = A , + variant = A , Name-sg = Zeile , Name-pl = Zeilen , - case = D , + variant = D , Name-sg = Zeile , Name-pl = Zeilen , - case = G , + variant = G , Name-sg = Zeile , Name-pl = Zeilen , type = figure , gender = f , - case = N , + variant = N , Name-sg = Abbildung , Name-pl = Abbildungen , Name-sg-ab = Abb. , Name-pl-ab = Abb. , - case = A , + variant = A , Name-sg = Abbildung , Name-pl = Abbildungen , Name-sg-ab = Abb. , Name-pl-ab = Abb. , - case = D , + variant = D , Name-sg = Abbildung , Name-pl = Abbildungen , Name-sg-ab = Abb. , Name-pl-ab = Abb. , - case = G , + variant = G , Name-sg = Abbildung , Name-pl = Abbildungen , Name-sg-ab = Abb. , @@ -9026,91 +9034,91 @@ type = figure , type = table , gender = f , - case = N , + variant = N , Name-sg = Tabelle , Name-pl = Tabellen , - case = A , + variant = A , Name-sg = Tabelle , Name-pl = Tabellen , - case = D , + variant = D , Name-sg = Tabelle , Name-pl = Tabellen , - case = G , + variant = G , Name-sg = Tabelle , Name-pl = Tabellen , type = item , gender = m , - case = N , + variant = N , Name-sg = Punkt , Name-pl = Punkte , - case = A , + variant = A , Name-sg = Punkt , Name-pl = Punkte , - case = D , + variant = D , Name-sg = Punkt , Name-pl = Punkten , - case = G , + variant = G , Name-sg = Punktes , Name-pl = Punkte , type = footnote , gender = f , - case = N , + variant = N , Name-sg = Fußnote , Name-pl = Fußnoten , - case = A , + variant = A , Name-sg = Fußnote , Name-pl = Fußnoten , - case = D , + variant = D , Name-sg = Fußnote , Name-pl = Fußnoten , - case = G , + variant = G , Name-sg = Fußnote , Name-pl = Fußnoten , type = endnote , gender = f , - case = N , + variant = N , Name-sg = Endnote , Name-pl = Endnoten , - case = A , + variant = A , Name-sg = Endnote , Name-pl = Endnoten , - case = D , + variant = D , Name-sg = Endnote , Name-pl = Endnoten , - case = G , + variant = G , Name-sg = Endnote , Name-pl = Endnoten , type = note , gender = f , - case = N , + variant = N , Name-sg = Anmerkung , Name-pl = Anmerkungen , - case = A , + variant = A , Name-sg = Anmerkung , Name-pl = Anmerkungen , - case = D , + variant = D , Name-sg = Anmerkung , Name-pl = Anmerkungen , - case = G , + variant = G , Name-sg = Anmerkung , Name-pl = Anmerkungen , type = equation , gender = f , - case = N , + variant = N , Name-sg = Gleichung , Name-pl = Gleichungen , - case = A , + variant = A , Name-sg = Gleichung , Name-pl = Gleichungen , - case = D , + variant = D , Name-sg = Gleichung , Name-pl = Gleichungen , - case = G , + variant = G , Name-sg = Gleichung , Name-pl = Gleichungen , refbounds-first-sg = {,(,),} , @@ -9118,196 +9126,196 @@ type = equation , type = theorem , gender = n , - case = N , + variant = N , Name-sg = Theorem , Name-pl = Theoreme , - case = A , + variant = A , Name-sg = Theorem , Name-pl = Theoreme , - case = D , + variant = D , Name-sg = Theorem , Name-pl = Theoremen , - case = G , + variant = G , Name-sg = Theorems , Name-pl = Theoreme , type = lemma , gender = n , - case = N , + variant = N , Name-sg = Lemma , Name-pl = Lemmata , - case = A , + variant = A , Name-sg = Lemma , Name-pl = Lemmata , - case = D , + variant = D , Name-sg = Lemma , Name-pl = Lemmata , - case = G , + variant = G , Name-sg = Lemmas , Name-pl = Lemmata , type = corollary , gender = n , - case = N , + variant = N , Name-sg = Korollar , Name-pl = Korollare , - case = A , + variant = A , Name-sg = Korollar , Name-pl = Korollare , - case = D , + variant = D , Name-sg = Korollar , Name-pl = Korollaren , - case = G , + variant = G , Name-sg = Korollars , Name-pl = Korollare , type = proposition , gender = m , - case = N , + variant = N , Name-sg = Satz , Name-pl = Sätze , - case = A , + variant = A , Name-sg = Satz , Name-pl = Sätze , - case = D , + variant = D , Name-sg = Satz , Name-pl = Sätzen , - case = G , + variant = G , Name-sg = Satzes , Name-pl = Sätze , type = definition , gender = f , - case = N , + variant = N , Name-sg = Definition , Name-pl = Definitionen , - case = A , + variant = A , Name-sg = Definition , Name-pl = Definitionen , - case = D , + variant = D , Name-sg = Definition , Name-pl = Definitionen , - case = G , + variant = G , Name-sg = Definition , Name-pl = Definitionen , type = proof , gender = m , - case = N , + variant = N , Name-sg = Beweis , Name-pl = Beweise , - case = A , + variant = A , Name-sg = Beweis , Name-pl = Beweise , - case = D , + variant = D , Name-sg = Beweis , Name-pl = Beweisen , - case = G , + variant = G , Name-sg = Beweises , Name-pl = Beweise , type = result , gender = n , - case = N , + variant = N , Name-sg = Ergebnis , Name-pl = Ergebnisse , - case = A , + variant = A , Name-sg = Ergebnis , Name-pl = Ergebnisse , - case = D , + variant = D , Name-sg = Ergebnis , Name-pl = Ergebnissen , - case = G , + variant = G , Name-sg = Ergebnisses , Name-pl = Ergebnisse , type = remark , gender = f , - case = N , + variant = N , Name-sg = Bemerkung , Name-pl = Bemerkungen , - case = A , + variant = A , Name-sg = Bemerkung , Name-pl = Bemerkungen , - case = D , + variant = D , Name-sg = Bemerkung , Name-pl = Bemerkungen , - case = G , + variant = G , Name-sg = Bemerkung , Name-pl = Bemerkungen , type = example , gender = n , - case = N , + variant = N , Name-sg = Beispiel , Name-pl = Beispiele , - case = A , + variant = A , Name-sg = Beispiel , Name-pl = Beispiele , - case = D , + variant = D , Name-sg = Beispiel , Name-pl = Beispielen , - case = G , + variant = G , Name-sg = Beispiels , Name-pl = Beispiele , type = algorithm , gender = m , - case = N , + variant = N , Name-sg = Algorithmus , Name-pl = Algorithmen , - case = A , + variant = A , Name-sg = Algorithmus , Name-pl = Algorithmen , - case = D , + variant = D , Name-sg = Algorithmus , Name-pl = Algorithmen , - case = G , + variant = G , Name-sg = Algorithmus , Name-pl = Algorithmen , type = listing , gender = n , - case = N , + variant = N , Name-sg = Listing , Name-pl = Listings , - case = A , + variant = A , Name-sg = Listing , Name-pl = Listings , - case = D , + variant = D , Name-sg = Listing , Name-pl = Listings , - case = G , + variant = G , Name-sg = Listings , Name-pl = Listings , type = exercise , gender = f , - case = N , + variant = N , Name-sg = Übungsaufgabe , Name-pl = Übungsaufgaben , - case = A , + variant = A , Name-sg = Übungsaufgabe , Name-pl = Übungsaufgaben , - case = D , + variant = D , Name-sg = Übungsaufgabe , Name-pl = Übungsaufgaben , - case = G , + variant = G , Name-sg = Übungsaufgabe , Name-pl = Übungsaufgaben , type = solution , gender = f , - case = N , + variant = N , Name-sg = Lösung , Name-pl = Lösungen , - case = A , + variant = A , Name-sg = Lösung , Name-pl = Lösungen , - case = D , + variant = D , Name-sg = Lösung , Name-pl = Lösungen , - case = G , + variant = G , Name-sg = Lösung , Name-pl = Lösungen , % \end{macrocode} @@ -10568,7 +10576,7 @@ type = solution , % \begin{macrocode} %<*package> \zcDeclareLanguage - [ declension = { n , a , g , d , i , p } , gender = { f , m , n } ] + [ variants = { n , a , g , d , i , p } , gender = { f , m , n } ] { russian } %</package> % \end{macrocode} @@ -10591,32 +10599,32 @@ rangesep = {~по\nobreakspace} , type = book , gender = f , - case = n , + variant = n , Name-sg = Книга , name-sg = книга , Name-pl = Книги , name-pl = книги , - case = a , + variant = a , Name-sg = Книгу , name-sg = книгу , Name-pl = Книги , name-pl = книги , - case = g , + variant = g , Name-sg = Книги , name-sg = книги , Name-pl = Книг , name-pl = книг , - case = d , + variant = d , Name-sg = Книге , name-sg = книге , Name-pl = Книгам , name-pl = книгам , - case = i , + variant = i , Name-sg = Книгой , name-sg = книгой , Name-pl = Книгами , name-pl = книгами , - case = p , + variant = p , Name-sg = Книге , name-sg = книге , Name-pl = Книгах , @@ -10624,7 +10632,7 @@ type = book , type = part , gender = f , - case = n , + variant = n , Name-sg = Часть , name-sg = часть , Name-pl = Части , @@ -10633,7 +10641,7 @@ type = part , name-sg-ab = ч. , Name-pl-ab = Чч. , name-pl-ab = чч. , - case = a , + variant = a , Name-sg = Часть , name-sg = часть , Name-pl = Части , @@ -10642,7 +10650,7 @@ type = part , name-sg-ab = ч. , Name-pl-ab = Чч. , name-pl-ab = чч. , - case = g , + variant = g , Name-sg = Части , name-sg = части , Name-pl = Частей , @@ -10651,7 +10659,7 @@ type = part , name-sg-ab = ч. , Name-pl-ab = Чч. , name-pl-ab = чч. , - case = d , + variant = d , Name-sg = Части , name-sg = части , Name-pl = Частям , @@ -10660,7 +10668,7 @@ type = part , name-sg-ab = ч. , Name-pl-ab = Чч. , name-pl-ab = чч. , - case = i , + variant = i , Name-sg = Частью , name-sg = частью , Name-pl = Частями , @@ -10669,7 +10677,7 @@ type = part , name-sg-ab = ч. , Name-pl-ab = Чч. , name-pl-ab = чч. , - case = p , + variant = p , Name-sg = Части , name-sg = части , Name-pl = Частях , @@ -10681,7 +10689,7 @@ type = part , type = chapter , gender = f , - case = n , + variant = n , Name-sg = Глава , name-sg = глава , Name-pl = Главы , @@ -10690,7 +10698,7 @@ type = chapter , name-sg-ab = гл. , Name-pl-ab = Гл. , name-pl-ab = гл. , - case = a , + variant = a , Name-sg = Главу , name-sg = главу , Name-pl = Главы , @@ -10699,7 +10707,7 @@ type = chapter , name-sg-ab = гл. , Name-pl-ab = Гл. , name-pl-ab = гл. , - case = g , + variant = g , Name-sg = Главы , name-sg = главы , Name-pl = Глав , @@ -10708,7 +10716,7 @@ type = chapter , name-sg-ab = гл. , Name-pl-ab = Гл. , name-pl-ab = гл. , - case = d , + variant = d , Name-sg = Главе , name-sg = главе , Name-pl = Главам , @@ -10717,7 +10725,7 @@ type = chapter , name-sg-ab = гл. , Name-pl-ab = Гл. , name-pl-ab = гл. , - case = i , + variant = i , Name-sg = Главой , name-sg = главой , Name-pl = Главами , @@ -10726,7 +10734,7 @@ type = chapter , name-sg-ab = гл. , Name-pl-ab = Гл. , name-pl-ab = гл. , - case = p , + variant = p , Name-sg = Главе , name-sg = главе , Name-pl = Главах , @@ -10738,32 +10746,32 @@ type = chapter , type = section , gender = m , - case = n , + variant = n , Name-sg = Раздел , name-sg = раздел , Name-pl = Разделы , name-pl = разделы , - case = a , + variant = a , Name-sg = Раздел , name-sg = раздел , Name-pl = Разделы , name-pl = разделы , - case = g , + variant = g , Name-sg = Раздела , name-sg = раздела , Name-pl = Разделов , name-pl = разделов , - case = d , + variant = d , Name-sg = Разделу , name-sg = разделу , Name-pl = Разделам , name-pl = разделам , - case = i , + variant = i , Name-sg = Разделом , name-sg = разделом , Name-pl = Разделами , name-pl = разделами , - case = p , + variant = p , Name-sg = Разделе , name-sg = разделе , Name-pl = Разделах , @@ -10771,32 +10779,32 @@ type = section , type = paragraph , gender = m , - case = n , + variant = n , Name-sg = Абзац , name-sg = абзац , Name-pl = Абзацы , name-pl = абзацы , - case = a , + variant = a , Name-sg = Абзац , name-sg = абзац , Name-pl = Абзацы , name-pl = абзацы , - case = g , + variant = g , Name-sg = Абзаца , name-sg = абзаца , Name-pl = Абзацев , name-pl = абзацев , - case = d , + variant = d , Name-sg = Абзацу , name-sg = абзацу , Name-pl = Абзацам , name-pl = абзацам , - case = i , + variant = i , Name-sg = Абзацем , name-sg = абзацем , Name-pl = Абзацами , name-pl = абзацами , - case = p , + variant = p , Name-sg = Абзаце , name-sg = абзаце , Name-pl = Абзацах , @@ -10804,32 +10812,32 @@ type = paragraph , type = appendix , gender = n , - case = n , + variant = n , Name-sg = Приложение , name-sg = приложение , Name-pl = Приложения , name-pl = приложения , - case = a , + variant = a , Name-sg = Приложение , name-sg = приложение , Name-pl = Приложения , name-pl = приложения , - case = g , + variant = g , Name-sg = Приложения , name-sg = приложения , Name-pl = Приложений , name-pl = приложений , - case = d , + variant = d , Name-sg = Приложению , name-sg = приложению , Name-pl = Приложениям , name-pl = приложениям , - case = i , + variant = i , Name-sg = Приложением , name-sg = приложением , Name-pl = Приложениями , name-pl = приложениями , - case = p , + variant = p , Name-sg = Приложении , name-sg = приложении , Name-pl = Приложениях , @@ -10837,7 +10845,7 @@ type = appendix , type = page , gender = f , - case = n , + variant = n , Name-sg = Страница , name-sg = страница , Name-pl = Страницы , @@ -10846,7 +10854,7 @@ type = page , name-sg-ab = с. , Name-pl-ab = Сс. , name-pl-ab = сс. , - case = a , + variant = a , Name-sg = Страницу , name-sg = страницу , Name-pl = Страницы , @@ -10855,7 +10863,7 @@ type = page , name-sg-ab = с. , Name-pl-ab = Сс. , name-pl-ab = сс. , - case = g , + variant = g , Name-sg = Страницы , name-sg = страницы , Name-pl = Страниц , @@ -10864,7 +10872,7 @@ type = page , name-sg-ab = с. , Name-pl-ab = Сс. , name-pl-ab = сс. , - case = d , + variant = d , Name-sg = Странице , name-sg = странице , Name-pl = Страницам , @@ -10873,7 +10881,7 @@ type = page , name-sg-ab = с. , Name-pl-ab = Сс. , name-pl-ab = сс. , - case = i , + variant = i , Name-sg = Страницей , name-sg = страницей , Name-pl = Страницами , @@ -10882,7 +10890,7 @@ type = page , name-sg-ab = с. , Name-pl-ab = Сс. , name-pl-ab = сс. , - case = p , + variant = p , Name-sg = Странице , name-sg = странице , Name-pl = Страницах , @@ -10897,32 +10905,32 @@ type = page , type = line , gender = f , - case = n , + variant = n , Name-sg = Строка , name-sg = строка , Name-pl = Строки , name-pl = строки , - case = a , + variant = a , Name-sg = Строку , name-sg = строку , Name-pl = Строки , name-pl = строки , - case = g , + variant = g , Name-sg = Строки , name-sg = строки , Name-pl = Строк , name-pl = строк , - case = d , + variant = d , Name-sg = Строке , name-sg = строке , Name-pl = Строкам , name-pl = строкам , - case = i , + variant = i , Name-sg = Строкой , name-sg = строкой , Name-pl = Строками , name-pl = строками , - case = p , + variant = p , Name-sg = Строке , name-sg = строке , Name-pl = Строках , @@ -10930,7 +10938,7 @@ type = line , type = figure , gender = m , - case = n , + variant = n , Name-sg = Рисунок , name-sg = рисунок , Name-pl = Рисунки , @@ -10939,7 +10947,7 @@ type = figure , name-sg-ab = рис. , Name-pl-ab = Рис. , name-pl-ab = рис. , - case = a , + variant = a , Name-sg = Рисунок , name-sg = рисунок , Name-pl = Рисунки , @@ -10948,7 +10956,7 @@ type = figure , name-sg-ab = рис. , Name-pl-ab = Рис. , name-pl-ab = рис. , - case = g , + variant = g , Name-sg = Рисунка , name-sg = рисунка , Name-pl = Рисунков , @@ -10957,7 +10965,7 @@ type = figure , name-sg-ab = рис. , Name-pl-ab = Рис. , name-pl-ab = рис. , - case = d , + variant = d , Name-sg = Рисунку , name-sg = рисунку , Name-pl = Рисункам , @@ -10966,7 +10974,7 @@ type = figure , name-sg-ab = рис. , Name-pl-ab = Рис. , name-pl-ab = рис. , - case = i , + variant = i , Name-sg = Рисунком , name-sg = рисунком , Name-pl = Рисунками , @@ -10975,7 +10983,7 @@ type = figure , name-sg-ab = рис. , Name-pl-ab = Рис. , name-pl-ab = рис. , - case = p , + variant = p , Name-sg = Рисунке , name-sg = рисунке , Name-pl = Рисунках , @@ -10987,7 +10995,7 @@ type = figure , type = table , gender = f , - case = n , + variant = n , Name-sg = Таблица , name-sg = таблица , Name-pl = Таблицы , @@ -10996,7 +11004,7 @@ type = table , name-sg-ab = табл. , Name-pl-ab = Табл. , name-pl-ab = табл. , - case = a , + variant = a , Name-sg = Таблицу , name-sg = таблицу , Name-pl = Таблицы , @@ -11005,7 +11013,7 @@ type = table , name-sg-ab = табл. , Name-pl-ab = Табл. , name-pl-ab = табл. , - case = g , + variant = g , Name-sg = Таблицы , name-sg = таблицы , Name-pl = Таблиц , @@ -11014,7 +11022,7 @@ type = table , name-sg-ab = табл. , Name-pl-ab = Табл. , name-pl-ab = табл. , - case = d , + variant = d , Name-sg = Таблице , name-sg = таблице , Name-pl = Таблицам , @@ -11023,7 +11031,7 @@ type = table , name-sg-ab = табл. , Name-pl-ab = Табл. , name-pl-ab = табл. , - case = i , + variant = i , Name-sg = Таблицей , name-sg = таблицей , Name-pl = Таблицами , @@ -11032,7 +11040,7 @@ type = table , name-sg-ab = табл. , Name-pl-ab = Табл. , name-pl-ab = табл. , - case = p , + variant = p , Name-sg = Таблице , name-sg = таблице , Name-pl = Таблицах , @@ -11044,7 +11052,7 @@ type = table , type = item , gender = m , - case = n , + variant = n , Name-sg = Пункт , name-sg = пункт , Name-pl = Пункты , @@ -11053,7 +11061,7 @@ type = item , name-sg-ab = п. , Name-pl-ab = Пп. , name-pl-ab = пп. , - case = a , + variant = a , Name-sg = Пункт , name-sg = пункт , Name-pl = Пункты , @@ -11062,7 +11070,7 @@ type = item , name-sg-ab = п. , Name-pl-ab = Пп. , name-pl-ab = пп. , - case = g , + variant = g , Name-sg = Пункта , name-sg = пункта , Name-pl = Пунктов , @@ -11071,7 +11079,7 @@ type = item , name-sg-ab = п. , Name-pl-ab = Пп. , name-pl-ab = пп. , - case = d , + variant = d , Name-sg = Пункту , name-sg = пункту , Name-pl = Пунктам , @@ -11080,7 +11088,7 @@ type = item , name-sg-ab = п. , Name-pl-ab = Пп. , name-pl-ab = пп. , - case = i , + variant = i , Name-sg = Пунктом , name-sg = пунктом , Name-pl = Пунктами , @@ -11089,7 +11097,7 @@ type = item , name-sg-ab = п. , Name-pl-ab = Пп. , name-pl-ab = пп. , - case = p , + variant = p , Name-sg = Пункте , name-sg = пункте , Name-pl = Пунктах , @@ -11101,32 +11109,32 @@ type = item , type = footnote , gender = f , - case = n , + variant = n , Name-sg = Сноска , name-sg = сноска , Name-pl = Сноски , name-pl = сноски , - case = a , + variant = a , Name-sg = Сноску , name-sg = сноску , Name-pl = Сноски , name-pl = сноски , - case = g , + variant = g , Name-sg = Сноски , name-sg = сноски , Name-pl = Сносок , name-pl = сносок , - case = d , + variant = d , Name-sg = Сноске , name-sg = сноске , Name-pl = Сноскам , name-pl = сноскам , - case = i , + variant = i , Name-sg = Сноской , name-sg = сноской , Name-pl = Сносками , name-pl = сносками , - case = p , + variant = p , Name-sg = Сноске , name-sg = сноске , Name-pl = Сносках , @@ -11134,32 +11142,32 @@ type = footnote , type = endnote , gender = f , - case = n , + variant = n , Name-sg = Сноска , name-sg = сноска , Name-pl = Сноски , name-pl = сноски , - case = a , + variant = a , Name-sg = Сноску , name-sg = сноску , Name-pl = Сноски , name-pl = сноски , - case = g , + variant = g , Name-sg = Сноски , name-sg = сноски , Name-pl = Сносок , name-pl = сносок , - case = d , + variant = d , Name-sg = Сноске , name-sg = сноске , Name-pl = Сноскам , name-pl = сноскам , - case = i , + variant = i , Name-sg = Сноской , name-sg = сноской , Name-pl = Сносками , name-pl = сносками , - case = p , + variant = p , Name-sg = Сноске , name-sg = сноске , Name-pl = Сносках , @@ -11167,32 +11175,32 @@ type = endnote , type = note , gender = f , - case = n , + variant = n , Name-sg = Заметка , name-sg = заметка , Name-pl = Заметки , name-pl = заметки , - case = a , + variant = a , Name-sg = Заметку , name-sg = заметку , Name-pl = Заметки , name-pl = заметки , - case = g , + variant = g , Name-sg = Заметки , name-sg = заметки , Name-pl = Заметок , name-pl = заметок , - case = d , + variant = d , Name-sg = Заметке , name-sg = заметке , Name-pl = Заметкам , name-pl = заметкам , - case = i , + variant = i , Name-sg = Заметкой , name-sg = заметкой , Name-pl = Заметками , name-pl = заметками , - case = p , + variant = p , Name-sg = Заметке , name-sg = заметке , Name-pl = Заметках , @@ -11200,7 +11208,7 @@ type = note , type = equation , gender = n , - case = n , + variant = n , Name-sg = Уравнение , name-sg = уравнение , Name-pl = Уравнения , @@ -11209,7 +11217,7 @@ type = equation , name-sg-ab = ур. , Name-pl-ab = Ур. , name-pl-ab = ур. , - case = a , + variant = a , Name-sg = Уравнение , name-sg = уравнение , Name-pl = Уравнения , @@ -11218,7 +11226,7 @@ type = equation , name-sg-ab = ур. , Name-pl-ab = Ур. , name-pl-ab = ур. , - case = g , + variant = g , Name-sg = Уравнения , name-sg = уравнения , Name-pl = Уравнений , @@ -11227,7 +11235,7 @@ type = equation , name-sg-ab = ур. , Name-pl-ab = Ур. , name-pl-ab = ур. , - case = d , + variant = d , Name-sg = Уравнению , name-sg = уравнению , Name-pl = Уравнениям , @@ -11236,7 +11244,7 @@ type = equation , name-sg-ab = ур. , Name-pl-ab = Ур. , name-pl-ab = ур. , - case = i , + variant = i , Name-sg = Уравнением , name-sg = уравнением , Name-pl = Уравнениями , @@ -11245,7 +11253,7 @@ type = equation , name-sg-ab = ур. , Name-pl-ab = Ур. , name-pl-ab = ур. , - case = p , + variant = p , Name-sg = Уравнении , name-sg = уравнении , Name-pl = Уравнениях , @@ -11260,7 +11268,7 @@ type = equation , type = theorem , gender = f , - case = n , + variant = n , Name-sg = Теорема , name-sg = теорема , Name-pl = Теоремы , @@ -11269,7 +11277,7 @@ type = theorem , name-sg-ab = теор. , Name-pl-ab = Теор. , name-pl-ab = теор. , - case = a , + variant = a , Name-sg = Теорему , name-sg = теорему , Name-pl = Теоремы , @@ -11278,7 +11286,7 @@ type = theorem , name-sg-ab = теор. , Name-pl-ab = Теор. , name-pl-ab = теор. , - case = g , + variant = g , Name-sg = Теоремы , name-sg = теоремы , Name-pl = Теорем , @@ -11287,7 +11295,7 @@ type = theorem , name-sg-ab = теор. , Name-pl-ab = Теор. , name-pl-ab = теор. , - case = d , + variant = d , Name-sg = Теореме , name-sg = теореме , Name-pl = Теоремам , @@ -11296,7 +11304,7 @@ type = theorem , name-sg-ab = теор. , Name-pl-ab = Теор. , name-pl-ab = теор. , - case = i , + variant = i , Name-sg = Теоремой , name-sg = теоремой , Name-pl = Теоремами , @@ -11305,7 +11313,7 @@ type = theorem , name-sg-ab = теор. , Name-pl-ab = Теор. , name-pl-ab = теор. , - case = p , + variant = p , Name-sg = Теореме , name-sg = теореме , Name-pl = Теоремах , @@ -11317,32 +11325,32 @@ type = theorem , type = lemma , gender = f , - case = n , + variant = n , Name-sg = Лемма , name-sg = лемма , Name-pl = Леммы , name-pl = леммы , - case = a , + variant = a , Name-sg = Лемму , name-sg = лемму , Name-pl = Леммы , name-pl = леммы , - case = g , + variant = g , Name-sg = Леммы , name-sg = леммы , Name-pl = Лемм , name-pl = лемм , - case = d , + variant = d , Name-sg = Лемме , name-sg = лемме , Name-pl = Леммам , name-pl = леммам , - case = i , + variant = i , Name-sg = Леммой , name-sg = леммой , Name-pl = Леммами , name-pl = леммами , - case = p , + variant = p , Name-sg = Лемме , name-sg = лемме , Name-pl = Леммах , @@ -11350,32 +11358,32 @@ type = lemma , type = corollary , gender = m , - case = n , + variant = n , Name-sg = Вывод , name-sg = вывод , Name-pl = Выводы , name-pl = выводы , - case = a , + variant = a , Name-sg = Вывод , name-sg = вывод , Name-pl = Выводы , name-pl = выводы , - case = g , + variant = g , Name-sg = Вывода , name-sg = вывода , Name-pl = Выводов , name-pl = выводов , - case = d , + variant = d , Name-sg = Выводу , name-sg = выводу , Name-pl = Выводам , name-pl = выводам , - case = i , + variant = i , Name-sg = Выводом , name-sg = выводом , Name-pl = Выводами , name-pl = выводами , - case = p , + variant = p , Name-sg = Выводе , name-sg = выводе , Name-pl = Выводах , @@ -11383,7 +11391,7 @@ type = corollary , type = proposition , gender = n , - case = n , + variant = n , Name-sg = Предложение , name-sg = предложение , Name-pl = Предложения , @@ -11392,7 +11400,7 @@ type = proposition , name-sg-ab = предл. , Name-pl-ab = Предл. , name-pl-ab = предл. , - case = a , + variant = a , Name-sg = Предложение , name-sg = предложение , Name-pl = Предложения , @@ -11401,7 +11409,7 @@ type = proposition , name-sg-ab = предл. , Name-pl-ab = Предл. , name-pl-ab = предл. , - case = g , + variant = g , Name-sg = Предложения , name-sg = предложения , Name-pl = Предложений , @@ -11410,7 +11418,7 @@ type = proposition , name-sg-ab = предл. , Name-pl-ab = Предл. , name-pl-ab = предл. , - case = d , + variant = d , Name-sg = Предложению , name-sg = предложению , Name-pl = Предложениям , @@ -11419,7 +11427,7 @@ type = proposition , name-sg-ab = предл. , Name-pl-ab = Предл. , name-pl-ab = предл. , - case = i , + variant = i , Name-sg = Предложением , name-sg = предложением , Name-pl = Предложениями , @@ -11428,7 +11436,7 @@ type = proposition , name-sg-ab = предл. , Name-pl-ab = Предл. , name-pl-ab = предл. , - case = p , + variant = p , Name-sg = Предложении , name-sg = предложении , Name-pl = Предложениях , @@ -11440,7 +11448,7 @@ type = proposition , type = definition , gender = n , - case = n , + variant = n , Name-sg = Определение , name-sg = определение , Name-pl = Определения , @@ -11449,7 +11457,7 @@ type = definition , name-sg-ab = опр. , Name-pl-ab = Опр. , name-pl-ab = опр. , - case = a , + variant = a , Name-sg = Определение , name-sg = определение , Name-pl = Определения , @@ -11458,7 +11466,7 @@ type = definition , name-sg-ab = опр. , Name-pl-ab = Опр. , name-pl-ab = опр. , - case = g , + variant = g , Name-sg = Определения , name-sg = определения , Name-pl = Определений , @@ -11467,7 +11475,7 @@ type = definition , name-sg-ab = опр. , Name-pl-ab = Опр. , name-pl-ab = опр. , - case = d , + variant = d , Name-sg = Определению , name-sg = определению , Name-pl = Определениям , @@ -11476,7 +11484,7 @@ type = definition , name-sg-ab = опр. , Name-pl-ab = Опр. , name-pl-ab = опр. , - case = i , + variant = i , Name-sg = Определением , name-sg = определением , Name-pl = Определениями , @@ -11485,7 +11493,7 @@ type = definition , name-sg-ab = опр. , Name-pl-ab = Опр. , name-pl-ab = опр. , - case = p , + variant = p , Name-sg = Определении , name-sg = определении , Name-pl = Определениях , @@ -11497,32 +11505,32 @@ type = definition , type = proof , gender = n , - case = n , + variant = n , Name-sg = Доказательство , name-sg = доказательство , Name-pl = Доказательства , name-pl = доказательства , - case = a , + variant = a , Name-sg = Доказательство , name-sg = доказательство , Name-pl = Доказательства , name-pl = доказательства , - case = g , + variant = g , Name-sg = Доказательства , name-sg = доказательства , Name-pl = Доказательств , name-pl = доказательств , - case = d , + variant = d , Name-sg = Доказательству , name-sg = доказательству , Name-pl = Доказательствам , name-pl = доказательствам , - case = i , + variant = i , Name-sg = Доказательством , name-sg = доказательством , Name-pl = Доказательствами , name-pl = доказательствами , - case = p , + variant = p , Name-sg = Доказательстве , name-sg = доказательстве , Name-pl = Доказательствах , @@ -11530,32 +11538,32 @@ type = proof , type = result , gender = m , - case = n , + variant = n , Name-sg = Результат , name-sg = результат , Name-pl = Результаты , name-pl = результаты , - case = a , + variant = a , Name-sg = Результат , name-sg = результат , Name-pl = Результаты , name-pl = результаты , - case = g , + variant = g , Name-sg = Результата , name-sg = результата , Name-pl = Результатов , name-pl = результатов , - case = d , + variant = d , Name-sg = Результату , name-sg = результату , Name-pl = Результатам , name-pl = результатам , - case = i , + variant = i , Name-sg = Результатом , name-sg = результатом , Name-pl = Результатами , name-pl = результатами , - case = p , + variant = p , Name-sg = Результате , name-sg = результате , Name-pl = Результатах , @@ -11563,7 +11571,7 @@ type = result , type = remark , gender = n , - case = n , + variant = n , Name-sg = Примечание , name-sg = примечание , Name-pl = Примечания , @@ -11572,7 +11580,7 @@ type = remark , name-sg-ab = прим. , Name-pl-ab = Прим. , name-pl-ab = прим. , - case = a , + variant = a , Name-sg = Примечание , name-sg = примечание , Name-pl = Примечания , @@ -11581,7 +11589,7 @@ type = remark , name-sg-ab = прим. , Name-pl-ab = Прим. , name-pl-ab = прим. , - case = g , + variant = g , Name-sg = Примечания , name-sg = примечания , Name-pl = Примечаний , @@ -11590,7 +11598,7 @@ type = remark , name-sg-ab = прим. , Name-pl-ab = Прим. , name-pl-ab = прим. , - case = d , + variant = d , Name-sg = Примечанию , name-sg = примечанию , Name-pl = Примечаниям , @@ -11599,7 +11607,7 @@ type = remark , name-sg-ab = прим. , Name-pl-ab = Прим. , name-pl-ab = прим. , - case = i , + variant = i , Name-sg = Примечанием , name-sg = примечанием , Name-pl = Примечаниями , @@ -11608,7 +11616,7 @@ type = remark , name-sg-ab = прим. , Name-pl-ab = Прим. , name-pl-ab = прим. , - case = p , + variant = p , Name-sg = Примечании , name-sg = примечании , Name-pl = Примечаниях , @@ -11620,32 +11628,32 @@ type = remark , type = example , gender = m , - case = n , + variant = n , Name-sg = Пример , name-sg = пример , Name-pl = Примеры , name-pl = примеры , - case = a , + variant = a , Name-sg = Пример , name-sg = пример , Name-pl = Примеры , name-pl = примеры , - case = g , + variant = g , Name-sg = Примера , name-sg = примера , Name-pl = Примеров , name-pl = примеров , - case = d , + variant = d , Name-sg = Примеру , name-sg = примеру , Name-pl = Примерам , name-pl = примерам , - case = i , + variant = i , Name-sg = Примером , name-sg = примером , Name-pl = Примерами , name-pl = примерами , - case = p , + variant = p , Name-sg = Примере , name-sg = примере , Name-pl = Примерах , @@ -11653,32 +11661,32 @@ type = example , type = algorithm , gender = m , - case = n , + variant = n , Name-sg = Алгоритм , name-sg = алгоритм , Name-pl = Алгоритмы , name-pl = алгоритмы , - case = a , + variant = a , Name-sg = Алгоритм , name-sg = алгоритм , Name-pl = Алгоритмы , name-pl = алгоритмы , - case = g , + variant = g , Name-sg = Алгоритма , name-sg = алгоритма , Name-pl = Алгоритмов , name-pl = алгоритмов , - case = d , + variant = d , Name-sg = Алгоритму , name-sg = алгоритму , Name-pl = Алгоритмам , name-pl = алгоритмам , - case = i , + variant = i , Name-sg = Алгоритмом , name-sg = алгоритмом , Name-pl = Алгоритмами , name-pl = алгоритмами , - case = p , + variant = p , Name-sg = Алгоритме , name-sg = алгоритме , Name-pl = Алгоритмах , @@ -11686,32 +11694,32 @@ type = algorithm , type = listing , gender = m , - case = n , + variant = n , Name-sg = Листинг , name-sg = листинг , Name-pl = Листинги , name-pl = листинги , - case = a , + variant = a , Name-sg = Листинг , name-sg = листинг , Name-pl = Листинги , name-pl = листинги , - case = g , + variant = g , Name-sg = Листинга , name-sg = листинга , Name-pl = Листингов , name-pl = листингов , - case = d , + variant = d , Name-sg = Листингу , name-sg = листингу , Name-pl = Листингам , name-pl = листингам , - case = i , + variant = i , Name-sg = Листингом , name-sg = листинглм , Name-pl = Листингами , name-pl = листингами , - case = p , + variant = p , Name-sg = Листинге , name-sg = листинге , Name-pl = Листингах , @@ -11719,7 +11727,7 @@ type = listing , type = exercise , gender = n , - case = n , + variant = n , Name-sg = Упражнение , name-sg = упражнение , Name-pl = Упражнения , @@ -11728,7 +11736,7 @@ type = exercise , name-sg-ab = упр. , Name-pl-ab = Упр. , name-pl-ab = упр. , - case = a , + variant = a , Name-sg = Упражнение , name-sg = упражнение , Name-pl = Упражнения , @@ -11737,7 +11745,7 @@ type = exercise , name-sg-ab = упр. , Name-pl-ab = Упр. , name-pl-ab = упр. , - case = g , + variant = g , Name-sg = Упражнения , name-sg = упражнения , Name-pl = Упражнений , @@ -11746,7 +11754,7 @@ type = exercise , name-sg-ab = упр. , Name-pl-ab = Упр. , name-pl-ab = упр. , - case = d , + variant = d , Name-sg = Упражнению , name-sg = упражнению , Name-pl = Упражнениям , @@ -11755,7 +11763,7 @@ type = exercise , name-sg-ab = упр. , Name-pl-ab = Упр. , name-pl-ab = упр. , - case = i , + variant = i , Name-sg = Упражнением , name-sg = упражнением , Name-pl = Упражнениями , @@ -11764,7 +11772,7 @@ type = exercise , name-sg-ab = упр. , Name-pl-ab = Упр. , name-pl-ab = упр. , - case = p , + variant = p , Name-sg = Упражнении , name-sg = упражнении , Name-pl = Упражнениях , @@ -11776,32 +11784,32 @@ type = exercise , type = solution , gender = n , - case = n , + variant = n , Name-sg = Решение , name-sg = решение , Name-pl = Решения , name-pl = решения , - case = a , + variant = a , Name-sg = Решение , name-sg = решение , Name-pl = Решения , name-pl = решения , - case = g , + variant = g , Name-sg = Решения , name-sg = решения , Name-pl = Решений , name-pl = решений , - case = d , + variant = d , Name-sg = Решению , name-sg = решению , Name-pl = Решениям , name-pl = решениям , - case = i , + variant = i , Name-sg = Решением , name-sg = решением , Name-pl = Решениями , name-pl = решениями , - case = p , + variant = p , Name-sg = Решении , name-sg = решении , Name-pl = Решениях , @@ -11813,6 +11821,221 @@ type = solution , % \end{macrocode} % % +% \subsection{Swedish} +% +% Swedish language file initially contributed by +% \contributor{\username{Timmyfox}} (\githubissue{35}). +% +% \begin{macrocode} +%<*package> +\zcDeclareLanguage { swedish } +%</package> +% \end{macrocode} +% +% \begin{macrocode} +%<*lang-swedish> +% \end{macrocode} +% +% \begin{macrocode} +namesep = {\nobreakspace} , +pairsep = {~och\nobreakspace} , +listsep = {,~} , +lastsep = {~och\nobreakspace} , +tpairsep = {~och\nobreakspace} , +tlistsep = {,~} , +tlastsep = {~och\nobreakspace} , +notesep = {~} , +rangesep = {\textendash} , +rangetopair = false , + +type = book , + Name-sg = Bok , + name-sg = bok , + Name-pl = Bok , + name-pl = bok , + +type = part , + Name-sg = Del , + name-sg = del , + Name-pl = Del , + name-pl = del , + +type = chapter , + Name-sg = Kapitel , + name-sg = kapitel , + Name-pl = Kapitel , + name-pl = kapitel , + +type = section , + Name-sg = Avsnitt , + name-sg = avsnitt , + Name-pl = Avsnitt , + name-pl = avsnitt , + +type = paragraph , + Name-sg = Paragraf , + name-sg = paragraf , + Name-pl = Paragraf , + name-pl = paragraf , + +type = appendix , + Name-sg = Bilaga , + name-sg = bilaga , + Name-pl = Bilaga , + name-pl = bilaga , + +type = page , + Name-sg = Sida , + name-sg = sida , + Name-pl = Sida , + name-pl = sida , + +type = line , + Name-sg = Rad , + name-sg = rad , + Name-pl = Rad , + name-pl = rad , + +type = figure , + Name-sg = Figur , + name-sg = figur , + Name-pl = Figur , + name-pl = figur , + Name-sg-ab = Fig. , + name-sg-ab = fig. , + Name-pl-ab = Fig. , + name-pl-ab = fig. , + +type = table , + Name-sg = Tabell , + name-sg = tabell , + Name-pl = Tabell , + name-pl = tabell , + Name-sg-ab = Tab. , + name-sg-ab = tab. , + Name-pl-ab = Tab. , + name-pl-ab = tab. , + +type = item , + Name-sg = Punkt , + name-sg = punkt , + Name-pl = Punkt , + name-pl = punkt , + +type = footnote , + Name-sg = Fotnot , + name-sg = fotnot , + Name-pl = Fotnot , + name-pl = fotnot , + +type = endnote , + Name-sg = Slutnot , + name-sg = slutnot , + Name-pl = Slutnot , + name-pl = slutnot , + +type = note , + Name-sg = Not , + name-sg = not , + Name-pl = Not , + name-pl = not , + +type = equation , + Name-sg = Ekvation , + name-sg = ekvation , + Name-pl = Ekvation , + name-pl = ekvation , + Name-sg-ab = Ekv. , + name-sg-ab = ekv. , + Name-pl-ab = Ekv. , + name-pl-ab = ekv. , + refbounds-first-sg = {,(,),} , + refbounds = {(,,,)} , + +type = theorem , + Name-sg = Sats , + name-sg = sats , + Name-pl = Sats , + name-pl = sats , + +type = lemma , + Name-sg = Hjälpsats , + name-sg = hjälpsats , + Name-pl = Hjälpsats , + name-pl = hjälpsats , + +type = corollary , + Name-sg = Följdsats , + name-sg = följdsats , + Name-pl = Följdsats , + name-pl = följdsats , + +type = proposition , + Name-sg = Påstående , + name-sg = påstående , + Name-pl = Påstående , + name-pl = påstående , + +type = definition , + Name-sg = Definition , + name-sg = definition , + Name-pl = Definition , + name-pl = definition , + +type = proof , + Name-sg = Bevis , + name-sg = bevis , + Name-pl = Bevis , + name-pl = bevis , + +type = result , + Name-sg = Resultat , + name-sg = resultat , + Name-pl = Resultat , + name-pl = resultat , + +type = remark , + Name-sg = Anmärkning , + name-sg = anmärkning , + Name-pl = Anmärkning , + name-pl = anmärkning , + +type = example , + Name-sg = Exempel , + name-sg = exempel , + Name-pl = Exempel , + name-pl = exempel , + +type = algorithm , + Name-sg = Algoritm , + name-sg = algoritm , + Name-pl = Algoritm , + name-pl = algoritm , + +type = listing , + Name-sg = Kod , + name-sg = kod , + Name-pl = Kod , + name-pl = kod , + +type = exercise , + Name-sg = Uppgift , + name-sg = uppgift , + Name-pl = Uppgift , + name-pl = uppgift , + +type = solution , + Name-sg = Lösning , + name-sg = lösning , + Name-pl = Lösning , + name-pl = lösning , +% \end{macrocode} +% +% \begin{macrocode} +%</lang-swedish> +% \end{macrocode} +% +% % \PrintIndex % % \endinput diff --git a/macros/latex/contrib/zref-clever/zref-clever.ins b/macros/latex/contrib/zref-clever/zref-clever.ins index 0aefb6ce73..6545e91539 100644 --- a/macros/latex/contrib/zref-clever/zref-clever.ins +++ b/macros/latex/contrib/zref-clever/zref-clever.ins @@ -96,5 +96,6 @@ for those people who are interested. \generate{\file{zref-clever-dutch.lang}{\from{zref-clever.dtx}{lang-dutch}}} \generate{\file{zref-clever-italian.lang}{\from{zref-clever.dtx}{lang-italian}}} \generate{\file{zref-clever-russian.lang}{\from{zref-clever.dtx}{lang-russian}}} +\generate{\file{zref-clever-swedish.lang}{\from{zref-clever.dtx}{lang-swedish}}} \endbatchfile |