diff options
author | Karl Berry <karl@freefriends.org> | 2021-07-09 19:59:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-07-09 19:59:58 +0000 |
commit | 09cdbac21931449de3719670b6236e1129be8e30 (patch) | |
tree | 61dd80fa94a1569f0854a3f80e9beecc3b07564e | |
parent | b0f009a4165cc5ec9f8740cfce773123c6bec62f (diff) |
texsurgery (9jul21)
git-svn-id: svn://tug.org/texlive/trunk@59885 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/texsurgery/README.md | 27 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/texsurgery/texsurgery.pdf | bin | 0 -> 135676 bytes | |||
-rw-r--r-- | Master/texmf-dist/tex/latex/texsurgery/texsurgery.sty | 166 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 2 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/texsurgery.tlpsrc | 0 |
6 files changed, 195 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/texsurgery/README.md b/Master/texmf-dist/doc/latex/texsurgery/README.md new file mode 100644 index 00000000000..0e5b0ff1065 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/texsurgery/texsurgery.pdf b/Master/texmf-dist/doc/latex/texsurgery/texsurgery.pdf Binary files differnew file mode 100644 index 00000000000..b5e8da0f141 --- /dev/null +++ b/Master/texmf-dist/doc/latex/texsurgery/texsurgery.pdf diff --git a/Master/texmf-dist/tex/latex/texsurgery/texsurgery.sty b/Master/texmf-dist/tex/latex/texsurgery/texsurgery.sty new file mode 100644 index 00000000000..698ce7a4068 --- /dev/null +++ b/Master/texmf-dist/tex/latex/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 diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index b44efc20433..75c6074aed5 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -749,7 +749,7 @@ my @TLP_working = qw( texdate texdef texdiff texdimens texdirflatten texdoc texdraw texfot texilikechaps texilikecover texliveonfly texloganalyser texlogos texmate texments texnegar - texonly texosquery texplate texpower texproposal texshade + texonly texosquery texplate texpower texproposal texshade texsurgery textualicomma texvc textcase textfit textglos textgreek textmerg textopo textpath textpos tfrupee thaienum thaispec thalie diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index 4f6e9184f42..1cfc0ab12ab 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -1226,6 +1226,7 @@ depend texmate depend texments depend texpower depend texshade +depend texsurgery depend textfit depend textmerg depend textpos diff --git a/Master/tlpkg/tlpsrc/texsurgery.tlpsrc b/Master/tlpkg/tlpsrc/texsurgery.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/texsurgery.tlpsrc |