summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tudscr/mathswap.sty
blob: 182e397daacc9fa0ed75c0c4a106b0eb873c18b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
%%
%% This is file `mathswap.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% tudscr-mathswap.dtx  (with options: `package')
%% 
%% ============================================================================
%% 
%%  TUD-Script
%%  Copyright (c) Falk Hanisch <tudscr@gmail.com>, 2012-2016
%% 
%% ============================================================================
%% 
%%  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 2005/12/01
%%  or later and of this work. This work has the LPPL maintenance status
%%  "author-maintained". The current maintainer and author of this work
%%  is Falk Hanisch.
%% 
%% ----------------------------------------------------------------------------
%% 
%%  Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz
%%  in der Version 1.3c, verteilt und/oder veraendert werden. Die aktuelle
%%  Version dieser Lizenz ist http://www.latex-project.org/lppl.txt und
%%  Version 1.3c oder spaeter ist Teil aller Verteilungen von LaTeX 2005/12/01
%%  oder spaeter und dieses Werks. Dieses Werk hat den LPPL-Verwaltungs-Status
%%  "author-maintained", wird somit allein durch den Autor verwaltet. Der
%%  aktuelle Verwalter und Autor dieses Werkes ist Falk Hanisch.
%% 
%% ============================================================================
%% 
%%% From File: tudscr-mathswap.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mathswap}[%
  2016/09/22 v2.05d TUD-Script
  package
  (swap mathematical separators)%
]
\newcommand*\@commaswap{,}
\newcommand*\commaswap[1]{\gdef\@commaswap{#1}\ignorespaces}
\newcommand*\@dotswap{\,}
\newcommand*\dotswap[1]{\gdef\@dotswap{#1}\ignorespaces}
\newcommand*\ms@commachar{}
\newcommand*\ms@dotchar{}
\AtBeginDocument{%
  \DeclareMathSymbol{\ms@comma}{\mathord}{letters}{"3B}%
  \mathchardef\ms@commachar\mathcode\expandafter`,%
  \mathcode\expandafter`,="8000%
  \DeclareMathSymbol{\ms@dot}{\mathord}{letters}{"3A}%
  \mathchardef\ms@dotchar\mathcode\expandafter`.%
  \mathcode\expandafter`.="8000%
  \mathswapon%
}
\newcommand*\ms@commaswap{}
\newcommand*\ms@dotswap{}
\newcommand*\mathswapon{%
  \def\ms@commaswap{\@commaswap}%
  \def\ms@dotswap{\@dotswap}%
}
\newcommand*\mathswapoff{%
  \def\ms@commaswap{\ms@commachar}%
  \def\ms@dotswap{\ms@dotchar}%
}
\newcommand*\ms@ifnum[2]{%
  \ifx\ms@token0\ms@@ifnum{#1}\else%
  \ifx\ms@token1\ms@@ifnum{#1}\else%
  \ifx\ms@token2\ms@@ifnum{#1}\else%
  \ifx\ms@token3\ms@@ifnum{#1}\else%
  \ifx\ms@token4\ms@@ifnum{#1}\else%
  \ifx\ms@token5\ms@@ifnum{#1}\else%
  \ifx\ms@token6\ms@@ifnum{#1}\else%
  \ifx\ms@token7\ms@@ifnum{#1}\else%
  \ifx\ms@token8\ms@@ifnum{#1}\else%
  \ifx\ms@token9\ms@@ifnum{#1}\else%
  #2%
  \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}
\newcommand*\ms@@ifnum[1]{%
  \begingroup%
    \mathcode\expandafter`,=\the\ms@comma%
    \mathcode\expandafter`.=\the\ms@dot%
    #1%
  \endgroup%
}
\newcommand*\ms@token{}
\begingroup
  \catcode`,=\active
  \gdef,{\futurelet\ms@token\ms@smartcomma}
  \catcode`.=\active
  \gdef.{\futurelet\ms@token\ms@smartdot}
\endgroup
\newcommand*\ms@smartcomma{\ms@ifnum{\ms@commaswap}{\ms@commachar}}
\newcommand*\ms@smartdot{\ms@ifnum{\ms@dotswap}{\ms@dotchar}}
\endinput
%%
%% End of file `mathswap.sty'.