diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/parades/paravesp.sty |
Initial commit
Diffstat (limited to 'macros/latex/contrib/parades/paravesp.sty')
-rw-r--r-- | macros/latex/contrib/parades/paravesp.sty | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/macros/latex/contrib/parades/paravesp.sty b/macros/latex/contrib/parades/paravesp.sty new file mode 100644 index 0000000000..5f983dd316 --- /dev/null +++ b/macros/latex/contrib/parades/paravesp.sty @@ -0,0 +1,58 @@ +\ProvidesPackage{paravesp}[2016/02/05 space above and below paragraphs] + +\newcount\pd@lastpenalty + +\newcommand\pd@remember@penalty{\pd@lastpenalty=\lastpenalty\relax} + +\newcommand\pd@restore@penalty{\ifnum 0=\pd@lastpenalty \else + \penalty\pd@lastpenalty\relax \fi} + +\newcommand\ParaSpaceAbove[1]{\relax % Mask \ifdim from possible expansion +\ifvmode + \skip0=#1\relax + \ifdim\parskip<0pt\relax + \skip0=0pt\relax + \fi + \ifdim\skip0=0pt\relax + \IssueParaSpace + \else + \ifdim\prevdepth>-1000pt\relax + \advance\parskip by \prevdepth\relax % assumed: was set by SpaceBelow + \pd@remember@penalty + \vskip-\prevdepth\relax + \pd@restore@penalty + \prevdepth=-1000pt\relax + \fi + \ifdim\skip0>\parskip\relax + \parskip=#1\relax + \fi + \fi +\fi +} + +\newcommand\ParaSpaceBelow[1]{\relax +\parskip=#1\relax +\advance\parskip by -\prevdepth\relax +\ifdim\parskip<0pt\relax + \ifdim#1<0pt\relax \parskip=#1\relax \else \parskip=0pt\relax \fi + \nointerlineskip +\else% >=10000pt + \ifdim\parskip>999pt\relax \parskip=#1\relax\fi +\fi} + +\newcommand\IssueParaSpace{\relax +\ifhmode \typeout{! LaTeX warning: IssueParaSpace in horizontal mode.}\par \fi +\ifdim\parskip>0pt\relax + \pd@remember@penalty + \vskip\parskip\relax + \pd@restore@penalty + \prevdepth=-1000pt\relax + \parskip=0pt\relax +\fi +} + +\newcommand\IgnoreSpaceAboveNextPara{% +\ParaSpaceBelow{-0.01pt}} + +\newcommand\CancelIgnoreSpaceAboveNextPara{% +\relax\ifdim\parskip<0pt\relax \parskip=0pt\relax \fi} |