summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-05-14 21:41:06 +0000
committerKarl Berry <karl@freefriends.org>2019-05-14 21:41:06 +0000
commitfe0339cd9b2d51a9a082541c1916f0122f2841e9 (patch)
treea5a31963ec35fa995ae10e595b04be490054991c
parenta8f6acf197d3ba49a39eb27376efaab0c6f70208 (diff)
labels4easylist (14may19)
git-svn-id: svn://tug.org/texlive/trunk@51124 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/labels4easylist/README10
-rw-r--r--Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.pdfbin0 -> 24595 bytes
-rw-r--r--Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.tex91
-rw-r--r--Master/texmf-dist/tex/latex/labels4easylist/labels4easylist.sty90
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check3
-rw-r--r--Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/labels4easylist.tlpsrc0
7 files changed, 194 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/labels4easylist/README b/Master/texmf-dist/doc/latex/labels4easylist/README
new file mode 100644
index 00000000000..45ce70e9009
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/labels4easylist/README
@@ -0,0 +1,10 @@
+Package labels4easylist provide \itemLabel macro for adding configurable
+reference labels to easylist items. Macro requires one argument - label
+identifier (using in \ref for references to label).
+
+Version 1.0 (2019-05-13): first public release
+
+
+Copyright (C) 2015-2019, Robert Ryszard Paciorek <rrp@opcode.eu.org>
+
+This is free software distributed under terms of The MIT License.
diff --git a/Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.pdf b/Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.pdf
new file mode 100644
index 00000000000..045c9693fb8
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.tex b/Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.tex
new file mode 100644
index 00000000000..2624de02e1d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/labels4easylist/labels4easylist.tex
@@ -0,0 +1,91 @@
+% Copyright (c) 2015-2019 Robert Ryszard Paciorek <rrp@opcode.eu.org>
+%
+% MIT License
+%
+% 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[a4paper]{article}
+\usepackage[ampersand]{labels4easylist}
+
+\begin{document}
+
+\title{The \texttt{labels4easylist} package}
+\author{Robert Ryszard Paciorek <rrp@opcode.eu.org>}
+\date{2019-05-13}
+\maketitle
+
+\section{Introduction}
+
+This packgage provide \verb#\itemLabel# macro for adding configurable reference labels to easylist items.
+Macro requires one argument - label identifier (using in \verb#\ref# for references to label).
+Macro accepts two optional argument - number of easylist hierarchy levels to omission in label text.
+
+\section{Example}
+
+\begin{easylist}
+\NewList(
+ % separator pomiędzy numerami oraz separatory końcowe
+ Mark=.,FinalMark=.,
+ % ustawienie odstępów między punktami
+ Space=0.5em,Space*=0.5em,
+ % ustawienia wcięć
+ Hang=true,Align=move,FinalSpace=0.5em,Progressive*=3ex,Margin1=1ex,
+ Numbers5=l,Hide5=4,FinalMark5={)},Margin5=12ex,
+ Hide6=6,Style6*=-- ,Margin6=15ex,
+)
+\ListProperties(Start1=2)
+& aaa aaa \label{A1} x\itemLabel{A2}x
+&& bbb bbb \label{B1} x\itemLabel{B2}x
+\ListProperties(Start3=5)
+&&&& ddd ddd \label{C1} \itemLabel{C2} x\itemLabel{C3}[2]x x\itemLabel{C4}[0][2]x
+&&&&& eee eee \label{D1} \itemLabel{D2} x\itemLabel{D3}[4]x
+\end{easylist}
+
+\vspace{0.5cm}
+
+\begin{tabular}{ p{2.5cm} p{2.5cm} p{4.5cm} }
+standard \textbackslash{}label &
+\textbackslash{}itemLabel &
+\textbackslash{}itemLabel with extra args \\
+
+\ref{A1} & \ref{A2} & \\
+\ref{B1} & \ref{B2} & \\
+\ref{C1} & \ref{C2} & \ref{C3} in \ref{C4}\\
+\ref{D1} & \ref{D2} & \ref{D3}
+\end{tabular}
+
+\subsection{easylist code}
+\begin{verbatim}
+\ListProperties(Start1=2)
+& aaa aaa \label{A1} x\itemLabel{A2}x
+&& bbb bbb \label{B1} x\itemLabel{B2}x
+\ListProperties(Start3=5)
+&&&& ddd ddd \label{C1} \itemLabel{C2} x\itemLabel{C3}[2]x x\itemLabel{C4}[0][2]x
+&&&&& eee eee \label{D1} \itemLabel{D2} x\itemLabel{D3}[4]x
+\end{verbatim}
+
+\subsection{table code}
+\begin{verbatim}
+\ref{A1} & \ref{A2} & \\
+\ref{B1} & \ref{B2} & \\
+\ref{C1} & \ref{C2} & \ref{C3} in \ref{C4}\\
+\ref{D1} & \ref{D2} & \ref{D3}
+\end{verbatim}
+
+\end{document}
diff --git a/Master/texmf-dist/tex/latex/labels4easylist/labels4easylist.sty b/Master/texmf-dist/tex/latex/labels4easylist/labels4easylist.sty
new file mode 100644
index 00000000000..01c3a7daf71
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/labels4easylist/labels4easylist.sty
@@ -0,0 +1,90 @@
+% Copyright (c) 2015-2019 Robert Ryszard Paciorek <rrp@opcode.eu.org>
+%
+% MIT License
+%
+% 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.
+
+% Version 1.0 (2019-05-13): first public release
+
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{labels4easylist}
+
+\RequirePackage{xparse}
+\RequirePackageWithOptions{easylist}
+
+%
+% configurable refernece labels for easylist items
+%
+
+% add label to item entry, usage:
+% \itemLabel{LabelName}[skipA][skibB]
+% skipA - number of level to skip at front
+% skipB - number of level to skip at end
+\DeclareDocumentCommand{\itemLabel}{ m O{0} o } {%
+ % prepare ref-label text in \elLabel@currRefLabel
+ \xdef\elLabel@currRefLabel{}{%
+ \elLabel@currLevel=1%
+ \elLabel@minLevel=#2%
+ \elLabel@maxLevel=\el@PreviousItem%
+ \IfValueTF{#3}{\advance\elLabel@maxLevel by -#3}{\elLabel@GetLastLevel}%
+ \elLabel@RecurencyGetEnumLevel%
+ }%
+ % create ref-label with id from #1 and text from \elLabel@currRefLabel
+ \let\@currentlabel\elLabel@currentlabel%
+ \def\@currentlabel{\elLabel@currRefLabel}%
+ \label{#1}%
+ \let\elLabel@currentlabel\@currentlabel%
+}
+
+% counters
+\newcount\elLabel@currLevel
+\newcount\elLabel@minLevel
+\newcount\elLabel@maxLevel
+
+% recursive skip final unused levels and not enumerate levels
+\newcommand{\elLabel@GetLastLevel} {
+ \ifnum\elLabel@maxLevel>\elLabel@minLevel%
+ \ifnum\elLabel@maxLevel=\csname Hide\the\elLabel@maxLevel\endcsname
+ \advance\elLabel@maxLevel by -1
+ \elLabel@GetLastLevel
+ \else%
+ \ifnum\value{List\the\elLabel@maxLevel}=0
+ \advance\elLabel@maxLevel by -1
+ \elLabel@GetLastLevel
+ \fi%
+ \fi%
+ \fi%
+}
+
+% recursive build label text for reference
+\newcommand{\elLabel@RecurencyGetEnumLevel} {%
+ % if (minLev < currLev AND currLev <= maxLev AND value !=0)
+ \ifnum\elLabel@currLevel>\elLabel@minLevel \ifnum\elLabel@currLevel>\elLabel@maxLevel\else \ifnum\value{List\the\elLabel@currLevel}=0\else%
+ \xdef\elLabel@currRefLabel{\elLabel@currRefLabel%
+ \csname el@NumberDenotation:\csname Numbers\the\elLabel@currLevel\endcsname\endcsname{List\the\elLabel@currLevel}%
+ \ifnum\elLabel@currLevel<\elLabel@maxLevel \csname Mark\the\elLabel@currLevel\endcsname \fi%
+ }%
+ \fi\fi\fi%
+ % recursion:
+ \ifnum\elLabel@currLevel<\elLabel@maxLevel
+ \advance\elLabel@currLevel by 1
+ \elLabel@RecurencyGetEnumLevel
+ \fi%
+}
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index 1220470283c..cc2d3028b2a 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -381,7 +381,8 @@ my @TLP_working = qw(
ktv-texdata ku-template kurdishlipsum kurier kvmap
l2picfaq l2tabu l2tabu-english l2tabu-french l2tabu-italian l2tabu-spanish
l3build l3kernel l3packages l3experimental
- labbook labels labelschanged labyrinth ladder lambda-lists langcode langsci
+ labbook labels labels4easylist labelschanged
+ labyrinth ladder lambda-lists langcode langsci
lapdf lastpackage lastpage
latex latex-bib-ex latex-bib2-ex latex-brochure
latex-course latex-doc-ptr latex-fonts
diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
index 379735dba6f..8a6dc4cab59 100644
--- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
@@ -619,6 +619,7 @@ depend ktv-texdata
depend l3build
depend labbook
depend labels
+depend labels4easylist
depend labelschanged
depend lastpackage
depend lastpage
diff --git a/Master/tlpkg/tlpsrc/labels4easylist.tlpsrc b/Master/tlpkg/tlpsrc/labels4easylist.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/labels4easylist.tlpsrc