diff options
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r-- | Master/texmf-dist/source/latex/ncctools/extdash.dtx | 155 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/ncctools/nccmath.dtx | 24 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/ncctools/nccsect.dtx | 38 |
3 files changed, 161 insertions, 56 deletions
diff --git a/Master/texmf-dist/source/latex/ncctools/extdash.dtx b/Master/texmf-dist/source/latex/ncctools/extdash.dtx index 52e192a811d..597ef17cd74 100644 --- a/Master/texmf-dist/source/latex/ncctools/extdash.dtx +++ b/Master/texmf-dist/source/latex/ncctools/extdash.dtx @@ -1,14 +1,15 @@ % \iffalse %% -%% File: extdash.dtx Copyright (C) 1998-2005 by Alexander I. Rozhenko +%% File: extdash.dtx Copyright (C) 1998-2018 by Alexander I. Rozhenko %% %<package>\NeedsTeXFormat{LaTeX2e} %<package>\ProvidesPackage{extdash} -%<package> [2005/01/29 v1.2 Extended Dash Package (NCC)] +%<package> [2018/06/24 v1.3 Extended Dash Package (NCC)] % % \changes{v1.0}{1998/12/20}{Initial version} % \changes{v1.1}{2004/11/23}{Minor corrections of the documentation} % \changes{v1.2}{2005/01/29}{Change spaces surround em-dash} +% \changes{v1.3){2018/06/24}{Add more em-dash configuring options by request from Frank Mittelbach} % %<*driver> \let\makeindex\relax @@ -38,7 +39,7 @@ % \DescribeMacro{\Hyphdash} % \DescribeMacro{\Hyphdash*} % The main purpose of the |extdash| package is to allow hyphenation -% of compound words. When the word |something-something| occur the only +% of compound words. When the word |something-something| occurs, the only % hyphenation point after the dash is available. To allow hyphenation % of both words joint by dash you can write % \begin{center} @@ -46,19 +47,19 @@ % |something\-/something| % \end{center} % (the last case is available if\/ you use the package |extdash| -% with |shortcuts| option). Some times the line break immediately after -% the dash is inadmissible. To avoid it you can write +% with |shortcuts| option). Sometimes the line break immediately after +% the dash is inadmissible. To avoid this, you can write % \begin{center} % |something\Hyphdash* something|\quad or easier\quad % |something\=/something| % \end{center} -% (the last case is also shortcut). An example is the word -% \emph{$L$-approximation} which can't be broken at the dash. +% (the last case is also a shortcut). An example is the word +% \emph{$L$-approximation} which can't be broken at the dash.\pagebreak % % \DescribeMacro{\Endash} % \DescribeMacro{\Endash*} -% Analogously, you can use |\Endash| command (may be with star) to join -% words by \emph{en-dash}. Shortcuts for it are |\--| and |\==|. +% Analogously, you can use |\Endash| command (and its star version) to join +% words with \emph{en-dash}. Shortcuts for it are |\--| and |\==|. % % \DescribeMacro{\Emdash} % \DescribeMacro{\Emdash*} @@ -69,8 +70,8 @@ % \DescribeMacro{\Halfspace*} % half of the ordinary interword space. The |\Halfspace| command % produces the \emph{elastic} horizontal space and its |*|-form -% produces the unbreakable elastic space. All these commands have -% shortcuts, named +% produces the nonbreakable elastic space. All these commands have +% shortcuts % \begin{center} % |\---|\qquad |\===|\qquad |\-,|\qquad |\=,| % \end{center} @@ -78,29 +79,30 @@ % When |\Emdash| appears at the beginning of a paragraph (the direct % speech) the space after it will be rigid and unbreakable. % -% The standard em-dash is longer that it is required by Russian -% typesetting rules. To decrease its length to required one you have -% to use |extdash| package with |cyremdash| option. +% The standard em-dash is longer that it is required by Russian and German +% typesetting rules. To decrease its length to the required one, you can +% use this package with |shortemdash| option +% (the |cyremdash| option is also supported for compatibility with the previous +% version). % -% \section{The Package Options} +% Note: Some more options are available from the version 1.3. They control +% the spacing around |\Emdash| and the breaking strategy to be applied +% before it. +% +% \section{Package Options} +% +% \subsection{Shortcuts} % -% The |extdash| package provides two options, |shortcuts| and -% |cyremdash|: % \begin{center} -% |\usepackage[shortcuts,cyremdash]{extdash}| +% |\usepackage[shortcuts]{extdash}| % \end{center} % -% First option redefines \LaTeX{} commands |\-| and |\=| in +% The |shortcuts| option redefines \LaTeX{} commands |\-| and |\=| in % such a way to recognize shortcut sequences. If\/ no shortcut -% recognized the corresponding original command will be called. -% In other words, when no shortcut recognized the command |\-| +% recognized, the corresponding original command will be called. +% In other words, when no shortcut recognized, the command |\-| % sets extra hyphenation point and |\=| means the accent command. % -% The last option redefines |\Emdash| to be shorter than the standard -% em-dash. -% -% \section{The Shortcuts Table} -% % \begin{center} % \begin{tabular}{l@{\qquad}l@{\qquad\qquad}l@{\qquad}l} % Command & Shortcut & Command & Shortcut \\ @@ -113,9 +115,47 @@ % % \emph{All described commands and shortcuts are robust.} % +% \subsection{Breaks before em-dash} +% +% All dash commands defined in this package disallow line breaks before a dash. +% For em-dash this rule can be changed. To allow breaks before a em-dash, please +% use the option +% +% \begin{center} +% |\usepackage[allowbreakbefore]{extdash}| +% \end{center} +% +% \subsection{Shorter em-dash} +% +% \begin{center} +% |\usepackage[shortemdash]{extdash}| +% \end{center} +% +% This option redefines |\Emdash| to be shorter than the standard +% em-dash (0.8~em). +% +% \subsection{Spaces around em-dash} +% +% By default, the half-space is inserted before and after em-dash. +% This behavior can be changed with option +% +% \begin{center} +% |\usepackage[wordspacearound]{extdash}| +% \end{center} +% +% \noindent or +% +% \begin{center} +% |\usepackage[nospacearound]{extdash}| +% \end{center} +% +% The first option provides interword spaces around em-dash and the +% last one removes spaces around em-dash. Of course, these two +% options are mutually exclusive. +% % \StopEventually{} % -% \section{The Basic Implementation Part} +% \section{The Implementation} % % \begin{macro}{\EXD@test} % \begin{macro}{\EXD@break} @@ -142,7 +182,7 @@ \DeclareRobustCommand{\Endash}{\EXD@test{\EXD@dash{--}}} \DeclareRobustCommand{\Emdash}{\EXD@test{\EXD@emd@sh}} \DeclareRobustCommand{\Halfspace}{\@tempcnta\z@ - \@ifstar{\nobreak\EXD@space\ignorespaces}{\EXD@space\ignorespaces}% + \@ifstar{\EXD@nobreak\EXD@space\ignorespaces}{\EXD@space\ignorespaces}% } % \end{macrocode} % \end{macro} @@ -151,20 +191,28 @@ % \end{macro} % \begin{macro}{\EXD@dash} % \begin{macro}{\EXD@emd@sh} +% \begin{macro}{\EXD@nobreak} +% \begin{macro}{\EXD@embreakbefore} +% \begin{macro}{\EXD@spacecalc} % \begin{macro}{\EXD@space} % and then the basic commands % \begin{macrocode} +\def\EXD@nobreak{\ifvmode\leavevmode\else\nobreak\fi} \def\EXD@dash#1{% - \nobreak\leavevmode\hbox{#1}\EXD@break\hskip\z@skip \ignorespaces + \EXD@nobreak\hbox{#1}\EXD@break\hskip\z@skip \ignorespaces } +\def\EXD@emnobreak{\nobreak} \def\EXD@emd@sh{% \ifvmode - \EXD@emdash\nobreak\hskip.35em + \leavevmode\EXD@emdash\nobreak\hskip.35em \else - \unskip\nobreak\@tempcnta\m@ne + \unskip\EXD@emnobreak \@tempcnta\m@ne \EXD@space \EXD@emdash \EXD@break \EXD@space \fi \ignorespaces } +\DeclareOption{allowbreakbefore}{% + \let\EXD@emnobreak\@empty +} % \end{macrocode} % The |\@tempcnta| specifies the width of half-space. It can have % the following values: |-1|, |0|, or |+1|. The negative value @@ -173,39 +221,59 @@ % means a half-space after em-dash (the space is wider at this point). % This trick compensates a visual effect of wider space before an em-dash % especially if the punctuation mark goes before. +% +% The meaning of negative and positive values of |\@tempcnta| +% is redefined with |wordspacearound| and |nospacearound| options. % \begin{macrocode} -\def\EXD@space{% +\def\EXD@spacecalc{% \edef\@tempa{% \ifnum\@tempcnta<\z@ .4\else \ifnum \@tempcnta=\z@ .5\else .6\fi\fi }% - \hskip \@tempa\fontdimen2\font \@plus .5\fontdimen3\font + \def\@tempb{.5}% +} +\def\EXD@space{% + \EXD@spacecalc + \hskip \@tempa\fontdimen2\font \@plus \@tempb\fontdimen3\font \@minus \@tempa\fontdimen4\font \@tempcnta -\@tempcnta } +\DeclareOption{wordspacearound}{% + \def\EXD@spacecalc{% + \edef\@tempa{\ifnum \@tempcnta=\z@ .5\fi}% + \let\@tempb\@tempa + } +} +\DeclareOption{nospacearound}{% + \def\EXD@spacecalc{% + \edef\@tempa{\ifnum \@tempcnta=\z@ .5\else0\fi}% + \let\@tempb\@tempa + } +} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} % % \begin{macro}{\EXD@emdash} % The last basic command is the default \emph{em-dash}. It could be -% redefined later in |cyremdash| option. +% redefined later in |shortemdash| option. % \begin{macrocode} -\def\EXD@emdash{\leavevmode\hbox{---}} +\def\EXD@emdash{\hbox{---}} % \end{macrocode} % \end{macro} % -% \section{Shortcuts} -% % \begin{macrocode} \DeclareOption{shortcuts}{% % \end{macrocode} % % \begin{macro}{\HyphOrDash} % \begin{macro}{\BarOrDash} -% The commands |\HyphOrDash| and |\BarOrDash| will be called by |\-| and -% |\=| commands. They choose the corresponding shortcut or the original -% commands saved in |\EXD@hyph| and |\EXD@dash|. +% The commands |\HyphOrDash| and |\BarOrDash| are called by |\-| and |\=| commands +% and can appear in aux file. They choose the corresponding shortcut or the original +% command saved in |\EXD@hyph| and |\EXD@bar|. % \begin{macrocode} \DeclareRobustCommand{\HyphOrDash}{% \let\EXD@break\@empty @@ -247,11 +315,12 @@ } % \end{macrocode} % -% \section{Cyrillic Em-dash} -% % \begin{macrocode} +\DeclareOption{shortemdash}{% + \def\EXD@emdash{\hb@xt@.8\fontdimen6\font{--\hss--}} +} \DeclareOption{cyremdash}{% - \def\EXD@emdash{\leavevmode\hb@xt@.8\fontdimen6\font{--\hss--}} + \def\EXD@emdash{\hb@xt@.8\fontdimen6\font{--\hss--}} } \ProcessOptions\relax %</package> diff --git a/Master/texmf-dist/source/latex/ncctools/nccmath.dtx b/Master/texmf-dist/source/latex/ncctools/nccmath.dtx index 5007e8e92b4..23030e7b647 100644 --- a/Master/texmf-dist/source/latex/ncctools/nccmath.dtx +++ b/Master/texmf-dist/source/latex/ncctools/nccmath.dtx @@ -1,10 +1,10 @@ % \iffalse %% -%% File: nccmath.dtx Copyright (C) 2002--2005 by Alexander I. Rozhenko +%% File: nccmath.dtx Copyright (C) 2002--2006 by Alexander I. Rozhenko %% %<package>\NeedsTeXFormat{LaTeX2e}[1995/12/01] %<package>\ProvidesPackage{nccmath} -%<package> [2005/02/21 v1.2 Additional Math Commands (NCC)] +%<package> [2006/01/20 v1.3 Additional Math Commands (NCC)] % % \changes{v1.01}{2002/01/20}{This version is uploaded to CTAN} % \changes{v1.02}{2002/02/19}{|\Eq|, |\Eqs|, and |\Eqalign| are removed} @@ -16,6 +16,7 @@ % \changes{v1.2}{2005/02/15}{Introduce |mediummath|} % \changes{v1.2}{2005/02/16}{Remove redefinition of equations tag} % \changes{v1.2}{2005/02/21}{Avoid conflicts with the |array| package} +% \changes{v1.3}{2006/01/20}{Introduce |\dmulticolumn| to use within |darray|} % %<*driver> \let\makeindex\relax @@ -121,6 +122,10 @@ % The |darray| environment is implemented independently on the % |array| environment to avoid conflicts with the |array| package. % +% \DescribeMacro{\dmulticolumn} +% |\dmulticolumn|\marg{count}\marg{preamble}\marg{formula} +% is used in |darray| instead of |\multicolumn|. +% % \DescribeMacro{\useshortskip} % In \TeX, two types of skips above display formulas are used: the % normal skip defined in the |\abovedisplayskip| register and the @@ -878,6 +883,21 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\dmulticolumn} +% To produce multi-columns in |darray|, the |\dmulticolumn| +% command is used. +% \begin{macrocode} +\newcommand\dmulticolumn[3]{\multispan{#1}% + \begingroup + \NCC@mkpream{#2}% + \def\@sharp{#3}\set@typeset@protect + \@preamble + \endgroup + \ignorespaces +} +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\NCC@mkpream} % The |darray| environment % is independent from |array| to avoid conflicts with diff --git a/Master/texmf-dist/source/latex/ncctools/nccsect.dtx b/Master/texmf-dist/source/latex/ncctools/nccsect.dtx index 0729288c8ea..f1521679e76 100644 --- a/Master/texmf-dist/source/latex/ncctools/nccsect.dtx +++ b/Master/texmf-dist/source/latex/ncctools/nccsect.dtx @@ -4,7 +4,7 @@ %% %<package>\NeedsTeXFormat{LaTeX2e} %<package>\ProvidesPackage{nccsect} -%<package> [2006/01/19 v1.5 Extended Section, Caption, and TOC Handling (NCC)] +%<package> [2006/01/20 v1.6 Extended Section, Caption, and TOC Handling (NCC)] % % \changes{v1.00}{2002/02/01}{This version is uploaded to CTAN} % \changes{v1.01}{2002/02/08}{\NCC@thetocchapter hook added} @@ -54,6 +54,7 @@ % \changes{v1.5}{2006/01/19}{Introduce |centerlast| section style} % \changes{v1.5}{2006/01/19}{Introduce |\sectiontagsuffix| command} % \changes{v1.5}{2006/01/19}{Introduce |\captiontagsuffix| command} +% \changes{v1.6}{2006/01/20}{Improve |\NCC@secflush| to work in |rightlast| style} % %<*driver> \let\makeindex\relax @@ -236,7 +237,6 @@ % If the \meta{type} parameter is omitted, the command acts on % all subsequent sections expect those having a specialized tag suffix. % -% \bigskip % \DescribeMacro\indentaftersection % \DescribeMacro\noindentaftersection % The paragraph indentation after a display section is controlled with @@ -277,11 +277,11 @@ % Otherwise, this command is ignored. % % \bigskip -% \textbf{Modifiers.} The customization of a number tag and running head of a concrete +% \textbf{Modifiers.} The customization of a number tag and running head of a particular % section is provided with so-call \textit{modifiers}. A modifier % is a command acting on the nearest sectioning command going after it. % Usually, the modifiers are placed just before a sectioning command. -% All modifiers act with non-starred versions of sections. +% All modifiers act on non-starred versions of sections. % If the next sectioning command is starred, modifiers are ignored. % % \DescribeMacro\norunninghead @@ -443,6 +443,11 @@ % |\newplainsectionstyle{center}{0pt}[c]{0pt plus 1fil}{0pt plus 1fil}|\\ % |\newplainsectionstyle{centerlast}{0pt}[c]{0pt plus 1fil}{0pt plus -1fil}| % \end{quote} +% Analogously to the |centerlast| style, the |rightlast| style (last line is adjusted +% to the right) can be easy created: +% \begin{quote} +% |\newplainsectionstyle{rightlast}{0pt}[r]{0pt plus 1fil}{0pt plus -1fil}| +% \end{quote} % % \DescribeMacro\newhangsectionstyle % The command @@ -2410,18 +2415,29 @@ % \begin{macro}{\NCC@secflush} % |\NCC@secflush|\marg{tag} applies a section style saved in the % |\NCC@secsave| macro and adjusts |\rightskip| and |\parfillskip| -% if left and right margins have no stretchability in sum. -% To adjust the right skip, we do the same tricks as in -% |\NCC@adjsecmargins|. +% if the left and right margins have no stretchability in sum. % \begin{macrocode} \def\NCC@secflush#1{\NCC@secsave{#1}% \@tempskipa\leftskip \advance\@tempskipa\rightskip \advance\@tempskipa -1\@tempskipa +% \end{macrocode} +% There are three general cases in which the +% correction of right margin is required: +% \begin{center}\small\catcode`|=12 +% \begin{tabular}{|l|c|c|c|}\hline +% \tc{\cbox{Case}} & \cbox{\tt\string\leftskip} & \cbox{\tt\string\rightskip} +% & \cbox{\tt\string\parfillskip} \\\hline +% \Strut/.7/ +% Left last &\tt x &\tt y &\tt 0pt plus 1fil \\ +% Center last &\tt x plus 1fil &\tt y plus -1fil &\tt 0pt plus 2fil \\ +% Right last &\tt x plus 1fil &\tt y plus -1fil &\tt 0pt plus 1fil \\\hline +% \end{tabular} +% \end{center} +% In all these cases the correction is simple: we need to add |\parfillskip| +% to the |\rightskip| and set |\parfillskip| to zero. +% \begin{macrocode} \NCC@ifzeroskip\@tempskipa{% - \@tempskipa 1\rightskip \advance\@tempskipa -\rightskip - \advance\@tempskipa \@flushglue - \advance\rightskip \@tempskipa - \advance\parfillskip -\@tempskipa + \advance\rightskip \parfillskip \parfillskip \z@skip }{}% \ignorespaces } |