From 402e7ad00faaab0543ef4d09bd5f5841a5be1caa Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 14 May 2021 20:13:08 +0000 Subject: noindentafter (14may21) git-svn-id: svn://tug.org/texlive/trunk@59195 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/noindentafter/noindentafter.sty | 228 +++++---------------- 1 file changed, 51 insertions(+), 177 deletions(-) (limited to 'Master/texmf-dist/tex/latex/noindentafter') diff --git a/Master/texmf-dist/tex/latex/noindentafter/noindentafter.sty b/Master/texmf-dist/tex/latex/noindentafter/noindentafter.sty index 2ea6e22b37d..904fedb1278 100644 --- a/Master/texmf-dist/tex/latex/noindentafter/noindentafter.sty +++ b/Master/texmf-dist/tex/latex/noindentafter/noindentafter.sty @@ -1,189 +1,63 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \iffalse %%%% -% % -% Copyright (c) 2014 - Michiel Helvensteijn - www.mhelvens.net % -% % -% http://latex-noindentafter.googlecode.com % -% % -% This work 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. The latest version % -% of this license is in http://www.latex-project.org/lppl.txt % -% and version 1.3 or later is part of all distributions of LaTeX % -% version 2005/12/01 or later. % -% % -% This work has the LPPL maintenance status `maintained'. % -% % -% The Current Maintainer of this work is Michiel Helvensteijn. % -% % -% This work consists of the files noindentafter.tex and noindentafter.sty. % -% % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \fi %%%% - -% \CheckSum{50} -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \subsection{Package Info} % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% \begin{macrocode} -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{noindentafter}[2014/11/30 0.2.2 - prevent paragraph indentation after specific environments or macros] -% \end{macrocode} -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \subsection{Packages} % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% \begin{macrocode} +%% +%% This is file `noindentafter.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% noindentafter.dtx (with options: `package,identify') +%% noindentafter.dtx (with options: `package,body') +%% +%% noindentafter -- purposefully prevention of paragraph indentation +%% +%% ---------------------------------------------------------------------------- +%% +%% Copyright (C) Michiel Helvensteijn, 2014-2021 +%% Copyright (C) Falk Hanisch , 2021-2021 +%% +%% ---------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License, version 1.3c of the license. The latest +%% version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of +%% LaTeX version 2008-05-04 or later. +%% +%% This work has the LPPL maintenance status "author-maintained". +%% +%% The current maintainer and author of this work is Falk Hanisch. +%% +%% This work consists of the main source file README.md, LICENSE.md, +%% noindentafter.dtx and the derived documentation noindentafter.pdf +%% +%% ---------------------------------------------------------------------------- +%% +\NeedsTeXFormat{LaTeX2e}[2020-10-01] +\ProvidesPackage{noindentafter} + [2021-05-14 v1.00 purposefully prevention of paragraph indentation] \RequirePackage{etoolbox} -% \end{macrocode} -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \subsection{Patches} % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% \needspace{5\baselineskip}\begin{macro}{\end} -% -% The package |etoolbox| provides the command -% |\AfterEndEnvironment| which creates a hook executed at a -% very late point inside the |\end| command. However, this -% hook is still located before |\ignorespaces|, which is -% too early to properly suppress the indention after an -% environment. Therefore another hook is now added to |\end| -% using |\patchcmd|. This new hook puts new code at the very -% end. -% -% \begin{macrocode} -\patchcmd\end{% - \if@ignore\@ignorefalse\ignorespaces\fi% -}{% - \if@ignore\@ignorefalse\ignorespaces\fi% - \csuse{@noindent@#1@hook}% -}{}{% - \PackageWarningNoLine{noindentafter}{% - Patching `\string\end' failed!\MessageBreak% - `\string\NoIndentAfter...' commands won't work% - }% -} -% \end{macrocode} -% -%\end{macro}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \subsection{Macros} % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% \needspace{5\baselineskip}\begin{macro}{\@NoIndentAfter} -% -% \noindent This command implements the main principle -% behind this package. It checks whether it is followed by -% a paragraph. If so, the command |\par| is temporarily -% changed using |\everypar|, so that the following paragraph -% is not indented. Immediately afterwards, default paragraph -% behavior is restored with |\@restorepar| (from the \LaTeX{} -% base). -% -% \begin{macrocode} -\newcommand*\@NoIndentAfter{% - \@ifnextchar\par{% +\RequirePackage{xpatch} +\newcommand*\nia@scan{% + \kernel@ifnextchar\par{% + \par% \def\par{% \everypar{\setbox\z@\lastbox\everypar{}}% \@restorepar% }% }{}% } -% \end{macrocode} -% -%\end{macro}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% \needspace{5\baselineskip}\begin{macro}{\NoIndentAfterThis} -% -% \noindent Enforce a paragraph break and suppress -% indentation for whatever follows. -% -% \begin{macrocode} -\newrobustcmd*{\NoIndentAfterThis}{\@NoIndentAfter\par\par} -% \end{macrocode} -% -%\end{macro}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % \needspace{5\baselineskip}\begin{macro}{\NoIndentAfterEnv} -%%% \marg{environment}\\ -% -% \noindent Append |\@NoIndentAfter| to the output of -% \meta{environment} by using the new environment hook. -% -% \begin{macrocode} -\newrobustcmd{\NoIndentAfterEnv}[1]{% - \csdef{@noindent@#1@hook}{\@NoIndentAfter}% -} -% \end{macrocode} -% -%\end{macro}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % \needspace{5\baselineskip}\begin{macro}{\NoIndentAfterCmd} -%%% \marg{command}\\ -% -% \noindent Append |\NoIndentAfterThis| to the output of -% \meta{command}. -% -% \begin{macrocode} -\newrobustcmd*{\NoIndentAfterCmd}[1]{% - \apptocmd{#1}{\NoIndentAfterThis}{}{% +\newcommand*\nia@afterendenv{} +\def\nia@afterendenv#1\ignorespaces\fi{#1\ignorespaces\fi\nia@scan} +\newrobustcmd*\NoIndentAfterThis{\nia@scan\par} +\newcommand*\NoIndentAfterCmd[1]{% + \xapptocmd#1{\NoIndentAfterThis}{}{% \PackageWarning{noindentafter}{% Patching `\string#1' failed!\MessageBreak% - `\string\NoIndentAfterCmd' won't work% + `\string\NoIndentAfterCmd{\string#1}' won't work% }% }% } -% \end{macrocode} -% -%\end{macro}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - - +\newcommand*\NoIndentAfterEnv[1]{\AfterEndEnvironment{#1}{\nia@afterendenv}} +\endinput +%% +%% End of file `noindentafter.sty'. -- cgit v1.2.3