From a429edf534c5a39d3dc3112b4ef98d0c2cfb9e76 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sat, 10 Jul 2021 03:00:58 +0000 Subject: CTAN sync 202107100300 --- .../latex/contrib/babel-contrib/portuges/README.md | 16 +- .../contrib/babel-contrib/portuges/portuges.dtx | 38 ++--- .../contrib/babel-contrib/portuges/portuges.ins | 8 +- .../contrib/babel-contrib/portuges/portuges.pdf | Bin 153755 -> 146129 bytes macros/latex/contrib/easybook/easybook.dtx | 59 ++++---- macros/latex/contrib/easybook/easybook.pdf | Bin 559755 -> 561450 bytes macros/latex/contrib/iexec/README.md | 26 ++++ macros/latex/contrib/iexec/iexec.pdf | Bin 0 -> 103987 bytes macros/latex/contrib/iexec/iexec.sty | 42 ++++++ macros/latex/contrib/iexec/iexec.tex | 69 +++++++++ macros/latex/contrib/texsurgery/README.md | 27 ++++ macros/latex/contrib/texsurgery/texsurgery.pdf | Bin 0 -> 135676 bytes macros/latex/contrib/texsurgery/texsurgery.sty | 166 +++++++++++++++++++++ 13 files changed, 393 insertions(+), 58 deletions(-) create mode 100644 macros/latex/contrib/iexec/README.md create mode 100644 macros/latex/contrib/iexec/iexec.pdf create mode 100644 macros/latex/contrib/iexec/iexec.sty create mode 100644 macros/latex/contrib/iexec/iexec.tex create mode 100644 macros/latex/contrib/texsurgery/README.md create mode 100644 macros/latex/contrib/texsurgery/texsurgery.pdf create mode 100644 macros/latex/contrib/texsurgery/texsurgery.sty (limited to 'macros/latex') diff --git a/macros/latex/contrib/babel-contrib/portuges/README.md b/macros/latex/contrib/babel-contrib/portuges/README.md index a4eee9cebe..c11dcdbcac 100644 --- a/macros/latex/contrib/babel-contrib/portuges/README.md +++ b/macros/latex/contrib/babel-contrib/portuges/README.md @@ -1,6 +1,5 @@ -# babel-portuges – Babel contributed support for Portuguese and Brazilian - -Version: 2021-02-06 v1.2s +Portuguese 1.2t +-------------- This is the babel style for Portuguese. @@ -9,10 +8,13 @@ got fixed if you report them. If you want to take over maintenance of this language style, please contact me at http://www.texnia.com/contact.html .** -## Copyright (C) -* 1989-2020 Johannes L. Braams, Javier Bezos +Changes 1.2r +------------ + +Months are now lowercased in all 'dialects'. -## License -LATEX Project Public License, version 1.3 or later. +Changes 1.2t +------------ +Don't use the deprecated \rm in ordinals. diff --git a/macros/latex/contrib/babel-contrib/portuges/portuges.dtx b/macros/latex/contrib/babel-contrib/portuges/portuges.dtx index bec2a3f332..50afabd1ed 100644 --- a/macros/latex/contrib/babel-contrib/portuges/portuges.dtx +++ b/macros/latex/contrib/babel-contrib/portuges/portuges.dtx @@ -1,12 +1,12 @@ % \iffalse meta-comment % -% Copyright 1989-2020 Johannes L. Braams, Javier Bezos, and any +% Copyright 1989-2021 Johannes L. Braams, Javier Bezos, and any % individual authors listed elsewhere in this file. All rights % reserved. -% +% % This file is part of the Babel system. % -------------------------------------- -% +% % It 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. @@ -14,15 +14,15 @@ % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 2003/12/01 or later. -% +% % This work has the LPPL maintenance status "maintained". -% +% % The Current Maintainer of this work is Javier Bezos. -% +% % The list of all files belonging to the Babel system is % given in the file `manifest.bbl. See also `legal.bbl' for additional % information. -% +% % The list of derived (unpacked) files belonging to the distribution % and covered by LPPL is defined by the unpacking scripts (with % extension .ins) which are part of the distribution. @@ -36,15 +36,15 @@ %\ProvidesLanguage{portuges} %\fi %\ProvidesFile{portuges.dtx} - [2021/02/04 v1.2s Portuguese support from the babel system] + [2021/07/09 v1.2t Portuguese support from the babel system] %\iffalse %% File `portuges.dtx' %% Babel package for LaTeX version 2e -%% Copyright (C) 1989 - 2020 +%% Copyright (C) 1989 - 2021 %% by Johannes Braams, Javier Bezos % %% Portuguese Language Definition File -%% Copyright (C) 1989 - 2020 +%% Copyright (C) 1989 - 2021 %% by Johannes Braams, Javier Bezos % % This file is part of the babel system, it provides the source @@ -79,7 +79,7 @@ % \changes{portuges-1.2g}{1995/06/04}{Enhanced support for brasilian} % \changes{portuges-1.2j}{1996/07/11}{Replaced \cs{undefined} with % \cs{@undefined} and \cs{empty} with \cs{@empty} for consistency -% with \LaTeX} +% with \LaTeX} % \changes{portuges-1.2j}{1996/10/10}{Moved the definition of % \cs{atcatcode} right to the beginning.} % @@ -121,7 +121,7 @@ % loaded more than once, checking the category code of the % \texttt{@} sign, etc. % \changes{portuges-1.2j}{1996/11/03}{Now use \cs{LdfInit} to perform -% initial checks} +% initial checks} % \begin{macrocode} %<*code> \LdfInit\CurrentOption{captions\CurrentOption} @@ -173,7 +173,7 @@ % loaded for Portuguese or Brasilian use. This can be done by % checking the contents of |\CurrentOption|. When it doesn't % contain either `portuges' or `portuguese' we make |\bbl@tempb| -% empty. +% empty. % \begin{macrocode} \def\bbl@tempa{portuguese} \ifx\CurrentOption\bbl@tempa @@ -259,7 +259,7 @@ % \changes{portuges-1.2k}{1997/10/01}{Use \cs{edef} to define % \cs{today} to save memory} % \changes{portuges-1.2k}{1998/03/28}{use \cs{def} instead of -% \cs{edef}} +% \cs{edef}} % \changes{portuges-1.2n}{2001/01/27}{Removed spurious space after % Dezembro} % \begin{macrocode} @@ -274,7 +274,7 @@ % \end{macro} % % For the Brasilian version of these definitions we just add a -% ``dialect''. +% ``dialect''. % \begin{macrocode} \expandafter \adddialect\csname l@\CurrentOption\endcsname\l@portuges @@ -325,7 +325,7 @@ % \changes{portuges-1.2k}{1997/10/01}{Use \cs{edef} to define % \cs{today} to save memory} % \changes{portuges-1.2k}{1998/03/28}{use \cs{def} instead of -% \cs{edef}} +% \cs{edef}} % \changes{portuges-1.2n}{2001/01/27}{Removed spurious space after % dezembro} % \begin{macrocode} @@ -434,8 +434,8 @@ % We also provide an easy way to typeset ordinals, both in the male % (|\ord| or |\ro|) and the female (|orda| or |\ra|) form. % \begin{macrocode} -\def\ord{$^{\rm o}$} -\def\orda{$^{\rm a}$} +\def\ord{$^{\mathrm o}$} +\def\orda{$^{\mathrm a}$} \let\ro\ord\let\ra\orda % \end{macrocode} % \end{macro} @@ -448,7 +448,7 @@ % at |\begin{document}| and resetting the category code of % \texttt{@} to its original value. % \changes{portuges-1.2j}{1996/11/03}{ow use \cs{ldf@finish} to wrap -% up} +% up} % \begin{macrocode} \ldf@finish\CurrentOption % diff --git a/macros/latex/contrib/babel-contrib/portuges/portuges.ins b/macros/latex/contrib/babel-contrib/portuges/portuges.ins index d8b04a27ed..2459a19311 100644 --- a/macros/latex/contrib/babel-contrib/portuges/portuges.ins +++ b/macros/latex/contrib/babel-contrib/portuges/portuges.ins @@ -3,7 +3,7 @@ %% driver files from the doc files in this package when run through %% LaTeX or TeX. %% -%% Copyright 1989-2020 Johannes L. Braams, Javier Bezos and any +%% Copyright 1989-2021 Johannes L. Braams, Javier Bezos and any %% individual authors listed elsewhere in this file. All rights %% reserved. %% @@ -32,7 +32,7 @@ %% %% --------------- start of docstrip commands ------------------ %% -\def\filedate{2020/05/04} +\def\filedate{2021/07/09} \def\batchfile{portuges.ins} \input docstrip.tex @@ -54,7 +54,7 @@ \declarepreamble\mainpreamble This is a generated file. -Copyright 1989-2020 Johannes L. Braams, Javier Bezos and any individual +Copyright 1989-2021 Johannes L. Braams, Javier Bezos and any individual authors listed elsewhere in this file. All rights reserved. This file was generated from file(s) of the Babel system. @@ -88,7 +88,7 @@ extension .ins) which are part of the distribution. \declarepreamble\fdpreamble This is a generated file. -Copyright 1989-2020 Johannes L. Braams, Javier Bezos and any individual +Copyright 1989-2021 Johannes L. Braams, Javier Bezos and any individual authors listed elsewhere in this file. All rights reserved. This file was generated from file(s) of the Babel system. diff --git a/macros/latex/contrib/babel-contrib/portuges/portuges.pdf b/macros/latex/contrib/babel-contrib/portuges/portuges.pdf index 47d13ed00f..af79ca2beb 100644 Binary files a/macros/latex/contrib/babel-contrib/portuges/portuges.pdf and b/macros/latex/contrib/babel-contrib/portuges/portuges.pdf differ diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx index c6d443516f..0234a25dfe 100644 --- a/macros/latex/contrib/easybook/easybook.dtx +++ b/macros/latex/contrib/easybook/easybook.dtx @@ -28,7 +28,7 @@ % % \title{\sffamily easybook 文档类手册} % \author{瞿毅} -% \date{2021/07/06\hskip\ccwd\relax v1.26x\thanks{\url{https://gitee.com/texl3/easybook}}} +% \date{2021/07/08\hskip\ccwd\relax v1.26z\thanks{\url{https://gitee.com/texl3/easybook}}} % % \maketitle % \begin{abstract} @@ -36,8 +36,9 @@ % \end{abstract} % \tableofcontents % +% \clearpage % \section{使用说明} -% 使用 \cls{easybook} 文档类编写文档前您可能需要满足以下的条件: +% 您在使用 \cls{easybook} 文档类编写文档前可能需要满足以下的条件: % \begin{itemize} % \item 使用 \hologo{XeLaTeX}(推荐)或 \hologo{LuaLaTeX} 两种编译方式。 % \item 由于用到了一些 \LaTeX 和宏包较新的功能,建议安装最新的 \TeX 发行版,例如 \TeX Live 2021 或 \hologo{MiKTeX} 21.2 之后的版本。 @@ -158,7 +159,7 @@ % floatpage = % \end{syntax} % 开启这个选项后浮动环境 \env{table} 和 \env{figure} 的比例参数会使用默认值,关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。 -% \changes{v1.26x}{2021/06/15}{增加浮动环境比例参数选项 \opt{floatpage}。} +% \changes{v1.26z}{2021/06/15}{增加浮动环境比例参数选项 \opt{floatpage}。} % \end{function} % % \subsection{article 模式} @@ -240,7 +241,7 @@ % \tn{BeforeAddBitoc*}\marg{加入目录英文标题前的代码} % \end{syntax} % \tn{appendix} 命令后的章节标题变为附录形式。英文目录中附录标题的格式用可选参数修改,英文附录目录前名字默认为 Appendix\tn{space},后名字默认为空,名字之间用一个半角逗号分开,也可以只有一部分,表示英文附录目录前名字。英文附录目录数字输出命令默认为 \tn{Alph}\{chapter\}。 -% \changes{v1.26x}{2021/06/13}{增加调整英文目录格式的钩子 \tn{BeforeAddBitoc}。} +% \changes{v1.26z}{2021/06/13}{增加调整英文目录格式的钩子 \tn{BeforeAddBitoc}。} % \end{function} % % \tn{BeforeAddBitoc} 是一个作用于局部范围的英文目录钩子,可以插入标题或目录设置的命令改变英文目录中标题的显示格式,也可以覆盖上述的目录前后名字和编号等设置,带有星号的命令会重置之前的代码,放置在导言区或 \tn{bichapter} 等命令前生效。 @@ -255,7 +256,7 @@ % \ \oarg{水平偏移|(0pt)}\parg{下标代码} % \end{syntax} % 上标和下标的功能来自 \pkg{spbmark} 宏包,\tn{super}、\tn{sub} 和 \tn{supersub} 三个命令可以用于输出上标和下标。它们根据当前处于文本模式还是数学模式来匹配相应的模式,或者可以使用它们的星号变体命令来强制使用数学模式。也可以使用键值列表对偏移量进行全局设置,详情见小节 \ref{subsubsec:super-sub-script}。 -% \changes{v1.26x}{2021/06/28}{增加可以调整相对位置和格式的上标和下标命令 \tn{super}、\tn{sub} 和 \tn{supersub}。} +% \changes{v1.26z}{2021/06/28}{增加可以调整相对位置和格式的上标和下标命令 \tn{super}、\tn{sub} 和 \tn{supersub}。} % \end{function} % % 垂直和水平偏移默认值都是 0 pt,\meta{对齐方式} 的参数与 \opt{supersubalign} 相同。\meta{格式代码} 用于格式化上标和下标,可以插入字体或颜色等命令。代码中的最后一个命令可以接受一个为上标或下标的参数。上标和下标命令还分别具有更简短的等价命令 \tn{sp}、\tn{sb} 和 \tn{spb}。 @@ -306,7 +307,7 @@ % \tn{DeclareThemeColor}\{<风格名称>,,,\} % \end{syntax} % 可以使用 \tn{DeclareThemeColor} 命令声明新的主题颜色,它的参数以英文逗号分隔,第一部分为颜色风格名称,后面三部分为 HTML 颜色代码,构成主题颜色。类似地更改超链接颜色见小节 \ref{subsec:hyperlinks}。 -% \changes{v1.26x}{2021/07/03}{使用 \tn{DeclareThemeColor} 命令声明新的颜色风格。} +% \changes{v1.26z}{2021/07/03}{使用 \tn{DeclareThemeColor} 命令声明新的颜色风格。} % \end{function} % \item[color-all] 统一设置主题的各部分颜色,参数是 6 个十六进制数字组成的 HTML 颜色代码,任意颜色的代码可以在常见的图片处理工具拾色器中查看。 % \item[multoc] 开启多栏目录,与节 \ref{sec:document command} 中目录命令的同名选项有相同效果。 @@ -371,7 +372,7 @@ % \tn{DeclareLinkColor}\{<风格名称>,,,\} % \end{syntax} % 可以使用 \tn{DeclareLinkColor} 命令声明新的超链接颜色样式,它的参数以英文逗号分隔,第一部分为颜色风格名称,后面三部分为 HTML 颜色代码,构成超链接颜色。 -% \changes{v1.26x}{2021/07/03}{使用 \tn{DeclareLinkColor} 命令声明新的超链接颜色。} +% \changes{v1.26z}{2021/07/03}{使用 \tn{DeclareLinkColor} 命令声明新的超链接颜色。} % \end{function} % \item[linkcol-all] 统一设置超链接的各部分颜色,参数是 6 个十六进制数字组成的 HTML 颜色代码,任意颜色的代码可以在常见的图片处理工具拾色器中查看。 % \item[linktoc] 将目录中的超链接取消、置于标题上、置于页码上或置于标题和页码上。 @@ -492,16 +493,16 @@ % \end{syntax} % \ding{229} 以上选项路径为 \opt{thmset/...} % \changes{v1.21}{2021/01/12}{增加配置定理环境样式的选项。} -% \changes{v1.26x}{2021/07/01}{增加配置公式标签括号选项 \opt{brackets}。} +% \changes{v1.26z}{2021/07/01}{增加配置公式标签括号选项 \opt{brackets}。} % \end{function} % % \begin{optdesc} % \item[thmbox] 开启定理环境盒子的边框,需载入 \pkg{tcolorbox} 宏包才生效。这个选项与 \pkg{thmtools} 中并不一致,\pkg{thmtools} 的同名选项包括 L、M 和 S 三个参数。 % \item[within] 定理编号跟随的计数器,默认跟随章的编号,也可以跟随其它定理环境的编号,当计数器增加时定理编号会从零开始,空置时不跟随其它计数器。 % \item[headpunct] 定理标题末尾后的标记,在换行符或第一段内容的间隔之前。 -% \item[bodyfont] 定理内容部分的字体。 -% \item[notefont] 定理题注部分的字体。 -% \item[headfont] 定理标题部分的字体。 +% \item[bodyfont] 定理内容部分的字体,包括字体族、字体系列、字体尺寸和字体形状命令。 +% \item[notefont] 定理题注部分的字体,包括字体族、字体系列、字体尺寸和字体形状命令。 +% \item[headfont] 定理标题部分的字体,包括字体族、字体系列、字体尺寸和字体形状命令。 % \item[headindent] 定理标题的缩进,默认无缩进,可用 \tn{parindent} 命令设置为段落缩进。 % \item[spaceabove] 定理环境前的间距。 % \item[spacebelow] 定理环境后的间距。 @@ -519,7 +520,7 @@ % 文档类已预置 8 个定理环境,环境名及对应的定理标题名见小节 \ref{subsec:theorem},如果需要新的定理标题名或定理样式可使用这两个命令,由 \pkg{thmtools} 提供支持,用法与它的同名命令一致。 % \changes{v1.23}{2021/03/12}{重新定义了新定理环境命令 \tn{newtheorem}。} % \changes{v1.24}{2021/04/25}{增加定义定理环境命令 \tn{DeclareTheorem}。} -% \changes{v1.26x}{2021/06/15}{定义新定理环境的命令调整为 \tn{declaretheorem}。} +% \changes{v1.26z}{2021/06/15}{定义新定理环境的命令调整为 \tn{declaretheorem}。} % \end{function} % % \begin{optdesc} @@ -625,7 +626,7 @@ % \tn{markrule}\oarg{长度|(\tn{textwidth})}\parg{颜色名}\marg{线宽|(0.75pt)}[<上间距>+<下间距>] % \end{syntax} % 命令 \tn{easyhead} 和 \tn{easyfoot} 的使用方法与 \tn{fancyhead} 和 \tn{fancyfoot} 完全相同,它们需要在 \opt{head-foot} 选项中使用,设置的是一个名为 \opt{fancy} 的页面风格。\pkg{fancyhdr} 将页眉页脚分成了左中右和奇数页(odd)、偶数页(even)共12个部分,可选参数中E、O代表偶数、奇数,L、C、R代表左、中、右部分。单面打印时,含有偶数的选项无效。 -% \changes{v1.26x}{2021/06/14}{增加页眉页脚的横线绘制命令 \tn{markrule}。} +% \changes{v1.26z}{2021/06/14}{增加页眉页脚的横线绘制命令 \tn{markrule}。} % \end{function} % % 命令 \tn{markrule} 用于绘制页眉页脚横线,长度默认为页面文本区的宽度,上下间距为横线与上下方部件的间距,带有长度单位,间距长度之间用 + 号分开,若只有一部分则表示上间距,这个命令也可以在正文中绘制横线。下面举一个设置页眉内容的例子: @@ -839,7 +840,7 @@ % % \begin{function}{color,title,number,numsep,label} % \begin{syntax} -% color = <标题背景颜色名|(LightSkyBlue)> +% color = <标题背景颜色名|(DeepSkyBlue)> % title = <环境标题> % number = <习题编号格式|(1.)> % numsep = <编号与标题的间距|(0.5\tn{ccwd})> @@ -868,7 +869,7 @@ % % \subsection{盒子} % \label{subsec:box} -% 使用盒子以及小节 \ref{subsec:exercise} 中的 \env{exercise} 环境需要在导言区 \textbf{手动载入} \pkg{tcolorbox} 宏包,它们的配置 \meta{键值列表} 选项同样由 \pkg{tcolorbox} 提供支持,具体选项可见宏包文档的 Option Keys 一节,可以进行边距、字体及背景颜色等各种个性化设置,一些配置会覆盖之前预置的设置。 +% 使用盒子以及小节 \ref{subsec:exercise} 中的 \env{exercise} 环境需要在导言区 \textbf{手动载入} \pkg{tcolorbox} 宏包,它们 \meta{配置选项} 的键值列表同样由 \pkg{tcolorbox} 提供支持,具体选项可见宏包文档的 Option Keys 一节,可以进行边距、字体及背景颜色等各种个性化设置,一些配置会覆盖预设。 % % \subsubsection{摘要盒子} % \begin{function}[added = 2021-01-05,updated = 2021-05-02]{outline} @@ -918,8 +919,8 @@ % \subsubsection{行内盒子} % \begin{function}[added = 2021-03-13,updated = 2021-04-21]{\eblink,\ebemph} % \begin{syntax} -% \tn{eblink}\oarg{颜色名}\marg{内容}\oarg{配置选项} -% \tn{ebemph}\oarg{颜色名}\marg{内容}\oarg{配置选项} +% \tn{eblink}\oarg{颜色名|(Aqua)}\marg{内容}\oarg{配置选项} +% \tn{ebemph}\oarg{颜色名|(DarkSeaGreen)}\marg{内容}\oarg{配置选项} % \end{syntax} % 设置了两个参数选项相同的行内盒子,盒子 \opt{eblink} 为抄录盒子有三个参数,行内盒子内容是必选参数其他可选。盒子 \opt{ebemph} 也是抄录盒子,具有模糊边缘类似高亮的效果。 % \end{function} @@ -963,7 +964,7 @@ % \tn{UseCounter*}\oarg{父计数器}\parg{编号|(arabic)}\marg{计数器}\marg{内容}\oarg{分隔符|(.)}\parg{数值} % \end{syntax} % \tn{newcounter} 是 \LaTeX 自带的创建计数器命令,\tn{UseCounter} 将会以一定的格式使用由它创建的计数器,将会以 \tn{the}\meta{父计数器}\meta{分隔符}\tn{the}\meta{计数器}\meta{内容} 输出当前内容。 -% \changes{v1.26x}{2021/06/30}{增加计数器使用命令 \tn{UseCounter}。} +% \changes{v1.26z}{2021/06/30}{增加计数器使用命令 \tn{UseCounter}。} % \end{function} % % 需要注意的是 \tn{UseCounter} 仅具有 \textbf{输出功能},并不会改变计数器原有的绑定关系。默认每使用一次命令 \meta{计数器} 的值增加 1,带有星号的命令使 \meta{计数器} 保持当前值,\meta{编号} 为 arabic 和 alpha 等格式,\meta{数值} 可以手动将 \meta{计数器} 设为指定值。 @@ -1150,7 +1151,7 @@ %<*class> \NeedsTeXFormat{LaTeX2e}[2020/10/01] \RequirePackage{l3keys2e} -\ProvidesExplClass{easybook}{2021/07/06}{1.26x} +\ProvidesExplClass{easybook}{2021/07/08}{1.26z} {Typeset Chinese theses or books} \bool_set_false:N \l__eb_compile_draft_bool @@ -1397,7 +1398,7 @@ %<*package> \NeedsTeXFormat{LaTeX2e}[2020/10/01] \RequirePackage{etoolbox} -\ProvidesExplPackage{easybase}{2021/07/06}{1.26x} +\ProvidesExplPackage{easybase}{2021/07/08}{1.26z} {Typeset Chinese theses or books} \cs_generate_variant:Nn \eb_ctex_define:nn { nx } @@ -1867,7 +1868,7 @@ \selectfont\ignorespaces \l__eb_subfont_footnote_tl } -\providecommand{\super}{\textsuperscript} +\ProvideDocumentCommand{\super}{mo}{\textsuperscript{#1}} \providecommand{\spb@textsuperscript@save}{\textsuperscript} \ctex_after_end_preamble:n { @@ -2617,7 +2618,9 @@ partopsep = 0ex,parsep = 0ex } \newlist{eb@outline@list}{itemize}{1} +\newlist{eb@exercise@list}{enumerate}{2} \setlist[eb@outline@list]{label = outline,itemsep = 0.5ex plus .1ex} +\setlist[eb@exercise@list]{labelsep = 0.5\ccwd} \setlist[itemize,1]{label = bullet} \setlist[itemize,2]{label = endash} \setlist[itemize,3]{label = asterisk} @@ -2789,7 +2792,7 @@ \keys_define:nn { eb/exercise } { color .tl_set:N = \eb@tc@background@color, - color .initial:n = LightSkyBlue, + color .initial:n = DeepSkyBlue, number .tl_set:N = \eb@tc@list@number, number .initial:n = { 1. }, title .tl_set:N = \eb@tc@exercise@title, @@ -3144,7 +3147,7 @@ } % %<*tcolorbox> -\ProvidesExplFile{eb-tcolorbox.cfg}{2021/07/06}{1.26x} +\ProvidesExplFile{eb-tcolorbox.cfg}{2021/07/08}{1.26z} {Customization of tcolorbox for easybook} \cs_new_protected:Npn \eb_tcb_theorem_set:n #1 @@ -3265,9 +3268,9 @@ \group_end: } \tl_if_empty:NF \eb@tc@list@prologue { \eb@tc@list@prologue } - \begin{enumerate}[\eb@tc@list@number,labelsep = 0.5\ccwd,#5] + \begin{eb@exercise@list}[\eb@tc@list@number,#5] #6 - \end{enumerate} + \end{eb@exercise@list} \tl_gclear:N \eb@tc@list@prologue }{} \DeclareTColorBox{easybox}{sO{Khaki}d()O{}} @@ -3278,7 +3281,7 @@ {frame~hidden,boxrule = 0pt,toptitle = 8pt,top = 0pt}, IfValueT = {#3}{title = #3}, colback = #2,colbacktitle = #2, - opacityback = 0.12,opacitybacktitle = 0.12, + opacityback = 0.2,opacitybacktitle = 0.2, coltitle = black,colframe = black, sharpish~corners, left = 6pt,right = 6pt,bottom = 8pt,middle= 8pt, @@ -3300,7 +3303,7 @@ top = 0pt,bottom = 0pt,toptitle = 0pt }{ colback = #2,colbacktitle = #2, - opacityback = 0.12,opacitybacktitle = 0.12, + opacityback = 0.2,opacitybacktitle = 0.2, IfValueTF = {#3}{title = #3,top = 0pt}{top = 8pt}, bottom = 8pt,toptitle = 8pt }, @@ -3321,7 +3324,7 @@ nobeforeafter,tcbox~raise~base, top = 1.25pt,bottom = 1.25pt,left = 1.25pt,right = 1.25pt, boxrule = 0.75pt,arc = 1pt, - colback = #1,opacityback = 0.12,colframe = #1,#3 + colback = #1,opacityback = 0.2,colframe = #1,#3 }{#2} % \endinput \ No newline at end of file diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf index 69091e6cb5..d09bd1e928 100644 Binary files a/macros/latex/contrib/easybook/easybook.pdf and b/macros/latex/contrib/easybook/easybook.pdf differ diff --git a/macros/latex/contrib/iexec/README.md b/macros/latex/contrib/iexec/README.md new file mode 100644 index 0000000000..2025d21ebd --- /dev/null +++ b/macros/latex/contrib/iexec/README.md @@ -0,0 +1,26 @@ +[![make](https://github.com/yegor256/iexec/actions/workflows/latexmk.yml/badge.svg)](https://github.com/yegor256/iexec/actions/workflows/latexmk.yml) +[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/iexec/blob/master/LICENSE.txt) + +This LaTeX package helps you execute commands from the document and then input +their output. The package uses [`ShellEscape`](https://ctan.org/pkg/ShellEscape) package. + +First, [install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages) +from [CTAN](https://ctan.org/pkg/iexec) +and then use in the preamble: + +```tex +\documentclass{article} +\usepackage{iexec} +\begin{document} +Today is \iexec{date +\%e-\%b-\%Y}. +\end{document} +``` + +The full example and all commands are available in the +[`iexec.tex`](https://github.com/yegor256/exec/blob/master/iexec.tex) file. + +If you want to contribute yourself, make a fork, then create a branch, +then run `make` in the root directory. +It should compile everything without errors. If not, submit an issue and wait. +Otherwise, make your changes and then run `make` again. If the build is +still clean, submit a pull request. diff --git a/macros/latex/contrib/iexec/iexec.pdf b/macros/latex/contrib/iexec/iexec.pdf new file mode 100644 index 0000000000..a12a6b9d2b Binary files /dev/null and b/macros/latex/contrib/iexec/iexec.pdf differ diff --git a/macros/latex/contrib/iexec/iexec.sty b/macros/latex/contrib/iexec/iexec.sty new file mode 100644 index 0000000000..a84c53e458 --- /dev/null +++ b/macros/latex/contrib/iexec/iexec.sty @@ -0,0 +1,42 @@ +% (The MIT License) +% +% Copyright (c) 2021 Yegor Bugayenko +% +% Permission is hereby granted, free of charge, to any person obtaining a copy +% of this software and associated documentation files (the 'Software'), to deal +% in the Software without restriction, including without limitation the rights +% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +% copies of the Software, and to permit persons to whom the Software is +% furnished to do so, subject to the following conditions: +% +% The above copyright notice and this permission notice shall be included in all +% copies or substantial portions of the Software. +% +% 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 OR COPYRIGHT HOLDERS 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. + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{iexec}[2021/07/08 0.1.0 Inputable Shell Executions] + +\makeatletter\newcommand\exec[1]{% + \begingroup% + \let\%\@percentchar% + \let\{\@charlb% + \let\}\@charrb% + \ShellEscape{#1}% + \endgroup% +}\makeatother + +\newcommand\iexec[1]{% + \exec{#1 > iexec.tmp}% + \exec{echo >> iexec.tmp}% + \input{iexec.tmp}\unskip% + \exec{rm iexec.tmp}% +}\makeatother + +\endinput diff --git a/macros/latex/contrib/iexec/iexec.tex b/macros/latex/contrib/iexec/iexec.tex new file mode 100644 index 0000000000..a61b55178b --- /dev/null +++ b/macros/latex/contrib/iexec/iexec.tex @@ -0,0 +1,69 @@ +% (The MIT License) +% +% Copyright (c) 2021 Yegor Bugayenko +% +% Permission is hereby granted, free of charge, to any person obtaining a copy +% of this software and associated documentation files (the 'Software'), to deal +% in the Software without restriction, including without limitation the rights +% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +% copies of the Software, and to permit persons to whom the Software is +% furnished to do so, subject to the following conditions: +% +% The above copyright notice and this permission notice shall be included in all +% copies or substantial portions of the Software. +% +% 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 OR COPYRIGHT HOLDERS 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. + +\documentclass[12pt]{article} +\usepackage[tt=false,type1=true]{libertine} +\usepackage{multicol} +\usepackage{ffcode} +\usepackage{iexec} +\title{\ff{iexec}: \LaTeX{} Package \\ for Inputable Shell Executions} +\author{Yegor Bugayenko} +\date{0.1.0 2021/07/08} +\begin{document} +\pagenumbering{gobble} +\raggedbottom +\setlength{\parindent}{0pt} +\setlength{\columnsep}{32pt} +\setlength{\parskip}{6pt} +\maketitle + +This package helps you execute shell commands right from the +document and then put their output to the document: + +\begin{multicols}{2} +\setlength{\parskip}{0pt} +\scriptsize +\raggedcolumns +\begin{verbatim} +\documentclass{article} +\usepackage{iexec} +\begin{document} +Today is \iexec{date +\%e-\%b-\%Y}. +\end{document} +\end{verbatim} + +\columnbreak + +Today is \iexec{date +\%e-\%b-\%Y}. +\end{multicols} + +You have to run \ff{pdflatex} with the \ff{--shell-escape} flag +in order to let \ff{ShellEscape} (the package we use) to run shell. + +There are two commands: \ff{\char`\\exec} and \ff{\char`\\iexec}. +The first one executes, while the second one also inputs the output +of the execution. + +More details about this package you can find +in the \ff{yegor256/iexec} GitHub repository. + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/texsurgery/README.md b/macros/latex/contrib/texsurgery/README.md new file mode 100644 index 0000000000..0e5b0ff106 --- /dev/null +++ b/macros/latex/contrib/texsurgery/README.md @@ -0,0 +1,27 @@ +# TexSurgery + +This tex package is a companion to the `texsurgery` `python` project: + +[https://framagit.org/pang/texsurgery](https://framagit.org/pang/texsurgery) + +This `LaTeX` library will make sure that + +`pdflatex document.tex` + +will work, with reasonable defaults, for a document that is intended to work with `texsurgery`, and also has other uses, always in tandem with the `texsurgery` `pypi` package. + +However, remember that `texsurgery` is a `python` project whose main focus is on __evaluating code inside a `jupyter` kernel__, and this is _only_ achieved by installing the `python` package and calling the `texsurgery` command + +`texsurgery -pdf document.tex` + +## License + +The `texsurgery` `CTAN` package follows a [BSD license])(https://opensource.org/licenses/BSD-3-Clause), the same license as the `texsurgery` `python` project: + +[https://framagit.org/pang/texsurgery/-/blob/master/LICENSE](https://framagit.org/pang/texsurgery/-/blob/master/LICENSE) + +## texsurgery.pdf + +The file `texsurgery.pdf` in the texsurgery CTAN LaTeX package was generated with the command + +`pandoc README.md -o texsurgery.pdf` diff --git a/macros/latex/contrib/texsurgery/texsurgery.pdf b/macros/latex/contrib/texsurgery/texsurgery.pdf new file mode 100644 index 0000000000..b5e8da0f14 Binary files /dev/null and b/macros/latex/contrib/texsurgery/texsurgery.pdf differ diff --git a/macros/latex/contrib/texsurgery/texsurgery.sty b/macros/latex/contrib/texsurgery/texsurgery.sty new file mode 100644 index 0000000000..698ce7a406 --- /dev/null +++ b/macros/latex/contrib/texsurgery/texsurgery.sty @@ -0,0 +1,166 @@ +% TeXsurgery v 0.6.0 +% +% This tex package is a companion to the `texsurgery` `python` project: +% +% https://framagit.org/pang/texsurgery +% +% This `LaTeX` library will make sure that +% +% `pdflatex document.tex` +% +% will work, with reasonable defaults, for a document that is intended to work with `texsurgery`, and also has other uses, always in tandem with the `texsurgery` `pypi` package. +% +% However, remember that `texsurgery` is a `python` project whose main focus is on __evaluating code inside a `jupyter` kernel__, and this is _only_ achieved by installing the `python` package and calling the `texsurgery` command +% +% `texsurgery -pdf document.tex` +% +% Both the texsurgery python package and the TexSurgery CTAN package are distributed under a BSD license. + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{texsurgery}[2021/07/09 TeXsurgery package v0.6.0] + +\RequirePackage{verbatim} +\RequirePackage{listings} +\RequirePackage{xcolor} +\RequirePackage{environ} +\RequirePackage{hyperref} + +% \RequirePackage{imakeidx} +% \RequirePackage{xstring} +% \RequirePackage{xcolor} +% \definecolor{greycolour}{HTML}{525252} +% \definecolor{sharelatexcolour}{HTML}{882B21} +% \definecolor{mybluecolour}{HTML}{394773} +% \newcommand{\wordcolour}{greycolour} + +% \DeclareOption{red}{\renewcommand{\wordcolour}{sharelatexcolour}} +% \DeclareOption{blue}{\renewcommand{\wordcolour}{mybluecolour}} + + +\definecolor{codegreen}{rgb}{0,0.6,0} +\definecolor{codegray}{rgb}{0.5,0.5,0.5} +\definecolor{codepurple}{rgb}{0.58,0,0.82} +\definecolor{backcolour}{rgb}{0.95,0.95,0.92} + +\lstdefinestyle{TSstyle}{ + backgroundcolor=\color{backcolour}, + commentstyle=\color{codegreen}, + keywordstyle=\color{magenta}, + numberstyle=\tiny\color{codegray}, + stringstyle=\color{codepurple}, + basicstyle=\ttfamily, + breakatwhitespace=false, + breaklines=true, + captionpos=b, + keepspaces=true, + numbers=left, + numbersep=5pt, + showspaces=false, + showstringspaces=false, + showtabs=false, + tabsize=2 +} +\lstalias{python}{Python} +\lstalias{sage}{Python} +% \lstset{style=TSstyle} + + +% Counters +\newcounter{TSeval} +\newcounter{TSrun} +\newcounter{TSrunsilent} + +% Boolean Options +\newif\if@showcode +\@showcodefalse +\newif\if@noinstructions +\@noinstructionsfalse + + +\DeclareOption*{% + \lstalias{\CurrentOption}{Python} %sets Python highlight code as highlight by default for unrecognized kernels. + \PackageWarningNoLine{texsurgery}{‘\CurrentOption’ declared as a jupyter kernel}% + } +\DeclareOption{showcode} {% + \@showcodetrue +}% +\DeclareOption{noinstructions} {% + \@noinstructionstrue +} +\ProcessOptions\relax + + + +%% Instructions warning +\if@noinstructions + % +\else + \AtBeginDocument{ + \fbox{ + \begin{minipage}{0.9\linewidth} + WARNING: TexSurgery is NOT intended to be a LaTeX package to show your code, but instead a Python module who replaces some commands and environments within a TeX document by evaluating code inside a jupyter kernel. +\\ % + In order to achieve this goal, it is not enough to install the texsurgery LaTeX package and run \texttt{pdflatex document.tex}. + You must % + \begin{center} + \texttt{pip install texsurgery} + \end{center} + and the jupyter kernel for the language that you intend to use, and use the command \texttt{texsurgery document.tex}. + \\% + More info: \url{https://framagit.org/pang/texsurgery}. + \end{minipage} + } + \vspace{1cm}% + \\ + } + \PackageWarningNoLine{texsurgery}{% +########## + WARNING: TexSurgery is NOT intended to be a LaTeX package to show your code, but instead a Python module who replaces some commands and environments within a TeX document by evaluating code inside a jupyter kernel. +% + In order to achieve this goal, it is not enough to install the texsurgery LaTeX package. + You must `pip install texsurgery` and the jupyter kernel for the language that you intend to use. +% + More info: https://framagit.org/pang/texsurgery. +########## + }% +\fi + +%% SHOWCODE +\if@showcode + \lstnewenvironment{run}[1][python]{% + \refstepcounter{TSrun}% + \lstset{language=#1, style=TSstyle, frame=single, title={\tt runblock\theTSrun.#1}}% + \medskip% + }{} + \lstnewenvironment{runsilent}[1][python]{% + \refstepcounter{TSrunsilent}% + \lstset{language=#1, style=TSstyle, frame=single, title={\tt runsilentblock\theTSrunsilent.#1}}% + \medskip% + }{} + \newcommand{\lstinlinesafe}{\lstinline[style=TSstyle]} + \newcommand{\eval}[2][]{{\hbox{\lstinlinesafe{#2}}}} +% \newcommand{\eval}[2][python]{% +% \refstepcounter{TSeval}% +% {\hbox{\lstinlinesafe[language=#1]{#2}}} +% }% + \newcommand{\sage}[1]{% + \eval{#1}% + }% +\else + \NewEnviron{run}[1][python]{% + \refstepcounter{TSrun}% + \begin{center}\fbox{\ttfamily runblock\theTSrun.#1}\end{center}% + }% + \NewEnviron{runsilent}[1][python]{% + \refstepcounter{TSrunsilent}% + \begin{center}\fbox{\ttfamily runsilentblock\theTSrunsilent.#1}\end{center}% + }% + \newcommand{\eval}[2][python]{% + \refstepcounter{TSeval}% + \hbox{\fbox{\ttfamily evalcode\theTSeval.#1}}% + }% + \newcommand{\sage}[1]{% + \refstepcounter{TSeval}% + \eval[sagemath]{#1}% + }% +\fi -- cgit v1.2.3