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
|
%%
%% This is file `textualicomma.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% textualicomma.dtx (with options: `package')
%%
%% textualicomma.dtx
%% Copyright 2017-18 Sebastian Friedl
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license of (at your option) any later version.
%% 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 'maintained'.
%% Current maintainer of the work is Sebastian Friedl
%%
%% This work consists of the files textualicomma.dtx,
%% textualicomma.ins and textualicomma-doc.dtx,
%% as well as the derived file textualicomma.sty
%%
%% \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 \~}
\ProvidesPackage{textualicomma}%
[2018/08/23 v1.1 Use textual comma characters as decimal separators]
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{amstext}
\AtBeginDocument{%
\ifx\rmfamily\@undefined%
\PackageError{textualicomma}%
{\noexpand\rmfamily is undefined. textualicomma doesn't work}%
{textualicomma requires the \noexpand\rmfamily command to be
defined; otherwise, this package won't work properly}%
\PackageWarning{textualicomma}{Emergency stop}%
\stop%
\fi%
\ifx\sffamily\@undefined%
\PackageError{textualicomma}%
{\noexpand\sffamily is undefined. textualicomma doesn't work}%
{textualicomma requires the \noexpand\sffamily command to be
defined; otherwise, this package won't work properly}%
\PackageWarning{textualicomma}{Emergency stop}%
\stop%
\fi%
\ifx\ttfamily\@undefined%
\PackageError{textualicomma}%
{\noexpand\ttfamily is undefined. textualicomma doesn't work}%
{textualicomma requires the \noexpand\ttfamily command to be
defined; otherwise, this package won't work properly}%
\PackageWarning{textualicomma}{Emergency stop}%
\stop%
\fi%
}
\newif\if@txticmma@sffamily
\@txticmma@sffamilyfalse
\DeclareOption{sffamily}{\@txticmma@sffamilytrue}
\newif\if@txticmma@ttfamily
\@txticmma@ttfamilyfalse
\DeclareOption{ttfamily}{\@txticmma@ttfamilytrue}
\ProcessOptions
\def\txticmma@ffamily{\rmfamily}
\if@txticmma@sffamily\def\txticmma@ffamily{\sffamily}\fi
\if@txticmma@ttfamily\def\txticmma@ffamily{\ttfamily}\fi
\def\textualicommafont#1{\def\txticmma@ffamily{#1}}
\AtBeginDocument{%
\def\m@thtextcomma{\text{\txticmma@ffamily,}}
\mathchardef\mathcomma\mathcode`\,%
\mathcode`\,="8000 %
}
{\catcode`,=\active
\gdef,{\futurelet\@let@token\sm@rtcomma}
}
\def\sm@rtcomma{%
\ifx\@let@token\@sptoken\m@thtextcomma\protect\,\else
\ifx\@let@token\space \else
\m@thtextcomma\fi\fi}
\DeclareMathSymbol{.}{\mathalpha}{operators}{`.}
\endinput
%%
%% End of file `textualicomma.sty'.
|