summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/gmutils/gmtypos.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-10-14 23:19:42 +0000
committerKarl Berry <karl@freefriends.org>2011-10-14 23:19:42 +0000
commit156a2b3e555456a90baac12411ebd5fcc7b9ef02 (patch)
tree3cf17f72769c1e200486df29e8d3b593feee7637 /Master/texmf-dist/tex/latex/gmutils/gmtypos.sty
parent000e5fcea9de9a48217705874f01a84133ddb70d (diff)
gmutils (14oct11)
git-svn-id: svn://tug.org/texlive/trunk@24287 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/gmutils/gmtypos.sty')
-rw-r--r--Master/texmf-dist/tex/latex/gmutils/gmtypos.sty317
1 files changed, 197 insertions, 120 deletions
diff --git a/Master/texmf-dist/tex/latex/gmutils/gmtypos.sty b/Master/texmf-dist/tex/latex/gmutils/gmtypos.sty
index 72f5e1e28a7..65f6516e9c3 100644
--- a/Master/texmf-dist/tex/latex/gmutils/gmtypos.sty
+++ b/Master/texmf-dist/tex/latex/gmutils/gmtypos.sty
@@ -2,7 +2,7 @@
%% \iffalse ^^A we skip the debug setting
\IfFileExists{\string~/bin/gen_and_xela}{\errorcontextlines=1000 }{}
%% \fi
-%% ^^A $Id: TheUltimateMaster.gmd,v 0.297 2011/02/02 18:13:11 natror Exp natror $
+%% ^^A $Id: TheUltimateMaster.gmd,v 0.352 2011/10/12 15:19:42 natror Exp natror $
%% This is file “gmtypos.sty” generated with the DocStrip utility.
%%
%%
@@ -13,7 +13,7 @@
%%
%% Copyright ©
%% by Grzegorz ‘Natror’ Murzynowski
-%% natror (at) o2 (dot) pl
+%% natror (at) gmail (dot) com
%%
%% This program is subject to the LaTeX Project Public License.
%% See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
@@ -23,13 +23,13 @@
%%
%%
%%
-%% For the documentation please refer to the file(s)
+%% For documentation please refer to the file(s)
%% gmutils.{gmd,pdf}.
%%
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{gmtypos}
- [2010/10/24 v0.993 a collection of macros, mosltly typographical (GM)]
+ [2011/10/12 v0.996 a collection of macros, mostly typographical (GM)]
%%
@@ -46,14 +46,13 @@
\ProcessOptions
-
-
\AtBeginDocument{%
\@ifpackageloaded{fontspec}{%
\pdef\udigits{%
\addfontfeature{Numbers=Uppercase}}%
}{%
- \emptify\udigits}}
+ \emptify\udigits}%
+}
\def\Xedekfracc{\gmu@ifstar\gmu@xedekfraccstar\gmu@xedekfraccplain}
@@ -141,7 +140,7 @@
\def\GMtextsuperscript{%
\@ifXeTeX{%
\DeclareCommand\textsuperscript{sm}{%
- \IfValueTF{##1}{\textsuperscript@@{##2}}%
+ \gmuIfValueTF{##1}{\textsuperscript@@{##2}}%
{%
\begingroup
\addfontfeature{VerticalPosition=Numerator}##2%
@@ -207,7 +206,7 @@
% \inverb|\symgmathRoman⁄<version>| (math family) and
% \inverb|\gmath@fontt⁄<version>| (font).
}{%
- \IfValueT{#1}{%
+ \gmuIfValueT{#1}{%
\DeclareMathVersion{#1}% this sets the defaults so no need to
% define them explicitly
}% of if |#1| given
@@ -215,58 +214,58 @@
\gmu@getfontdata{\rmfamily\itshape}%
%
\edef\gmu@tempa{%
- \IfValueTF{#1}{\@nx\SetSymbolFont{letters}{#1}}%
+ \gmuIfValueTF{#1}{\@nx\SetSymbolFont{letters}{#1}}%
{\@nx\DeclareSymbolFont{letters}}%
- {\encodingdefault}{gmathit\PutIfValue{#1}}{m}{it}%
- \IfValueT{#1}{%
+ {\encodingdefault}{gmathit\gmuPutIfValue{#1}}{m}{it}%
+ \gmuIfValueT{#1}{%
\@nx\DeclareSymbolFont{letters#1}%
- {\encodingdefault}{gmathit\PutIfValue{#1}}{m}{it}%
+ {\encodingdefault}{gmathit\gmuPutIfValue{#1}}{m}{it}%
}%
- \@nx\DeclareFontFamily{\encodingdefault}{gmathit\PutIfValue{#1}}{%
+ \@nx\DeclareFontFamily{\encodingdefault}{gmathit\gmuPutIfValue{#1}}{%
\skewchar\font\gmu@theskewchar\space}%
- \@nx\DeclareFontShape{\encodingdefault}{gmathit\PutIfValue{#1}}{m}{it}{%
+ \@nx\DeclareFontShape{\encodingdefault}{gmathit\gmuPutIfValue{#1}}{m}{it}{%
<-> \gmu@fontscalebr \gmu@fontstring}{}%
- \IfValueT{#1}{%
+ \gmuIfValueT{#1}{%
\@nx\SetMathAlphabet\@nx\mathit{#1}{\encodingdefault}{gmathit#1}{m}{it}}%
}\gmu@tempa
%
- \IfValueT{#2}{%
+ \gmuIfValueT{#2}{%
\gmu@getfontdata{#2\gmu@ifstored{\upshape}{\storedcsname{upshape}}{\upshape}}%
\edef\gmu@tempa{%
- \@nx\DeclareSymbolFont{gmathRoman\PutIfValue{#1}}%
- {\encodingdefault}{gmathRm\PutIfValue{#1}}{m}{n}%
- \@nx\DeclareFontFamily{\encodingdefault}{gmathRm\PutIfValue{#1}}{%
+ \@nx\DeclareSymbolFont{gmathRoman\gmuPutIfValue{#1}}%
+ {\encodingdefault}{gmathRm\gmuPutIfValue{#1}}{m}{n}%
+ \@nx\DeclareFontFamily{\encodingdefault}{gmathRm\gmuPutIfValue{#1}}{%
\skewchar\font\gmu@theskewchar\space}%
- \@nx\DeclareFontShape{\encodingdefault}{gmathRm\PutIfValue{#1}}{m}{n}{%
+ \@nx\DeclareFontShape{\encodingdefault}{gmathRm\gmuPutIfValue{#1}}{m}{n}{%
<-> \gmu@fontscalebr \gmu@fontstring}{}%
}\gmu@tempa
- \@xa\font\csname gmath@fontt\PutIfValue{#1}\endcsname
+ \@xa\font\csname gmath@fontt\gmuPutIfValue{#1}\endcsname
=\gmu@fontstring\relax
% \stanza
\gmu@getfontdata{#2\gmu@ifstored{\itshape}{\storedcsname{itshape}}{\itshape}}%
\edef\gmu@tempa{%
- \@nx\DeclareSymbolFont{gmathItalic\PutIfValue{#1}}%
- {\encodingdefault}{gmathIt\PutIfValue{#1}}{m}{n}%
- \@nx\DeclareFontFamily{\encodingdefault}{gmathIt\PutIfValue{#1}}{%
+ \@nx\DeclareSymbolFont{gmathItalic\gmuPutIfValue{#1}}%
+ {\encodingdefault}{gmathIt\gmuPutIfValue{#1}}{m}{n}%
+ \@nx\DeclareFontFamily{\encodingdefault}{gmathIt\gmuPutIfValue{#1}}{%
\skewchar\font\gmu@theskewchar\space}%
- \@nx\DeclareFontShape{\encodingdefault}{gmathIt\PutIfValue{#1}}{m}{n}{%
+ \@nx\DeclareFontShape{\encodingdefault}{gmathIt\gmuPutIfValue{#1}}{m}{n}{%
<-> \gmu@fontscalebr \gmu@fontstring}{}%
}\gmu@tempa
}% of if |#2| given
% \stanza
\gmu@getfontdata{\rmfamily\upshape}%
\edef\gmu@tempa{%
- \IfValueTF{#1}{\@nx\SetSymbolFont{gmathroman}{#1}}%
+ \gmuIfValueTF{#1}{\@nx\SetSymbolFont{gmathroman}{#1}}%
{\@nx\DeclareSymbolFont{gmathroman}}%
- {\encodingdefault}{gmathrm\PutIfValue{#1}}{m}{n}%
- \@nx\DeclareFontFamily{\encodingdefault}{gmathrm\PutIfValue{#1}}{%
+ {\encodingdefault}{gmathrm\gmuPutIfValue{#1}}{m}{n}%
+ \@nx\DeclareFontFamily{\encodingdefault}{gmathrm\gmuPutIfValue{#1}}{%
\skewchar\font\gmu@theskewchar\space}%
- \@nx\DeclareFontShape{\encodingdefault}{gmathrm\PutIfValue{#1}}{m}{n}{%
+ \@nx\DeclareFontShape{\encodingdefault}{gmathrm\gmuPutIfValue{#1}}{m}{n}{%
<-> \gmu@fontscalebr \gmu@fontstring}{}%
- \IfValueT{#1}{%
+ \gmuIfValueT{#1}{%
\@nx\SetMathAlphabet\@nx\mathrm{#1}{\encodingdefault}{gmathrm#1}{m}{n}}%
}\gmu@tempa
- \@xa\font\csname gmath@font\PutIfValue{#1}\endcsname
+ \@xa\font\csname gmath@font\gmuPutIfValue{#1}\endcsname
=\gmu@fontstring\relax
\gmathfamshook
}
@@ -283,7 +282,7 @@
}{%\
%
\gmath@getfamnum(##4)%
- \IfValueTF{##2}{%
+ \gmuIfValueTF{##2}{%
\edef\gmu@tempa{%
= \mathchar@type##3\space
\gmath@famnum\space
@@ -324,10 +323,10 @@
\endcsname
\iffontchar\gmath@ft"##1 \gmath@do##2[##1]##3(##6)%
\else
- \IfValueTF{##4}{%
+ \gmuIfValueTF{##4}{%
\iffontchar\gmath@ft"##4 \gmath@do##2[##4]##3(##6)%
\else
- \IfValueTF{##5}{%
+ \gmuIfValueTF{##5}{%
\iffontchar\gmath@ft"##5 \gmath@do##2[##5]##3(##6)%
\else
\gmath@restore{##1}{##2}{##3}{##4}{##5}{##7}%
@@ -341,7 +340,7 @@
% family given as |##6|. If there're no respective chars, we try
% the same with the family given (as a~word) in |##7|.
\def\gmath@restore##1##2##3##4##5##6{%
- \IfValueT{##6}%
+ \gmuIfValueT{##6}%
{\ifcsname ##6\endcsname
\edef\gmu@tempa{%
\unexpanded{\gmath@doif{##1}{##2}{##3}[##4][##5]}%
@@ -366,7 +365,7 @@
% \end{enumargs*}
%
\gmath@getfamnum
- \IfValueTF{##2}{%
+ \gmuIfValueTF{##2}{%
\edef\gmu@tempa{%
= \gmath@famnum\space "##2\relax}%
\edef\gmu@tempa{%
@@ -411,9 +410,9 @@
\DeclareCommand\gmu@dogmathbase{oC{\NoValue}}{%
\Restore@Macro\mathchar@type%
%
- \IfValueT{##1}{\mathversion{##1}}%
+ \gmuIfValueT{##1}{\mathversion{##1}}%
%
- \edef\gmath@version{\PutIfValue{##1}}%
+ \edef\gmath@version{\gmuPutIfValue{##1}}%
%
\@xa\let\@xa\gmath@fam\csname symgmathroman%
\endcsname
@@ -686,7 +685,7 @@
\DeclareCommand\gmath{oC{\NoValue}}{%
\gmathbase[#1](#2)%
\gmathfurther
- \IfValueT{#1}{\csname gmathhook#1\endcsname}% this allows adding
+ \gmuIfValueT{#1}{\csname gmathhook#1\endcsname}% this allows adding
% version-specific stuff (I~first used this for Fell fonts rescued
% with Garamond Premier)
}
@@ -849,7 +848,7 @@
\begingroup
\edef\gmu@tempa{#2}%
\makeatletter%
- \IfValueT{#1}{%
+ \gmuIfValueT{#1}{%
\prependtomacro\fake@onum@ii{%
\begingroup\addfontfeature{FakeBold=#1}}%
\addtomacro\fake@onum@ii\endgroup
@@ -1063,8 +1062,6 @@
\newcommand*{\TODO}[1][]{{%
\sffamily\bfseries\huge TO-DO!\if\relax#1\relax\else\space\fi#1}}
-
-
\newcommand*\twocoltoc{%
\RequirePackage{multicol}%
\def\@starttoc##1{%
@@ -1157,7 +1154,8 @@
% it is ended with a~space. Adding one
% more space in this line resulted in
% an infinite loop, of course.
- \fi}
+ \fi
+}
\def\gmu@acroiter#1{%
\gmu@notif {x\@xa\@xa} {\@firstofmany#1\@undefined\@nil \gmu@acroiter}
@@ -1168,8 +1166,8 @@
{}%
}
-\def\gmu@acrokernel#1{%
- \gmu@if {cat} {a\@xanx\@firstofmany#1\@undefined\@nil}
+\def\gmu@acrokernel #1{%
+ \gmu@if {cat} {a\@xanx\@firstofmany#1\@undefined\@nil}%
{\gmu@if {num} {`#1=\uccode`#1\space }% a space to delimit numer
% (without it further macros were
% expanded which in this case are
@@ -1184,8 +1182,8 @@
}
-\def\IMHO{\acro{IMHO}}
-\def\AKA{\acro{AKA}}
+\def\IMHO{\acro{IMHO}\spifletter}
+\def\AKA{\acro{AKA}\spifletter}
\pdef\usc#1{{\addfontfeature{Letters=UppercaseSmallCaps}#1}}
@@ -1286,6 +1284,7 @@
}
+
\def\napapierkistretch{0,3pt}% It's quite much for 11/13pt leading.
\def\napapierkicore{\advance\baselineskip%
@@ -1293,15 +1292,16 @@
\DeclareEnvironment{napapierki}{s}{%
% \chgs{2009/01/05 v0.98 added optional star controlling globalness}
- \par\IfValueT{#1}{\global}%
+ \par\gmuIfValueT{#1}{\global}%
%
\napapierkicore}
{%
\par
- \IfValueT{#1}{\global\baselineskip=1\baselineskip\relax
+ \gmuIfValueT{#1}{\global\baselineskip=1\baselineskip\relax
}%
}% so that you can use \inverb|\napapierki*›…\endnapapierki*|
+
\newcount\gmu@luzniej
\newcommand*\luzniejcore[1][1]{%
@@ -1320,7 +1320,11 @@
\def\pauza@skipcore{\hskip0.2em plus0.1em\relax
\pauzacore
- \@ifnextchar,{% 2009/11/22 added a special case of a comma following pauza
+ \@ifnextanyIS {,;:}%
+ {% 2009/11/22 added a special case of a comma following pauza,
+ % 2011/02/22, 13.33 extended to colon and semicolon (well, the
+ % latter should not happen in such a position but a colon did (in
+ % Polish)).
}{\hskip.2em plus0.1em\relax\ignorespaces}}%
\def\ppauza@skipcore{\unskip\penalty10000\hskip0.2em plus0.1em\relax
\ppauza@dash\hskip.2em plus0.1em\ignorespaces}
@@ -1340,7 +1344,9 @@
% i~maszynowy} the dialogue dash (in Polish) should be followed by
% a~rigid hskip of \dekfracc1/2\,em.
\pdef\pauzadial{%
- \leavevmode\pauzacore\penalty10000\hskip0,5em\ignorespaces}
+ \ifhmode\unskip\quad\else\leavevmode\fi
+ \pauzacore\penalty10000\hskip0,5em\ignorespaces
+ }
%
% And a~version with no space at the left, to begin a~|\noindent|ed
% paragraph explaining e.g.\ a~quotation:
@@ -1371,10 +1377,21 @@
\ifhmode
\unskip\penalty10000
\afterfi{%
- \@ifnextspace{\pauza@skipcore}%
- {\@ifnextchar,{\pauza@skipcore}% a special case of comma added 2009/11/22
- {\@ifnextMac{\pauza@skipcore}%
- {\pauzacore\penalty\hyphenpenalty\hskip\z@skip}}}%
+ \@ifnextanyRS { ,;:}% was comma as a special case; 2011/02/22,
+ % 13.32 added colon and semicolon.
+ %
+ % The above needs some explanation, I suppose. We check if next token
+ % is blank space or some punctuations, for which purpose we
+ % use \inverb|\@ifnextanyRS|, where |RS| stands for
+ % “respecting space”. So if next is a space it turns true. Then
+ % \inverb|\pauza@skipcore|'s test does not respect space
+ % (gobbles it) and typesets punctuators with no skip while a
+ % blank replaces with a skip.
+ %
+ {\pauza@skipcore}%
+ {\@ifnextMac{\pauza@skipcore}%
+ {\pauzacore\penalty\hyphenpenalty\hskip\z@skip}%
+ }%
}% of |\afterfi|'s argument
\else
% \nostanza According to \tytul{Instrukcja technologiczna.\ Skład ręczny ^^B
@@ -1403,10 +1420,16 @@
\def\emdash{\char`\—}
}% of at begin document
-\def\longpauza{\def\pauzacore{—}}
+\def\longpauza{%
+ \def\pauzacore@long{—}%
+ \let\pauzacore\pauzacore@long
+}
\longpauza
+
\def\shortpauza{%
- \def\pauzacore{\hbox{–\kern,23em\relax\llap{–}}}}%
+ \def\pauzacore@short{\hbox{–\kern,23em\relax\llap{–}}}%
+ \let\pauzacore\pauzacore@short
+}%
\def\ppauza@dash{–}%
\else % not \XeTeX
@@ -1456,19 +1479,21 @@
##1 Q{0123456789\bgroup}>iT{/-} % year
##2 Q{0123456789\bgroup}>iT{/-} % month
##3 Q{0123456789\bgroup} % day
- ##4 T{,}
- ##5 K{##1\gmu@datefsl} % additional stuff after comma
+ >is % terminator of date scanning that will be gobbled
+ ##4 T{,}% another terminator of date, but this will be printed
+ ##5 K{##1\gmu@datefsl} % additional stuff after comma (or instead date)
}{%
- \IfValueF{##2}{\PutIfValue{##3}}%
- \IfValueT{##2}{%
+ \gmuIfValueF{##2}{\gmuPutIfValue{##3}}%
+ \gmuIfValueT{##2}{%
\@tempcnta=0##3\relax\the\@tempcnta
\ifcase##2\relax\or\ stycznia\or\ lutego%
\or\ marca\or\ kwietnia\or\ maja\or\ czerwca\or\ lipca\or\ sierpnia%
\or\ września\or\ października\or\ listopada\or\ grudnia\else
{}%
\fi}%
- \IfValueT{##1}{\space ##1}%
- \PutIfValue{##4}\IfValueT{##5}{ ##5}%
+ \gmuIfValueT{##1}{\space ##1}%
+ \gmuPutIfValue{##4}%
+ \gmu@ifempty{##5}{}{ ##5}%
}% of \incs{gmu@datefsl}.
}% of |\polskadata|
@@ -1479,10 +1504,11 @@
Q{0123456789\bgroup}>iT{/-} % (1) year
Q{0123456789\bgroup}>iT{/-} % (2) month
Q{0123456789\bgroup} % (3) day
+ >is
T{,} K{##1\gmu@datefsl} % (4, 5) additional stuff after comma
}{%
- \IfValueF{##2}{\PutIfValue{##3}}%
- \IfValueT{##2}{%
+ \gmuIfValueF{##2}{\gmuPutIfValue{##3}}%
+ \gmuIfValueT{##2}{%
\ifcase##2\relax\or January\or February%
\or March\or April\or May\or June\or July\or August%
\or September\or October\or November\or December\else
@@ -1490,33 +1516,52 @@
\fi}%
\space
\@tempcnta=##3\relax\the\@tempcnta,
- \IfValueT{##1}{ ##1}%
- \PutIfValue{##4}\IfValueT{##5}{ ##5}%
+ \gmuIfValueT{##1}{ ##1}%
+ \gmuPutIfValue{##4}%
+ \gmu@ifempty{##5}{}{ ##5}%
}% of \incs{gmu@datefsl}.
}%
\newif\ifdate
-\pdef\bidate#1{%
+\pdef\bidate #1{%
\gmu@datefsl#1\gmu@datefsl
}
-\pdef\linedate{\gmu@ifstar\linedate@@\linedate@}
-\pdef\linedate@@#1{\linedate@{--{}{}#1}}
-\pdef\linedate@#1{\par
- \linedate@hook{#1}%
- \ifdate\addvspace{\dateskipamount}%
- \possvfil% if we put it before |\addvspace|, the v-space is always added.
- \date@line{\DateFont \bidate{#1}}%
- \nopagebreak
- \else%|%\ifnum\arabic{dateinsection}>0\dekbigskip\fi|
- \addvspace{\bigskipamount}\possvfil
- \fi}% end of |\linedate|.
+\DeclareCommand\linedate{s{}m}
+{%
+ \par
+ \linedate@hook #1#2\@nil%
+ \addvspace{\dateskipamount}%
+ \possvfil% if we put it before |\addvspace|, the v-space is always
+ % added.
+ %
+ \ifdate
+ % ^^U \addvspace{\dateskipamount}%
+ \if@CofaćPrzedDatą@
+ \penalty\@M
+ \vskip-0,5\baselineskip
+ \else
+ \@CofaćPrzedDatą@true
+ \fi
+ %
+ \date@line{\DateFont \bidate{#1#2}}%
+ \nopagebreak
+ % ^^U \else%|%\ifnum\arabic{dateinsection}>0\dekbigskip\fi|
+ % ^^U \addvspace{\bigskipamount}\possvfil
+ \fi
+}% end of |\linedate|.
+
+\newif\if@CofaćPrzedDatą@
+\@CofaćPrzedDatą@true
+
+\pdef\NoPredate {\@CofaćPrzedDatą@false}
\newcommand*\DateFont{\footnotesize\itshape}
-\let\linedate@hook\@gobble
+\def\linedate@hook #1\@nil{}
-\let\dateskipamount\medskipamount
+\newskip\dateskipamount
+\dateskipamount\medskipamount
\pdef\rdate{\let\date@line\rightline \linedate}
@@ -1569,7 +1614,7 @@
Q{+-0123456789} % optional looseness (most probably negative)
}{%
\begingroup
- \IfValueT{#1}{\looseness=#1\IfValueTF{#2}{#2}{1}\relax
+ \gmuIfValueT{#1}{\looseness=#1\gmuIfValueTF{#2}{#2}{1}\relax
\multiply\tolerance by \tw@
}%
\fullparcore
@@ -1592,12 +1637,12 @@
A{\twopar@atleast}% (3)
>iT{\cipolagwa}}{%
\begingroup
- \IfValueT{##1}{%
- \looseness=##1\IfValueTF{##2}{##2}{1}\relax
+ \gmuIfValueT{##1}{%
+ \looseness=##1\gmuIfValueTF{##2}{##2}{1}\relax
\multiply\tolerance by2
}%
\twoparcore<##3>%
- \par
+ \endgraf
\endgroup
}% of \incmd\twopar.
% \stanza
@@ -1648,11 +1693,11 @@
% absent, parbox is aligned right;
% \dc text for the datum parbox.
% \end{enumargs}
- \IfValueTF{#1}{\leftline{%
+ \gmuIfValueTF{#1}{\leftline{%
\kern1\leftskip
\whernfont
\hskip#1\relax\parbox
- {\dimexpr\textwidth-\leftskip-\rightskip-#1}%
+ {\dimexpr\hsize-\leftskip-\rightskip-#1}%
{#2}% of |\parbox|,
}% of |\leftline|,
}% of |ValueT{#1}|.
@@ -1671,7 +1716,7 @@
% side to be ragged)
O{t} % vertical alignment of parbox
>is % separator
- O{0,7666\textwidth} % (3) width of parbox
+ O{0,7666\hsize} % (3) width of parbox
m % (4) parbox contents
}{%
% \begin{enumargs}
@@ -1679,7 +1724,7 @@
% \dc the |\parbox|'s contents.
% \end{enumargs}
\parbox[#2]{#3}{%
- \IfValueTF{#1}{#1}{\leftskip}=0sp plus \textwidth
+ \gmuIfValueTF{#1}{#1}{\leftskip}=0sp plus \textwidth
\parfillskip0sp\relax
\let\\\linebreak
\disobeylines
@@ -1691,28 +1736,56 @@
\def\whern{%
\endgraf\nopagebreak
\gmu@ifstar{\wherncore}%
- {\vskip\whernskip\wherncore}}
+ {\vskip\whernskip\wherncore}%
+}
\let\whernfont\footnotesize
\newskip\whernskip
\whernskip2\baselineskip minus 2\baselineskip\relax
-\DeclareCommand\whernup{%
- o % a~vskip before
- >is % separating star (ignored)
- o % (2) custom width of parbox
- >Pm}{\par
- \IfValueT{#1}{\vskip#1\relax}%
- \leftline{%
- \gmu@leftskipcorr
- \IfValueTF{#2}{\whern@parbox\rightskip[b][#2]}%
- {\whern@parbox\rightskip[b]}%
- {#3}%
- }%
- \setprevdepth
- \nopagebreak\relax
- \@ifenvir{quote}{\noindent\ignorespaces}{}}
+\foone{\obeylines}{%
+ \DeclareCommand\whernup{%
+#1 o % a~vskip before
+ >is % separating star (ignored)
+#2 o % custom width of parbox
+#3 >Pm%
+#4 o % a vskip between this box and subsqt. text
+ >iQ{ \par
+ }%
+ }% of args' spec
+}% of obey lines
+{\par
+ \gmuIfValueT{#1}{\vskip#1\relax}%
+ %
+ % The \env{prosato} env. of \pk{gmverse} \& derivs. set some
+ % positive parskip and counterkrank its first occurrence by a vskip
+ % of its negative. Therefore here we put ourselves in a |\rlap| and
+ % put at the very beginning of a paragraph.
+ \ifinner \noindent\nobreak\kern-1\leftskip \nobreak
+ \rlap{%
+ \vbox{%
+ \fi % of if inner
+ \leftline{%
+ % ^^A \gmu@leftskipcorr
+ \gmuIfValueTF{#2}{\whern@parbox\rightskip[b][#2]}%
+ {\whern@parbox\rightskip[b]}%
+ {#3}%
+ }%
+ %
+ \ifinner
+ \gmuIfValueT {#4}{\vskip\glueexpr #4\endexpr }%
+ \phantom{Ala ma Filifjonkgyr}%
+ }% of vbox
+ }% of rlap
+ %
+ \penalty\@M
+ \kern 1\leftskip
+ \@ifenvir{quote}{\hskip\z@skip}{\hskip\parindent\relax}%
+ \else
+ \gmuIfValueT {#4}{\vskip \glueexpr #4\endexpr }%
+ \fi
+}% of |\whernup|'s body.
\pdef\thousep#1{% a~macro that'll put the thousand separator between
@@ -1773,7 +1846,7 @@
% we declare it as a command with Q-type argument to allow spaces
% between digits.
\ifmmode\hbox\bgroup\@gmu@mmhboxtrue\fi
- \IfValueTF{##1}{% we are given a sequence of digits
+ \gmuIfValueTF{##1}{% we are given a sequence of digits
\@tempcnta=##1\relax
\ifnum\@tempcnta<0 $-$%
\@tempcnta=-\@tempcnta
@@ -1796,26 +1869,28 @@
% \stanza
% We make the footnote mark in the footnote |\scriptsize| not
% |\scriptscriptsize|.\nostanza
- \IfValueT{#1}% the following setting is suitable for old style
+ \gmuIfValueT{#1}% the following setting is suitable for old style
% numbers in footnote marks, therefore I~place it in the starred
% version of the command.
{\prependtomacro\gmu@ATfootnotes{%
\pdef\@makefnmark{%
\mbox {\normalfont \textsuperscript {\smaller[3]\@thefnmark }}}%
}% of prepend,
- }% of |\IfValueT|.
+ }% of |\gmuIfValueT|.
%
\gmu@ATfootnotes
\gmu@AT@ampulex\maketitle% without \pk{hyperref}
- \ifdefined\HyOrg@maketitle
- \afterfi{\gmu@AT@ampulex\HyOrg@maketitle}% with \pk{hyperref}
+ \unless\if@HyOrg@maketitle@ampulexed@
+ \ifdefined\HyOrg@maketitle
+ \afterfi{\gmu@AT@ampulex\HyOrg@maketitle}% with \pk{hyperref}
+ \fi
+ \@HyOrg@maketitle@ampulexed@true
\fi
}
-\pdef\gmu@AT@ampulex#1{%
- \typeout{@@@@@^^J^^J\@nx#1^^J^^J%
- @@@@ meaning:^^J\meaning#1%
- }%
+\newif\if@HyOrg@maketitle@ampulexed@
+
+\pdef\gmu@AT@ampulex #1{%
\ampulexdef#1{\def\@makefnmark}%
\if@twocolumn
{\gmu@ATfootnotes\if@twocolumn}% Ampulex redefinition of
@@ -1860,7 +1935,7 @@
\def\TrzaskaTilde{%
\@xa\DeclareCommand\@xa\gmu@smarttilde
\@xa{\@xa T\@xa{\all@stars~}}{%
- \IfValueTF{##1}{\nobreakspace{}}%
+ \gmuIfValueTF{##1}{\nobreakspace{}}%
{\ifdim\dimexpr\hsize-\leftskip-\rightskip
-\ifdim\hangindent<\z@-\fi\hangindent % the last
% parameter is used with respect to the \pk{floatflt} package.
@@ -1933,10 +2008,10 @@
\catcode`ѥ\active
\DeclareCommand\ac {b} {%
- \IfValueTF{#1}
+ \gmuIfValueTF{#1}%
{%
\acro{#1}%
- }
+ }%
{\ac@u}%
}
@@ -1976,11 +2051,13 @@
\addtomacro\@dc@acpunctanddelimsp{~}
\DeclareCommand\ac@u{
- >\@xa U{\@dc@acpunctanddelimsp ()[]<>ѥ} \default{}
+ >\@xa U {\@dc@acpunctanddelimsp ()[]<>ѥ} \default{}
\eacher {\ac@kernel}
>iW{ѥ}
}
-{\text{#1}}
+{%
+ \ifmmode\@xa\text\else\@xa\firstofone\fi{#1}%
+}
\fi % of if \XeTeX\ of l.~\ref{12322}.