summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-02-23 20:52:43 +0000
committerKarl Berry <karl@freefriends.org>2022-02-23 20:52:43 +0000
commitf1afe203982a734260a15687c4fb5293b6c47ac1 (patch)
tree50ea03da08c2efa3644145b824fae275baf11f26 /Master
parent9a505aaed845e705e71e6215673268f612bbdefd (diff)
atendofenv (23feb22)
git-svn-id: svn://tug.org/texlive/trunk@62153 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/atendofenv/LICENSE24
-rw-r--r--Master/texmf-dist/doc/latex/atendofenv/README.md24
-rw-r--r--Master/texmf-dist/source/latex/atendofenv/atendofenv.dtx149
-rw-r--r--Master/texmf-dist/source/latex/atendofenv/atendofenv.ins48
-rw-r--r--Master/texmf-dist/tex/latex/atendofenv/atendofenv.sty58
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check3
-rw-r--r--Master/tlpkg/tlpsrc/atendofenv.tlpsrc0
-rw-r--r--Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc1
8 files changed, 306 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/atendofenv/LICENSE b/Master/texmf-dist/doc/latex/atendofenv/LICENSE
new file mode 100644
index 00000000000..fdddb29aa44
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/atendofenv/LICENSE
@@ -0,0 +1,24 @@
+This is free and unencumbered software released into the public domain.
+
+Anyone is free to copy, modify, publish, use, compile, sell, or
+distribute this software, either in source code form or as a compiled
+binary, for any purpose, commercial or non-commercial, and by any
+means.
+
+In jurisdictions that recognize copyright laws, the author or authors
+of this software dedicate any and all copyright interest in the
+software to the public domain. We make this dedication for the benefit
+of the public at large and to the detriment of our heirs and
+successors. We intend this dedication to be an overt act of
+relinquishment in perpetuity of all present and future rights to this
+software under copyright law.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+For more information, please refer to <https://unlicense.org>
diff --git a/Master/texmf-dist/doc/latex/atendofenv/README.md b/Master/texmf-dist/doc/latex/atendofenv/README.md
new file mode 100644
index 00000000000..7d3e3cced3c
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/atendofenv/README.md
@@ -0,0 +1,24 @@
+# Package `atendofenv`
+
+A LaTeX package to allow adding a custom symbol at the end of an environment
+(e.g. theorems, definitions, remarks)
+
+## Usage
+
+To add a small triangle at the end of a theorem, simply insert this after
+declaring the `theorem` environment with `\newtheorem`.
+
+```tex
+ \AtEndOfEnv{theorem}{$\triangleleft$}
+```
+
+## Dependencies
+- amsthm (for the QED stack)
+- letltxmacro (for saving existing macros)
+
+
+## Maintainer
+Fangyi Zhou <me+ctan@fangyi.io>
+
+## Licence
+The Unlicense
diff --git a/Master/texmf-dist/source/latex/atendofenv/atendofenv.dtx b/Master/texmf-dist/source/latex/atendofenv/atendofenv.dtx
new file mode 100644
index 00000000000..161db376037
--- /dev/null
+++ b/Master/texmf-dist/source/latex/atendofenv/atendofenv.dtx
@@ -0,0 +1,149 @@
+% \iffalse meta-comment
+% This is free and unencumbered software released into the public domain.
+%
+% Anyone is free to copy, modify, publish, use, compile, sell, or
+% distribute this software, either in source code form or as a compiled
+% binary, for any purpose, commercial or non-commercial, and by any
+% means.
+%
+% In jurisdictions that recognize copyright laws, the author or authors
+% of this software dedicate any and all copyright interest in the
+% software to the public domain. We make this dedication for the benefit
+% of the public at large and to the detriment of our heirs and
+% successors. We intend this dedication to be an overt act of
+% relinquishment in perpetuity of all present and future rights to this
+% software under copyright law.
+%
+% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+% IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+% OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+% ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+% OTHER DEALINGS IN THE SOFTWARE.
+%
+% For more information, please refer to <https://unlicense.org>
+% \fi
+
+% \iffalse
+%<package>\NeedsTeXFormat{LaTeX2e}
+%<package>\ProvidesPackage{atendofenv}[2022/02/23 v0.1 Initial Version]
+%<package>\RequirePackage{amsthm}
+%<package>\RequirePackage{letltxmacro}
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage[T1]{fontenc}
+\usepackage{mathpazo}
+\usepackage[scale=0.85]{FiraMono}
+\usepackage{FiraSans}
+\usepackage[a4paper, margin=3cm]{geometry}
+\usepackage{indentfirst}
+\usepackage[hidelinks]{hyperref}
+\usepackage{atendofenv}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+ \DocInput{atendofenv.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{0}
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+%
+% \GetFileInfo{atendofenv.sty}
+%
+% \title{At End of Env}
+% \author{Fangyi Zhou}
+% \maketitle
+%
+% \section{Motivation}
+% The \texttt{amsthm} package conveniently provides environments for
+% declaring theorems and friends.
+% By default, the \texttt{proof} environment inserts a
+% \href{https://en.wikipedia.org/wiki/Q.E.D.}{QED} symbol at the end of
+% environment.
+% It is sometimes also desirable to insert a similar symbol at the end of other
+% environments, e.g.~at the end of a definition or a remark, which motivates
+% this package.
+%
+% \section{Usage}
+% Let us begin with defining a theorem environment with \texttt{amsthm}:
+% \newtheorem{theorem}{Theorem}
+% \begin{verbatim}
+% \newtheorem{theorem}{Theorem}
+% \end{verbatim}
+% And we can create a theorem like this:
+% \begin{verbatim}
+% \begin{theorem}
+% This is a long theorem that will be very long, and it will be helpful if I
+% can add a symbol at the end of it to mark its end.
+% \end{theorem}
+% \end{verbatim}
+% \begin{theorem}
+% This is a long theorem that will be very long, and it will be helpful if I
+% can add a symbol at the end of it to mark its end.
+% \end{theorem}
+% To do so, simply put after defining a theorem environment:
+% \AtEndOfEnv{theorem}{$\triangleleft$}
+% \begin{verbatim}
+% \AtEndOfEnv{theorem}{$\triangleleft$}
+% \end{verbatim}
+% Now theorems look like this:
+% \begin{theorem}
+% This is a long theorem that will be very long, and it will be helpful if I
+% can add a symbol at the end of it to mark its end.
+% \end{theorem}
+% \noindent
+% \textbf{Q:} \emph{But, couldn't I change tweak the style of theorems when defining them?}
+%
+% \noindent
+% \textbf{A:} Of course, but sometimes they are defined by a class file (e.g.~from
+% publishers), and tweaking class files may be a sin in many situations.
+%
+% \section{Implementation}
+% \begin{macrocode}
+\newcommand{\AtEndOfEnv}[2]{
+% \end{macrocode}
+% We first check whether the environment is defined. If so, save the original
+% macros; otherwise report an error.
+% \begin{macrocode}
+ \ifcsname #1\endcsname
+ \expandafter\LetLtxMacro\csname aeoe@old#1\expandafter\endcsname\csname #1\endcsname
+ \else
+ \PackageError{atendofenv}{Environment #1 undefined}{Check the environment
+ name passed to AtEndOfEnv}
+ \fi
+ \ifcsname end#1\endcsname
+ \expandafter\LetLtxMacro\csname aeoe@oldend#1\expandafter\endcsname\csname end#1\endcsname
+ \else
+ \PackageError{atendofenv}{Environment #1 undefined}{Check the environment
+ name passed to AtEndOfEnv}
+ \fi
+% \end{macrocode}
+% Then we redefined the environment, and use the QED stack of \texttt{amsthm}
+% to get a symbol at the end.
+% \begin{macrocode}
+ \renewenvironment{#1}
+ {\pushQED{\qed}\renewcommand{\qedsymbol}{#2}\expandafter\csname aeoe@old#1\endcsname}
+ {\popQED\expandafter\csname aeoe@oldend#1\endcsname}
+}
+% \end{macrocode}
+% \Finale
diff --git a/Master/texmf-dist/source/latex/atendofenv/atendofenv.ins b/Master/texmf-dist/source/latex/atendofenv/atendofenv.ins
new file mode 100644
index 00000000000..400f095914b
--- /dev/null
+++ b/Master/texmf-dist/source/latex/atendofenv/atendofenv.ins
@@ -0,0 +1,48 @@
+\input docstrip.tex
+\keepsilent
+\usedir{tex/latex/atendofenv}
+\preamble
+This is a generated file.
+
+This is free and unencumbered software released into the public domain.
+
+Anyone is free to copy, modify, publish, use, compile, sell, or
+distribute this software, either in source code form or as a compiled
+binary, for any purpose, commercial or non-commercial, and by any
+means.
+
+In jurisdictions that recognize copyright laws, the author or authors
+of this software dedicate any and all copyright interest in the
+software to the public domain. We make this dedication for the benefit
+of the public at large and to the detriment of our heirs and
+successors. We intend this dedication to be an overt act of
+relinquishment in perpetuity of all present and future rights to this
+software under copyright law.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+For more information, please refer to <https://unlicense.org>
+\endpreamble
+
+\generate{\file{atendofenv.sty}{\from{atendofenv.dtx}{package}}}
+
+\Msg{*********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the}
+\Msg{* following file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space atendofenv.sty}
+\Msg{*}
+\Msg{* To produce the documentation run the file atendofenv.dtx}
+\Msg{* through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*********************************************************}
+\endbatchfile
+
diff --git a/Master/texmf-dist/tex/latex/atendofenv/atendofenv.sty b/Master/texmf-dist/tex/latex/atendofenv/atendofenv.sty
new file mode 100644
index 00000000000..0b08497e777
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/atendofenv/atendofenv.sty
@@ -0,0 +1,58 @@
+%%
+%% This is file `atendofenv.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% atendofenv.dtx (with options: `package')
+%% This is a generated file.
+%%
+%% This is free and unencumbered software released into the public domain.
+%%
+%% Anyone is free to copy, modify, publish, use, compile, sell, or
+%% distribute this software, either in source code form or as a compiled
+%% binary, for any purpose, commercial or non-commercial, and by any
+%% means.
+%%
+%% In jurisdictions that recognize copyright laws, the author or authors
+%% of this software dedicate any and all copyright interest in the
+%% software to the public domain. We make this dedication for the benefit
+%% of the public at large and to the detriment of our heirs and
+%% successors. We intend this dedication to be an overt act of
+%% relinquishment in perpetuity of all present and future rights to this
+%% software under copyright law.
+%%
+%% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+%% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+%% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+%% IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+%% OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+%% ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+%% OTHER DEALINGS IN THE SOFTWARE.
+%%
+%% For more information, please refer to <https://unlicense.org>
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{atendofenv}[2022/02/23 v0.1 Initial Version]
+\RequirePackage{amsthm}
+\RequirePackage{letltxmacro}
+\newcommand{\AtEndOfEnv}[2]{
+ \ifcsname #1\endcsname
+ \expandafter\LetLtxMacro\csname aeoe@old#1\expandafter\endcsname\csname #1\endcsname
+ \else
+ \PackageError{atendofenv}{Environment #1 undefined}{Check the environment
+ name passed to AtEndOfEnv}
+ \fi
+ \ifcsname end#1\endcsname
+ \expandafter\LetLtxMacro\csname aeoe@oldend#1\expandafter\endcsname\csname end#1\endcsname
+ \else
+ \PackageError{atendofenv}{Environment #1 undefined}{Check the environment
+ name passed to AtEndOfEnv}
+ \fi
+ \renewenvironment{#1}
+ {\pushQED{\qed}\renewcommand{\qedsymbol}{#2}\expandafter\csname aeoe@old#1\endcsname}
+ {\popQED\expandafter\csname aeoe@oldend#1\endcsname}
+}
+\endinput
+%%
+%% End of file `atendofenv.sty'.
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index f1a12cff0ec..c387438d2a1 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -58,7 +58,8 @@ my @TLP_working = qw(
askinclude askmaps asmeconf asmejour aspectratio
assignment association-matrix assoccnt astro asyfig
asymptote-faq-zh-cn asymptote-by-example-zh-cn asymptote-manual-zh-cn
- asypictureb atbegshi atenddvi atkinson atveryend attachfile attachfile2
+ asypictureb atbegshi atenddvi atendofenv atkinson atveryend
+ attachfile attachfile2
aucklandthesis augie auncial-new aurical aurl
auto-pst-pdf-lua autobreak autopdf
authoraftertitle authorarchive authordate authorindex
diff --git a/Master/tlpkg/tlpsrc/atendofenv.tlpsrc b/Master/tlpkg/tlpsrc/atendofenv.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/atendofenv.tlpsrc
diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
index 703db023dc3..96b25a490c0 100644
--- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
@@ -53,6 +53,7 @@ depend assignment
depend assoccnt
depend association-matrix
depend atenddvi
+depend atendofenv
depend attachfile
depend aurl
depend authoraftertitle