texlive[51479] Master: soulpos (26jun19)

commits+karl at tug.org commits+karl at tug.org
Wed Jun 26 22:54:16 CEST 2019


Revision: 51479
          http://tug.org/svn/texlive?view=revision&revision=51479
Author:   karl
Date:     2019-06-26 22:54:16 +0200 (Wed, 26 Jun 2019)
Log Message:
-----------
soulpos (26jun19)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/libexec/ctan2tds
    trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/soulpos/
    trunk/Master/texmf-dist/doc/latex/soulpos/README.md
    trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.pdf
    trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.tex
    trunk/Master/texmf-dist/tex/latex/soulpos/
    trunk/Master/texmf-dist/tex/latex/soulpos/soulpos.sty
    trunk/Master/tlpkg/tlpsrc/soulpos.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/soulpos/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/soulpos/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/soulpos/README.md	2019-06-26 20:54:16 UTC (rev 51479)
@@ -0,0 +1,12 @@
+
+Combines soul and the savepos tools provided by pdftex and compatible
+for fancy underlining.
+
+License:     MIT
+________
+Javier Bezos --- http://www.texnia.com
+
+
+
+
+


Property changes on: trunk/Master/texmf-dist/doc/latex/soulpos/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.pdf	2019-06-26 20:53:24 UTC (rev 51478)
+++ trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.pdf	2019-06-26 20:54:16 UTC (rev 51479)

Property changes on: trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.tex	2019-06-26 20:54:16 UTC (rev 51479)
@@ -0,0 +1,372 @@
+%
+% Copyright (C) 2012-2019 Javier Bezos http://www.texnia.com
+%
+% This file may be distributed and/or modified under the conditions of
+% the MIT License. A version can be found at the end of this file.
+%
+
+\documentclass[a4paper,twocolumn]{article}
+
+\title{Underlining (and more) with soulpos}
+\author{Javier Bezos}
+\date{2012-02-25}
+
+\usepackage{tikz}
+\usetikzlibrary{decorations.pathmorphing}
+
+% \usepackage{soul}
+\usepackage{soulpos}
+
+\renewcommand{\ulpostolerance}{12}
+
+\advance\textwidth16mm
+\advance\oddsidemargin-8mm
+
+\makeatletter
+\newenvironment{desc}
+  {\vskip2ex
+   \hrule
+   \trivlist\item[]}
+  {\endtrivlist}
+\makeatother
+
+\begin{document}
+
+\maketitle
+
+This package just combines \textsf{soul} with the \texttt{savepos}
+mechanism provided by the pdftex engine, so that you can create
+(almost) arbitrary underlining and similar ``decorations'', including
+rules, leaders and even pictures (\textsf{pgf}, \textsf{pstricks},
+etc.). Unlike \textsf{soul} underlines, which are built by repeating small
+elements, here each chunk of text to be underlined is a single
+element.
+
+The main drawback is obvious -- since it relies on \verb|\pdfsavepos|
+two passes are necessary.  Further, to prevent exhausting the hash
+table, the auxiliary file containing the information about each
+underline is read only when needed, which may impact performance
+negatively.\footnote{Actually, two files are created, with extensions
+\texttt{upa} and \texttt{upb}.}
+
+Internally \textsf{soul} knows to some point where a break happens,
+and this information may be used to set diferent styles depending on
+the position.
+
+This version (1.0) does almost no checking (e.g., to warn about the
+need for a new run), which is left for a later release.
+
+The package \textsf{soulutf8} is loaded if it (or \textsf{soul}) has 
+not been loaded before (note the UTF-8 encoding is not necessary for
+\textsf{soulutf8} to work).
+
+\section{Usage}
+
+Underlining macros are defined much like in \textsf{soul}.
+
+\begin{desc}
+\verb|\ulposdef{<name>}[<options>]{<commands>}|
+\end{desc}
+
+Defines an underline as \verb|<commands>|, which is placed in a box of
+width zero with either \verb|\llap| or \verb|\rlap|, as explained
+below.  Typically, \verb|<commands>| will contain a rule or leaders.
+If the text spans more than one line, then there will be several
+chunks to be undelined (one per line).
+
+You can use the following macros in \verb|<commands>|.
+
+\begin{desc}
+\verb|\ulwidth|
+\end{desc}
+
+The width of the text block to be underlined. A basic underlining is:
+\begin{verbatim}
+\ulposdef{\uline}{\rule[-.8ex]{\ulwidth}{.5pt}}
+\end{verbatim}
+
+\begin{desc}
+\verb|\ifulstarttype{<type>}{<true>}{<false>}|\qquad
+\verb|\ifulendtype{<type>}{<true>}{<false>}|
+\end{desc}
+
+These tests can be used in \verb|<commands>|, to set different underlining
+styles depending on where the current chunk begins or ends.  Here
+\verb|<type>| is: 0 if the very start or end of the underlined text, 1 if a
+space, 2 if a discretionary hyphen and 3 if an explicit hyphen. See 
+an example below.
+
+\begin{desc}
+\verb|\ulstarttype|\qquad\verb|\ulendtype|
+\end{desc}
+
+Macros storing the values described above, so that you can use
+\LaTeX{} conditionals (or \TeX{} ones). So, to check if the end is an
+hyphen, test \verb|\ulendtype>1|.
+
+\vskip2ex
+\hrule
+\vskip2ex
+
+Valid keys/values in \verb|<options>| are:
+
+\begin{description}
+\item[\texttt{xoffset}]
+This key provides a simple way to fix an unpleasant effect found in
+many programs when colouring the text background -- the colour starts
+and ends just at the edges of the first and last characters.  Just set
+the offset to a value larger than 0pt, as for example .1 em.  This
+value is added ($\times$2) to \verb|\ulwidth|, but no space is added
+to the text (which can be done with the \verb|gap| key).  Of course,
+you can still do finer adjustments in the definition of the underline,
+as shown in the samples below. You can use \verb|xoffset-start| and 
+\verb|xoffset-end| to set the corresponding values separately.
+
+\item[\texttt{gap}] It is equivalent to the outer space in
+\verb|\sodef|.  This value is \textit{not} added to \verb|\ulwidth|.
+You can use \verb|gap-start| and \verb|gap-end| to set the
+corresponding values separately.
+
+\item[\texttt{hyphens}] Sometimes excluding the hyphen from the
+underlined text could make sense.  Default is \verb|hyphens=include|
+but you can set it to \verb|hyphens=exclude|.
+
+\item[\texttt{overdraw}] By default underlines are drawn before the
+text is typeset (with \verb|\rlap|), so that they are placed behind.
+However, it can be drawn after (with \verb|\llap|), on top the text,
+with \verb|overdraw| or, equivalently, \verb|overdraw=true| (default
+is \verb|overdraw=false|).
+\end{description}
+
+\begin{desc}
+\verb|\ulpostolerance|
+\end{desc}
+
+The current algorithm is based on changes of the $y$ coordinate of
+savepos and therefore presumes a regular baseline.  Any increasing or
+decreasing of $y$ is considered a new chunk, but you can give a certain
+tolerance with, for example:
+\begin{verbatim}
+\renewcommand{\ulpostolerance}{12}
+\end{verbatim}
+
+\section{Future work}
+
+\begin{itemize}
+\item Warnings. 
+\item In short documents, providing an option for using the aux file.
+\item Redefinable macros.
+\item \texttt{offset}, including edges at line breaks.
+\item \texttt{.upb} is generated at the end of the run, so it might be
+used by another program to generate the decorations.  As of 1.0.
+however, its syntax is likely to change and therefore unsupported.
+\item Better manual.
+\item Improved performance.
+\item Fixing some issues in multicolumn text (it does not work if there 
+are just two lines, one at the left and the other at the right).
+\item Some predefined ``decorations''.
+\end{itemize}
+
+\newcommand\ulpossample[1]{%
+A single #1{word}.  Now #1{a few words}.  Longer:
+#1{this text spans several lines, so that you can see the behaviour of
+\textsf{soulpos} where there are line breaks}.\vskip2ex\hrule\vskip2ex}
+
+\section{Examples}
+
+%  \def\ulpostolerance{-78}
+
+\makeatletter
+\expandafter\def\expandafter\verbatim at font\expandafter{%
+  \verbatim at font\small}
+\makeatother
+
+\begin{verbatim}
+\ulposdef{\ulpgfA}{%
+  \raisebox{-.75ex}{%
+    \begin{tikzpicture}%
+    \clip (0,-1pt) rectangle (\ulwidth,1pt);
+    \draw[
+      color=black!40,
+      line width=.7pt,
+      decorate,
+      decoration=
+        {random steps,
+         segment length=1.5mm,
+         amplitude=.5pt}]
+    (0,0) -- +(\ulwidth+3pt,0);
+    \end{tikzpicture}}}
+\end{verbatim}
+
+\ulposdef\ulpgfA{%
+  \raisebox{-.75ex}{%
+    \begin{tikzpicture}%
+    \clip (0,-1pt) rectangle (\ulwidth,1pt);
+    \draw[
+      color=black!40,
+      line width=.7pt,
+      decorate,
+      decoration=
+        {random steps,segment length=1.5mm,amplitude=.5pt}]
+    (0,0) -- +(\ulwidth+3pt,0);
+    \end{tikzpicture}}}
+
+\ulpossample\ulpgfA
+
+\begin{verbatim}
+\ulposdef{\ulpgfB}{%
+  \raisebox{-.75ex}{%
+    \begin{tikzpicture}%
+    \clip (0,-1pt) rectangle (\ulwidth,1pt);
+    \draw[color=black!40,
+      line width=.7pt,
+      decorate,
+      decoration=
+        {snake,
+         amplitude=.3pt,
+         segment length=1mm,}]
+     (0,0) -- +(\ulwidth+3pt,0);
+     \end{tikzpicture}}}
+\end{verbatim}
+
+\ulposdef\ulpgfB{%
+ \raisebox{-.75ex}{%
+  \begin{tikzpicture}%
+  \clip (0,-1pt) rectangle (\ulwidth,1pt);
+  \draw[color=black!40,
+   line width=.7pt,
+   decorate,
+   decoration=
+     {snake, amplitude=.3pt,segment length=1mm,}]
+   (0,0) -- +(\ulwidth+3pt,0);
+   \end{tikzpicture}}}
+
+\ulpossample\ulpgfB
+
+\begin{verbatim}
+\ulposdef{\ulpgfC}[xoffset=.15em]{%
+  \ifulstarttype{0}%
+    {\def\arr{|}}%
+    {\def\arr{<}}%
+  \ifulendtype{0}%
+    {\edef\arr{\arr-|}}%
+    {\edef\arr{\arr->}}%
+  \raisebox{-.7ex}{%
+    \tikz
+    \draw[\arr,color=black!40,
+          line width=1pt]
+    (0,0) -- +(\ulwidth-1pt,0);}}
+\end{verbatim}
+
+\ulposdef\ulpgfC[xoffset=.15em]{%
+  \ifulstarttype{0}%
+    {\def\arr{|}}%
+    {\def\arr{<}}%
+  \ifulendtype{0}%
+    {\edef\arr{\arr-|}}%
+    {\edef\arr{\arr->}}%
+  \raisebox{-.7ex}{%
+    \tikz
+    \draw[\arr,color=black!40,
+          line width=1pt]
+    (0,0) -- +(\ulwidth-1pt,0);}}
+
+\ulpossample\ulpgfC
+
+\begin{verbatim}
+\ulposdef{\ulbgdD}{%
+  \mbox{%
+    \color{black!30}%
+    \rule[-.8ex]{\ulwidth}{13pt}}}
+\end{verbatim}
+
+\ulposdef\ulbgdD{%
+  \mbox{%
+    \color{black!30}%
+    \rule[-.8ex]{\ulwidth}{13pt}}}
+
+\ulpossample\ulbgdD
+
+\begin{verbatim}
+\ulposdef{\ulbgdE}[xoffset=.1em]{%
+  \mbox{%
+    \color{black!30}%
+    \rule[-.8ex]{\ulwidth}{13pt}}}
+\end{verbatim}
+
+\ulposdef\ulbgdE[xoffset=.1em]{%
+  \mbox{%
+    \color{black!30}%
+    \rule[-.8ex]{\ulwidth}{13pt}}}
+
+\ulpossample\ulbgdE
+
+\begin{verbatim}
+\ulposdef{\uldash}{%
+  \makebox[\ulwidth]{%
+    \color{blue}%
+    \xleaders\hbox to.27em
+      {\hss\rule[-.8ex]{.18em}{.5pt}\hss}%
+    \hfill}}
+\end{verbatim}
+
+\ulposdef\uldash{%
+  \makebox[\ulwidth]{%
+    \color{blue}%
+    \xleaders\hbox to.27em{\hss\rule[-.8ex]{.18em}{.5pt}\hss}\hfill}}
+
+\ulpossample\uldash
+
+\begin{verbatim}
+\ulposdef{\uldot}{%
+ \mbox{%
+   \raisebox{-.85ex}{%
+     \xleaders\hbox to.2em
+       {\hss\footnotesize.\hss}\hskip\ulwidth}}}
+\end{verbatim}
+
+\ulposdef\uldot{%
+ \mbox{%
+   \raisebox{-.85ex}{\xleaders\hbox to.2em{\hss\footnotesize.\hss}\hskip\ulwidth}}}
+
+\ulpossample\uldot
+
+\begin{verbatim}
+\ulposdef{\ulflag}{%
+  \mbox{%
+    \color{red}\rule[-.85ex]{.25\ulwidth}{1.5pt}%
+    \color{yellow}\rule[-.85ex]{.5\ulwidth}{1.5pt}%
+    \color{red}\rule[-.85ex]{.25\ulwidth}{1.5pt}}}
+\end{verbatim}
+
+\ulposdef\ulflag{%
+  \mbox{%
+    \color{red}\rule[-.85ex]{.25\ulwidth}{1.5pt}%
+    \color{yellow}\rule[-.85ex]{.5\ulwidth}{1.5pt}%
+    \color{red}\rule[-.85ex]{.25\ulwidth}{1.5pt}}}
+
+\ulpossample\ulflag
+
+\end{document}
+
+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.
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/soulpos/soulpos.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/soulpos/soulpos.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/soulpos/soulpos.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/soulpos/soulpos.sty	2019-06-26 20:54:16 UTC (rev 51479)
@@ -0,0 +1,285 @@
+%
+% Copyright (C) 2012-2019 Javier Bezos http://www.texnia.com
+%
+% This file may be distributed and/or modified under the conditions of
+% the MIT License. A version can be found at the end of this file.
+%
+% Repository: https://github.com/jbezos/esindex
+%
+
+\ProvidesPackage{soulpos}[2012/02/25 v1.1 Fancy underlining]
+
+\newcount\ulp at subcnt
+\newcount\ulp at cnt
+
+\newwrite\ulp at out
+\newread\ulp at in
+
+\AtBeginDocument{\ulp at begindoc}
+
+\def\ulp at begindoc{%
+  \@ifundefined{SOUL@}%
+    {\PackageInfo{soulpos}{Loading soulutf8}%
+     \RequirePackage{soulutf8}}{}%
+  \openout\ulp at out=\jobname.upa\relax
+  \openin\ulp at in=\jobname.upb\relax}
+
+\let\ulp at afterend\relax
+
+\AtEndDocument{%
+  \closeout\ulp at out
+  \closein\ulp at in
+  \write\@auxout{\string\ulp at afterend}%
+  \def\ulp at afterend{%
+    \ulp at cnt\z@
+    \message{* soulpos - computing points - it may take a few seconds *}%
+    \immediate\openout\ulp at out=\jobname.upb\relax
+    \begingroup
+      \makeatletter
+      \InputIfFileExists{\jobname.upa}{}{}%
+    \endgroup
+    \immediate\closeout\ulp at out}}
+
+% Underlining options
+% --------------------
+
+\RequirePackage{keyval}
+
+\define at key{soulpos}{overdraw}[true]{\@nameuse{ulp at pos@#1}}
+\def\ulp at pos@false{\def\ulp at pos{\z@}}
+\def\ulp at pos@true{\def\ulp at pos{\@ne}}
+
+\newif\ifulp at includehyphens
+\ulp at includehyphenstrue
+
+\define at key{soulpos}{hyphens}[include]{\@nameuse{ulp at hyp@#1}}
+\def\ulp at hyp@include{\ulp at includehyphenstrue}
+\def\ulp at hyp@exclude{\ulp at includehyphensfalse}
+
+\define at key{soulpos}{xoffset}[0pt]{\def\ulp at skern{#1}\def\ulp at ekern{#1}}
+\define at key{soulpos}{xoffset-start}[0pt]{\def\ulp at skern{#1}}
+\define at key{soulpos}{xoffset-end}[0pt]{\def\ulp at ekern{#1}}
+
+\define at key{soulpos}{gap}[0pt]{\def\ulp at sgap{#1}\def\ulp at egap{#1}}
+\define at key{soulpos}{gap-start}[0pt]{\def\ulp at sgap{#1}}
+\define at key{soulpos}{gap-end}[0pt]{\def\ulp at egap{#1}}
+
+% Computing start/end points
+% ---------------------------
+
+\newcommand\ulpostolerance{0}%
+
+\let\ulp at Gb\relax
+\def\ulp at Pb#1{\expandafter\gdef\csname ulp@@#1\endcsname}
+
+\def\ulp at writeb{%
+  \count@\ulp at xlast
+  \advance\count at -\ulp at xfirst
+  \immediate\write\ulp at out{%
+    \string\ulp at Pb{\ulp at ulsub}%
+    {{\the\count@}\ulp at startprev\ulp at endprev}\@percentchar}}
+
+\def\ulp at Ga#1#2{%
+  \advance\ulp at cnt\@ne
+  \def\ulp at pos{#1}%
+  \immediate\write\ulp at out{\string\ulp at Gb\string{\@percentchar\iffalse}\fi}%
+  #2%
+  \ulp at writeb
+  \immediate\write\ulp at out{\iffalse{\fi\string}\@percentchar}}
+
+\def\ulp at Pa#1#2#3#4{%
+  \@tempswafalse
+  \ifnum#2=\@ne
+    \@tempswatrue
+  \else
+    \count@\ulp at ylast\relax
+    \advance\count at -#4\relax
+    \ifnum\ulpostolerance<\count@
+      \ulp at writeb
+      \@tempswatrue
+    \else\ifnum-\ulpostolerance>\count@
+      \ulp at writeb
+      \@tempswatrue
+    \fi\fi
+  \fi
+  \if at tempswa
+    \def\ulp at xfirst{#3}%
+    \def\ulp at startprev{#1}%
+    \ifnum\ulp at pos=\z@
+      \edef\ulp at ulsub{#2}%
+    \fi
+  \fi
+  \def\ulp at endprev{#1}%
+  \def\ulp at xlast{#3}%
+  \def\ulp at ylast{#4}%
+  \ifnum\ulp at pos=\@ne
+    \edef\ulp at ulsub{#2}%
+  \fi}
+
+% Writing points to .upa
+% ----------------------
+
+\def\ulp at stepput{\ulp at step\ulp at put}
+\def\ulp at step{\global\advance\ulp at subcnt\@ne}
+
+% 0: text, 1: space, 2: discretionary, 3 exhyph
+
+\newdimen\ulwidth
+
+\def\ulp at fetch#1#2#3{%
+   \ulwidth#1sp\relax
+   \def\ulstarttype{#2}%
+   \def\ulendtype{#3}}
+
+\def\ulp at put#1{%
+  \hb at xt@\z@\bgroup
+    \ifcase\ulp at pos\else\hss\fi % over
+    \@ifundefined{ulp@@\the\ulp at subcnt}{}%
+      {\expandafter\expandafter\expandafter
+         \ulp at fetch\csname ulp@@\the\ulp at subcnt\endcsname
+       \ulp at draw
+       \global\expandafter\let\csname ulp@@\the\ulp at subcnt\endcsname\@undefined}%
+    \ifcase\ulp at pos\hss\fi % over
+    \pdfsavepos
+    \protected at write\ulp at out{}%
+      {\string\ulp at Pa\number#1{\the\ulp at subcnt}%
+      {\noexpand\the\pdflastxpos}{\noexpand\the\pdflastypos}%
+       \@percentchar}%
+  \egroup}
+
+% The command for defining underlines
+% ------------------------------------
+
+\def\ulp at preamble{%
+      \ifeof\ulp at in
+      \else
+        \begingroup
+          \makeatletter
+          \catcode`\^^M=9  % avoids extra \par's
+          \read\ulp at in to\@tempa
+          \@tempa
+        \endgroup
+      \fi
+      \global\advance\ulp at cnt\@ne
+      \ulp at subcnt\z@
+      \ifdim\ulp at sgap>0pt  % sacar también desde aquí
+        \ifdim\lastskip>5sp
+          \unskip
+          \hskip\ulp at sgap
+        \fi
+      \fi
+      \protected at write\ulp at out{}{%
+         \string\ulp at Ga\ulp at pos
+         \string{\@percentchar\iffalse}\fi}%
+      \SOUL at setkern{-\ulp at skern}%
+      \ulp at stepput\z@
+      \SOUL at setkern\ulp at skern}
+
+\def\ulp at postamble{%
+     \SOUL at setkern\ulp at ekern
+     \ulp at stepput\z@
+     \SOUL at setkern{-\ulp at ekern}%
+     \write\ulp at out{\iffalse{\fi\string}\@percentchar}%
+     \ifdim\ulp at egap>0pt
+       \global\skip@\ulp at egap
+       \aftergroup\SOUL at socheck
+     \fi}%
+
+\def\ulp at everyspace#1{%
+     \ulp at stepput\@ne
+     #1\space
+     \ulp at stepput\@ne}%
+
+\def\ulp at everyhyphen{%
+     \ifulp at includehyphens
+       \ulp at step
+     \else
+       \ulp at stepput\tw@
+     \fi
+     \ulp at step
+     \discretionary
+       {\SOUL at setkern\SOUL at hyphkern
+        \SOUL at sethyphenchar
+        \global\advance\ulp at subcnt\m at ne
+        \ifulp at includehyphens
+          \ulp at put\tw@
+        \fi
+        \ulp at step}%
+       {\ulp at put\tw@}%
+       {}}%
+
+\def\ulp at everyexhyphen#1{%
+     \SOUL at setkern\SOUL at hyphkern
+     \ifulp at includehyphens
+       \hbox{#1}%
+       \ulp at stepput\thr@@
+     \else
+       \ulp at stepput\thr@@
+       \hbox{#1}%
+     \fi
+     \ulp at step
+     \discretionary{}%
+       {\ulp at put\thr@@}%
+       {\SOUL at setkern\SOUL at charkern}}%
+
+\newcommand\ulposdef[1]{%
+  \@ifnextchar[{\ulp at def#1}{\ulp at def#1[]}}
+
+\def\ulp at def#1[#2]#3{
+  \DeclareRobustCommand*#1{%
+    \def\SOUL at preamble{%
+      \def\ulp at skern{0pt}%
+      \def\ulp at ekern{0pt}%
+      \def\ulp at sgap{0pt}%
+      \def\ulp at egap{0pt}%
+      \def\ulp at pos{\z@}%
+      \setkeys{soulpos}{#2}%
+      \def\ulp at draw{#3}%
+      \ulp at preamble}%
+    \let\SOUL at postamble\ulp at postamble
+    \let\SOUL at everyspace\ulp at everyspace
+    \let\SOUL at everyhyphen\ulp at everyhyphen
+    \let\SOUL at everyexhyphen\ulp at everyexhyphen
+    \let\SOUL at everysyllable\@empty
+    \def\SOUL at everytoken{\the\SOUL at token}%
+  \SOUL@}}
+
+\newcommand\ifulstarttype[1]{%
+  \ifnum\ulstarttype=#1\relax
+    \expandafter\@firstoftwo
+  \else
+    \expandafter\@secondoftwo
+  \fi}
+
+\newcommand\ifulendtype[1]{%
+  \ifnum\ulendtype=#1\relax
+    \expandafter\@firstoftwo
+  \else
+    \expandafter\@secondoftwo
+  \fi}
+
+\endinput
+
+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.
+
+


Property changes on: trunk/Master/texmf-dist/tex/latex/soulpos/soulpos.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2019-06-26 20:53:24 UTC (rev 51478)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2019-06-26 20:54:16 UTC (rev 51479)
@@ -624,7 +624,8 @@
     skak skaknew skb skdoc skeycommand skeyval skmath skrapport skull
     slantsc slideshow smalltableof smartdiagram smartref smartunits
     snapshot snotez
-    songbook songs sort-by-letters soton soul soup sourcecodepro sourcesanspro
+    songbook songs sort-by-letters soton soul soulpos
+    soup sourcecodepro sourcesanspro
     sourceserifpro
     spalign spanish-mx spark-otf sparklines spath3
     spectralsequences spelling spie

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2019-06-26 20:53:24 UTC (rev 51478)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2019-06-26 20:54:16 UTC (rev 51479)
@@ -436,7 +436,6 @@
  'eq2db',	"die 'skipping, author request (and nonfree requirements)'",
  'eqexam',      "die 'skipping, per author (dps) request'",
  'eqmark',      "die 'skipping, latex 2.09, was never in TL'",
- 'esindex',     "die 'skipping, use bezos'",
  'eskdx',       "&MAKEeskdx",
  'esstix',      "&MAKEcopy",
  'esvect',      "&MAKEflatten",
@@ -1125,7 +1124,6 @@
  'smallcap',    "die 'skipping, questionable license, 1996'",
  'smflatex',    "die 'skipping, clashing names'",
  'softmaker-freefonts', "die 'skipping, requires nonfree fonts'",
- 'soulpos',     "die 'skipping, use bezos'",
  'soyombo',     "die 'skipping, noinfo license, Mongolian ca.1996'",
  'spanish',     "die 'skipping, complicated collection'",
  'spark-otf',	"&MAKEflatten",

Modified: trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc	2019-06-26 20:53:24 UTC (rev 51478)
+++ trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc	2019-06-26 20:54:16 UTC (rev 51479)
@@ -1031,6 +1031,7 @@
 depend snapshot
 depend snotez
 depend soul
+depend soulpos
 depend spark-otf
 depend sparklines
 depend sphack

Added: trunk/Master/tlpkg/tlpsrc/soulpos.tlpsrc
===================================================================


More information about the tex-live-commits mailing list