diff options
author | Karl Berry <karl@freefriends.org> | 2013-04-02 17:43:35 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-04-02 17:43:35 +0000 |
commit | d0c4c7de54e626aa07a8c6872bf3176cb6b4a903 (patch) | |
tree | df43b449cd9ebb4702e5f989586575e02523af86 /Master | |
parent | f45c1a125eecf8d0de5f66722a814bd3ab10c20c (diff) |
skmath (20mar13)
git-svn-id: svn://tug.org/texlive/trunk@29607 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/skmath/skmath.pdf | bin | 0 -> 219146 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/skmath/skmath.tex | 485 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/skmath/skmath.sty | 123 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 2 | ||||
-rwxr-xr-x | Master/tlpkg/libexec/ctan2tds | 4 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-mathextra.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/skmath.tlpsrc | 0 |
7 files changed, 614 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/skmath/skmath.pdf b/Master/texmf-dist/doc/latex/skmath/skmath.pdf Binary files differnew file mode 100644 index 00000000000..1ff3ab254b7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/skmath/skmath.pdf diff --git a/Master/texmf-dist/doc/latex/skmath/skmath.tex b/Master/texmf-dist/doc/latex/skmath/skmath.tex new file mode 100644 index 00000000000..46cc2d20d81 --- /dev/null +++ b/Master/texmf-dist/doc/latex/skmath/skmath.tex @@ -0,0 +1,485 @@ +%% skmath improved math commands +%% +%% Copyright (C) 2012 by Simon Sigurdhsson <sigurdhsson@gmail.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 Simon Sigurdhsson. +%% +%% This work consists of the file skmath.tex +%% and the derived file skmath.sty. +\PassOptionsToPackage{intlimits}{amsmath} +\documentclass[commonsets,load]{skdoc} +\usepackage[intlimits]{amsmath} +\usepackage{csquotes} +\ProvideDocumentCommand\d{m}{#1} +\ProvideDocumentCommand\abs{m}{#1} +\ProvideDocumentCommand\norm{m}{#1} +\ProvideDocumentCommand\abs{m}{#1} +\ProvideDocumentCommand\P{m}{#1} +\ProvideDocumentCommand\given{}{} +\ProvideDocumentCommand\E{m}{#1} +\ProvideDocumentCommand\var{m}{#1} +\ProvideDocumentCommand\cov{mm}{#1#2} +\ProvideDocumentCommand\N{}{} +\ProvideDocumentCommand\Z{}{} +\ProvideDocumentCommand\Q{}{} +\ProvideDocumentCommand\R{}{} +\ProvideDocumentCommand\C{}{} +\ProvideDocumentCommand\sfrac{mm}{#1#2} + +% Declare the target files +\SelfPreambleTo{\mypreamble} +\DeclareFile[key=package,preamble=\mypreamble]{skmath.sty} + +% This is where the documentation begins +\begin{document} + % Change & version info + \version{0.1g} + \changes{0.1}{Initial version} + \changes{0.1c}{Moved package from \pkg{docstrip} to \pkg{skdoc}} + \changes{0.1d}{Fixed fatal documentation and package errors} + \changes{0.1e}{Added statistics commands} + \changes{0.1g}{Documentation fixes} + + % Metadata + \package[ctan=skbundle,vcs=https://github.com/urdh/skmath]{skmath} + \author{Simon Sigurdhsson} + \email{sigurdhsson@gmail.com} + + % First page + \maketitle + \begin{abstract} + The \thepackage\ package provides improved and new math commands + for superior typesetting with less effort. + \end{abstract} + + \section{Introduction} + This package intends to provide helpful (re-)definitions of commands + related to typesetting mathematics, and specifically typesetting + them in a more intuitive, less verbose and more beautiful way. + It was originally not intended for use by the public, and as such + there may be incompatibilities with other packages of which I am + not aware, but I figured it could be useful to other people as well. + + \section{Usage} + \subsection{Options} + As of version \theversion, there is only one option: \opt{commonsets}. + By default, it is disabled but if the option is given the package will + define \cs{N}, \cs{Z}, \cs{Q}, \cs{R} and \cs{C} as blackboard + variants of the respective letters, to represent the common sets + of numbers. + + \subsection{New commands} + The package defines a number of new commands that aid in typesetting + certain mathematical formulae. + + \DescribeMacro\N + \DescribeMacro\Z + \DescribeMacro\Q + \DescribeMacro\R + \DescribeMacro\C + These commands are only available if the \opt{commonsets} + option is given. They typeset the set of natural, integer, rational, + real and complex numbers respectively. + \begin{example} + \begin{equation*} + \N, \Z, \Q, \R, \C. + \end{equation*} + \end{example} + + \DescribeMacro\norm{<expression>} + \DescribeMacro\abs{<expression>} + The commands \Macro\norm and \Macro\abs, quite expectedly, typeset + the norm ans absolute value of an expression, respectively. They + have one mandatory argument (the expression), and different norms + can be achieved by appending a subscript after the argument of + \Macro\norm. + \begin{example} + \begin{equation*} + \norm{\vec{x}}_p = \left(\sum_{i=1}^n \abs{x_i}^p\right)^{\sfrac{1}{p}} + \end{equation*} + \end{example} + + \DescribeMacro\d{<variable>} + There is also a command \Macro\d, with one mandatory argument, that + typesets the differential part of an integral. + \begin{example} + \begin{equation*} + \int_{\R}\! \frac{\sin{x}}{x} \d{x} + \end{equation*} + \end{example} + + \DescribeMacro\E{<expression>} + The command \Macro\E typesets the expectation of a random variable. + \begin{example} + \begin{equation*} + \E{\hat{\mu}} = \mu + \end{equation*} + \end{example} + + \DescribeMacro\P{<expression>\AlsoMacro\given <expression>} + The \Macro\P command typesets a probability. The \Macro\given command + can be used to typeset conditional probabilities, within \Macro\P. + \begin{example} + \begin{equation*} + \P{A\given B} = \frac{\P{B\given A}\P{A}}{\P{B}} + \end{equation*} + \end{example} + + \DescribeMacro\var{<expression>} + \DescribeMacro\cov{<expression>}{<expression>} + The commands \Macro\var and \Macro\cov typeset the variance and + covariance of an expression. + \begin{example} + \begin{gather*} + \var{X} = \E{(X-\mu)^2}\\ + \cov{X}{Y} = \E{XY}-\E{X}\E{Y} + \end{gather*} + \end{example} + + \subsection{Improved commands} + In addition to adding new commands, this package also redefines + already existing commands in a mostly backwards-compatible way + to improve their usefulness. + + \DescribeMacro\sin[<power>]{<expression>} + \DescribeMacro\arcsin{<expression>} + \DescribeMacro\cos[<power>]{<expression>} + \DescribeMacro\arccos{<expression>} + \DescribeMacro\tan[<power>]{<expression>} + \DescribeMacro\arctan{<expression>} + \DescribeMacro\cot[<power>]{<expression>} + The trigonometric functions have been redefined + to typeset more easily. They typeset \meta{expression} as an + argument of the expression, and (if applicable) \meta{power} as + a superscript between the function and its argument, + \emph{e.g.} \(\sin[2]{\phi}\). + + \DescribeMacro\ln{<expression>} + The natural logarithm macro \Macro\ln has also been redefined to + require an argument which is typeset as the argument of the logarithm. + \DescribeMacro\log[<base>]{<expression>} + The related macro \Macro\log is redefined in a similar way, but also + accepts an optional argument denoting the base of the logarithm: + \(\log[2]{x}\). + + \DescribeMacro\exp{<expression>} + The exponential, \Macro\exp, is redefined to typeset its argument as a + superscript of \(e\) in some display styles, and as an argument of + \(\mathrm{exp}\) otherwise: + \begin{equation*} + \exp{\sqrt{2}\exp{x}} + \end{equation*} + + \subsection{Stylistic changes} + Some commands have been redefined in a completely backwards-compatible + way to improve the end result of their typesetting. + + \DescribeMacro\frac{<numerator>}{<denominator>} + The \Macro\frac command has been changed to improve typesetting, + allowing displaystyle math in some settings. + + \DescribeMacro\bar{<expression>} + \DescribeMacro\vec{<expression>} + The \Macro\bar command has been changed to cover the entire + \meta{expression} (\emph{i.e.} \(\bar{uv}\)), and \Macro\vec has + been changed to match the \cs{vectorsym} command provided by + \pkg{isomath}. + + \section{Known issues} + A list of current issues is available in the Github repository of this + package\footnote{\url{https://github.com/urdh/skmath/issues}}, but as + of the release of \theversion, there is only one known issue: + \begin{description} + \item[\#4] When using both \pkg{fontspec} and \thepackage, sometimes + \LaTeX\ bails out saying that \enquote{\cs{bar} is already + defined}. This is probably due to fonts defining their own + \cs{bar}, and will happen with other font packages as well, + but I haven't figured out a suitable solution yet. + \end{description} + If you discover any bugs in this package, please report them to the issue + tracker in the \thepackage\ Github repository. + + \section{Implementation} + The package implementation is very simple. First, we do the standard + \LaTeXe\ preamble thing, then we require some dependencies. + \changes{0.1b}{Load \textsf{amsmath} with \texttt{intlimits} option} +\begin{MacroCode}{package} +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesPackage{skmath}% + [2013/02/18 v0.1e skmath improved math commands] +\RequirePackage{xparse} +\PassOptionsToPackage{intlimits}{amsmath} +\RequirePackage{kvoptions,amssymb,mathtools,xfrac,isomath} +\end{MacroCode} + + We begin by declaring an option. +\begin{MacroCode}{package} +\SetupKeyvalOptions{family=skmath,prefix=skmath@} +\DeclareBoolOption[false]{commonsets} +\ProcessKeyvalOptions* +\end{MacroCode} + + We optionally provide commands to typeset common sets. +\begin{MacroCode}{package} +\ifskmath@commonsets +\end{MacroCode} + \begin{macro}{\N} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} + \NewDocumentCommand\N{}{\ensuremath{\mathbb{N}}} +\end{MacroCode} + \end{macro} + \begin{macro}{\Z} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} + \NewDocumentCommand\Z{}{\ensuremath{\mathbb{Z}}} +\end{MacroCode} + \end{macro} + \begin{macro}{\Q} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} + \NewDocumentCommand\Q{}{\ensuremath{\mathbb{Q}}} +\end{MacroCode} + \end{macro} + \begin{macro}{\R} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} + \NewDocumentCommand\R{}{\ensuremath{\mathbb{R}}} +\end{MacroCode} + \end{macro} + \begin{macro}{\C} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} + \NewDocumentCommand\C{}{\ensuremath{\mathbb{C}}} +\end{MacroCode} + \end{macro} +\begin{MacroCode}{package} +\fi +\end{MacroCode} + + This is followed by commands to typeset the norm and absolute value. + \begin{macro}{\abs} +\begin{MacroCode}{package} +\DeclarePairedDelimiter\abs{\lvert}{\rvert} +\end{MacroCode} + \end{macro} + \begin{macro}{\norm} +\begin{MacroCode}{package} +\DeclarePairedDelimiter\norm{\lVert}{\rVert} +\end{MacroCode} + \end{macro} + + Next come the statistical commands. + \begin{macro}{\E} + \changes{0.1e}{Added \cs{E} command} + \changes{0.1f}{Fixed \enquote{Command \cs{E} already defined!} error} + Here, we define \cs{E} after the preamble since it may break otherwise. +\begin{MacroCode}{package} +\AtBeginDocument{ + \DeclareDocumentCommand\E{m}{% + \ensuremath{\mathop{\mathrm{E}}\left[#1\right]}% + } +} +\end{MacroCode} + \end{macro} + The \Macro\P command saves any old \Macro\given command, replacing + it locally with the new \Macro\given command provided by the package. + \begin{macro}{\P} + \changes{0.1e}{Added \cs{P} command} +\begin{MacroCode}{package} +\DeclareDocumentCommand\P{m}{% + \ensuremath{\mathop{\mathrm{P}}% + \left(% + \let\skmath@given\given% +\end{MacroCode} + \begin{macro}{\given} + \changes{0.1e}{Added \cs{given} command} +\begin{MacroCode}{package} + \DeclareDocumentCommand\given{}{\mid}% +\end{MacroCode} + \end{macro} +\begin{MacroCode}{package} + #1% + \let\given\skmath@given% + \right)% + }% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\var} + \changes{0.1e}{Added \cs{var} command} +\begin{MacroCode}{package} + \DeclareDocumentCommand\var{m}{% + \ensuremath{\mathop{\mathrm{Var}}\left(#1\right)}% + } +\end{MacroCode} + \end{macro} + \begin{macro}{\cov} + \changes{0.1e}{Added \cs{cov} command} +\begin{MacroCode}{package} + \DeclareDocumentCommand\cov{mm}{% + \ensuremath{\mathop{\mathrm{Cov}}\left(#1,#2\right)}% + } +\end{MacroCode} + \end{macro} + + We replace all trigonometric functions and some other + common functions with alternatives that take an argument + (or optionally, several arguments). +\begin{MacroCode}{package} +\let\skmath@sin\sin +\let\skmath@cos\cos +\let\skmath@tan\tan +\let\skmath@cot\cot +\let\skmath@arcsin\arcsin +\let\skmath@arccos\arccos +\let\skmath@arccos\arctan +\let\skmath@ln\log +\let\skmath@log\log +\let\skmath@exp\exp +\end{MacroCode} + \begin{macro}{\sin} +\begin{MacroCode}{package} +\RenewDocumentCommand\sin{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@sin\left(#2\right)}} + {\ensuremath{\skmath@sin^{#1}\left(#2\right)}}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\cos} +\begin{MacroCode}{package} +\RenewDocumentCommand\cos{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@cos\left(#2\right)}} + {\ensuremath{\skmath@cos^{#1}\left(#2\right)}}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\tan} +\begin{MacroCode}{package} +\RenewDocumentCommand\tan{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@tan\left(#2\right)}} + {\ensuremath{\skmath@tan^{#1}\left(#2\right)}}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\cot} +\begin{MacroCode}{package} +\RenewDocumentCommand\cot{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@cot\left(#2\right)}} + {\ensuremath{\skmath@cot^{#1}\left(#2\right)}}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\arcsin} +\begin{MacroCode}{package} +\RenewDocumentCommand\arcsin{m}{% + \ensuremath{\skmath@arcsin\left(#1\right)}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\arccos} +\begin{MacroCode}{package} +\RenewDocumentCommand\arccos{m}{% + \ensuremath{\skmath@arccos\left(#1\right)}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\arctan} +\begin{MacroCode}{package} +\RenewDocumentCommand\arctan{m}{% + \ensuremath{\skmath@arctan\left(#1\right)}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\ln} +\begin{MacroCode}{package} +\RenewDocumentCommand\ln{m}{% + \ensuremath{\skmath@ln\left(#1\right)}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\log} +\begin{MacroCode}{package} +\RenewDocumentCommand\log{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@log\left(#2\right)}} + {\ensuremath{\skmath@log_{#1}\left(#2\right)}}% +} +\end{MacroCode} + \end{macro} + \begin{macro}{\exp} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} +\RenewDocumentCommand\exp{m}{\ensuremath{\mathchoice% + {e^{#1}}% + {\skmath@exp\left(#1\right)}% + {\skmath@exp\left(#1\right)}% + {\skmath@exp\left(#1\right)}% +}} +\end{MacroCode} + \end{macro} + + The fraction command is modified to improve typesetting. + \begin{macro}{\frac} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} +\RenewDocumentCommand\frac{mm}{\genfrac{}{}{}{}% + {\displaystyle #1}{\displaystyle #2}} +\end{MacroCode} + \end{macro} + + The \cs{bar} command is also modified to impove typesetting. + \begin{macro}{\bar} + \changes{0.1b}{Added \cs{bar} replacement} +\begin{MacroCode}{package} +\RenewDocumentCommand\bar{m}{% + \ensuremath{\mkern 1.5mu\overline{\mkern-1.5mu{#1}\mkern-1.5mu}\mkern 1.5mu}} +\end{MacroCode} + \end{macro} + + We introduce a command to typeset the differential part + of integrals, shamefully stolen from an answer on \TeX.SE. + Definition is deferred until after all packages are loaded + to avoid collisions with other \cs{d} commands. +\begin{MacroCode}{package} +\AtBeginDocument{% +\end{MacroCode} + \begin{macro}{\d} + \changes{0.1a}{Fixed obtuse errors} + \changes{0.1b}{Moved to \textsf{xparse} command definition} +\begin{MacroCode}{package} +\DeclareDocumentCommand\d{m}{\ensuremath{\,\mathrm{d}#1% + \@ifnextchar\d{\!}{}}} +\end{MacroCode} + \end{macro} +\begin{MacroCode}{package} +} +\end{MacroCode} + + Finally, we define a nicer way to denote vectors. + \begin{macro}{\vec} +\begin{MacroCode}{package} +\let\vec\vectorsym +\end{MacroCode} + \end{macro} +\begin{MacroCode}{package} +\endinput +\end{MacroCode} + + \PrintChanges + \PrintIndex +\end{document} diff --git a/Master/texmf-dist/tex/latex/skmath/skmath.sty b/Master/texmf-dist/tex/latex/skmath/skmath.sty new file mode 100644 index 00000000000..c378474654a --- /dev/null +++ b/Master/texmf-dist/tex/latex/skmath/skmath.sty @@ -0,0 +1,123 @@ +%% This is file `skmath.sty', generated from `skmath.tex' (key `package'). +%% skmath improved math commands +%% +%% Copyright (C) 2012 by Simon Sigurdhsson <sigurdhsson@gmail.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 Simon Sigurdhsson. +%% +%% This work consists of the file skmath.tex +%% and the derived file skmath.sty. + +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesPackage{skmath}% + [2013/02/18 v0.1e skmath improved math commands] +\RequirePackage{xparse} +\PassOptionsToPackage{intlimits}{amsmath} +\RequirePackage{kvoptions,amssymb,mathtools,xfrac,isomath} +\SetupKeyvalOptions{family=skmath,prefix=skmath@} +\DeclareBoolOption[false]{commonsets} +\ProcessKeyvalOptions* +\ifskmath@commonsets + \NewDocumentCommand\N{}{\ensuremath{\mathbb{N}}} + \NewDocumentCommand\Z{}{\ensuremath{\mathbb{Z}}} + \NewDocumentCommand\Q{}{\ensuremath{\mathbb{Q}}} + \NewDocumentCommand\R{}{\ensuremath{\mathbb{R}}} + \NewDocumentCommand\C{}{\ensuremath{\mathbb{C}}} +\fi +\DeclarePairedDelimiter\abs{\lvert}{\rvert} +\DeclarePairedDelimiter\norm{\lVert}{\rVert} +\AtBeginDocument{ + \DeclareDocumentCommand\E{m}{% + \ensuremath{\mathop{\mathrm{E}}\left[#1\right]}% + } +} +\DeclareDocumentCommand\P{m}{% + \ensuremath{\mathop{\mathrm{P}}% + \left(% + \let\skmath@given\given% + \DeclareDocumentCommand\given{}{\mid}% + #1% + \let\given\skmath@given% + \right)% + }% +} + \DeclareDocumentCommand\var{m}{% + \ensuremath{\mathop{\mathrm{Var}}\left(#1\right)}% + } + \DeclareDocumentCommand\cov{mm}{% + \ensuremath{\mathop{\mathrm{Cov}}\left(#1,#2\right)}% + } +\let\skmath@sin\sin +\let\skmath@cos\cos +\let\skmath@tan\tan +\let\skmath@cot\cot +\let\skmath@arcsin\arcsin +\let\skmath@arccos\arccos +\let\skmath@arccos\arctan +\let\skmath@ln\log +\let\skmath@log\log +\let\skmath@exp\exp +\RenewDocumentCommand\sin{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@sin\left(#2\right)}} + {\ensuremath{\skmath@sin^{#1}\left(#2\right)}}% +} +\RenewDocumentCommand\cos{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@cos\left(#2\right)}} + {\ensuremath{\skmath@cos^{#1}\left(#2\right)}}% +} +\RenewDocumentCommand\tan{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@tan\left(#2\right)}} + {\ensuremath{\skmath@tan^{#1}\left(#2\right)}}% +} +\RenewDocumentCommand\cot{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@cot\left(#2\right)}} + {\ensuremath{\skmath@cot^{#1}\left(#2\right)}}% +} +\RenewDocumentCommand\arcsin{m}{% + \ensuremath{\skmath@arcsin\left(#1\right)}% +} +\RenewDocumentCommand\arccos{m}{% + \ensuremath{\skmath@arccos\left(#1\right)}% +} +\RenewDocumentCommand\arctan{m}{% + \ensuremath{\skmath@arctan\left(#1\right)}% +} +\RenewDocumentCommand\ln{m}{% + \ensuremath{\skmath@ln\left(#1\right)}% +} +\RenewDocumentCommand\log{om}{% + \IfNoValueTF{#1} + {\ensuremath{\skmath@log\left(#2\right)}} + {\ensuremath{\skmath@log_{#1}\left(#2\right)}}% +} +\RenewDocumentCommand\exp{m}{\ensuremath{\mathchoice% + {e^{#1}}% + {\skmath@exp\left(#1\right)}% + {\skmath@exp\left(#1\right)}% + {\skmath@exp\left(#1\right)}% +}} +\RenewDocumentCommand\frac{mm}{\genfrac{}{}{}{}% + {\displaystyle #1}{\displaystyle #2}} +\RenewDocumentCommand\bar{m}{% + \ensuremath{\mkern 1.5mu\overline{\mkern-1.5mu{#1}\mkern-1.5mu}\mkern 1.5mu}} +\AtBeginDocument{% +\DeclareDocumentCommand\d{m}{\ensuremath{\,\mathrm{d}#1% + \@ifnextchar\d{\!}{}}} +} +\let\vec\vectorsym +\endinput + diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 6db5e1c1f4f..f06b9e3e3b9 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -389,7 +389,7 @@ my @TLP_working = qw( sidecap sidenotes sides silence simplecd simplecv simplewick simplified-latex sitem siunitx - skak skaknew skb skdoc skeycommand skeyval skull + skak skaknew skb skdoc skeycommand skeyval skmath skull slantsc slideshow smalltableof smartdiagram smartref snapshot songbook sort-by-letters soton soul sourcecodepro sourcesanspro spanglish spanish spanish-mx sparklines spelling spie diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index e8dd3186337..5342ca25589 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -1082,6 +1082,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'pictex' => '&PREHOOK_pictex', 'pmx' => '&PREHOOK_pmx', 'skb' => '&PREHOOK_flatten1', + 'skmath' => '&PREHOOK_savepdf', 'suftesi' => '&PREHOOK_suftesi', 'tui' => '&PREHOOK_tui', 'vhistory' => '&PREHOOK_vhistory', @@ -1138,6 +1139,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'pst-geo' => '&POSTpstgeo', 'pxbase' => '&POSTpxbase', 'pxchfon' => '&POSTpxchfon', + 'skmath' => '&POST_savepdf', 'splitindex' => '&POST_do_man', 'tipa-de' => '&POST_rmsymlink', 'xecyr' => '&POSTxecyr', @@ -1987,6 +1989,7 @@ $standardsource='\.(bat|c|drv|dtx|fea|fdd|ins|sfd)$|configure.*|install-sh'; 'ran_toks', "$package.dtx", 'seuthesis', 'NULL', # don't want to run iconv, etc. 'skdoc', "$package.dtx", + 'skmath', "$package.tex", 'statrep', "$package.dtx", 'stmaryrd', 'stmaryrd.dtx', 'tablists', 'tablists.dtx', @@ -2071,6 +2074,7 @@ my $core_latex = "$Master/texmf-dist/tex/latex"; 'schedule' => 'latex', # requires interaction 'silence' => 'latex -translate-file=empty.tcx', # no 8-bit 'skdoc' => 'tex', + 'skmath' => 'pdflatex', # fancy fonts, doc and subfiles combined 'svn-multi' => 'latex', # interaction for .pl 'teubner' => 'latex', # interaction 'termlist' => 'tex', # interaction for .pl diff --git a/Master/tlpkg/tlpsrc/collection-mathextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-mathextra.tlpsrc index 3a6ce52f8ac..d73d00ee38e 100644 --- a/Master/tlpkg/tlpsrc/collection-mathextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-mathextra.tlpsrc @@ -28,6 +28,7 @@ depend oubraces depend proba depend rec-thy depend shuffle +depend skmath depend statex depend statex2 depend stmaryrd diff --git a/Master/tlpkg/tlpsrc/skmath.tlpsrc b/Master/tlpkg/tlpsrc/skmath.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/skmath.tlpsrc |