summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/was/upgreek.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/was/upgreek.dtx')
-rw-r--r--macros/latex/contrib/was/upgreek.dtx235
1 files changed, 235 insertions, 0 deletions
diff --git a/macros/latex/contrib/was/upgreek.dtx b/macros/latex/contrib/was/upgreek.dtx
new file mode 100644
index 0000000000..2331d240c3
--- /dev/null
+++ b/macros/latex/contrib/was/upgreek.dtx
@@ -0,0 +1,235 @@
+%\CheckSum{281}
+%
+% \iffalse
+%
+% File `upgreek.dtx'.
+% Copyright (c) 2001--2003 Walter Schmidt
+%
+% This program may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.2
+% 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.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+% This program consists of the files upgreek.dtx and upgreek.ins
+%
+% \fi
+%
+% \iffalse
+%
+%<*driver>
+\ProvidesFile{upgreek.drv}
+%</driver>
+%<package>\ProvidesPackage{upgreek}
+ [2003/02/12 v2.0 (WaS)]
+%<*driver>
+\documentclass{ltxdoc}
+\CodelineNumbered
+\begin{document}
+ \DocInput{upgreek.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \GetFileInfo{upgreek.drv}
+% \DeleteShortVerb{\|}
+% \MakeShortVerb{\+}
+%
+% \title{The \textsf{upgreek} package for \LaTeXe}
+% \author{Walter Schmidt\thanks{{\ttfamily w.a.schmidt@gmx.net}}}
+% \date{(\fileversion{} -- \filedate)}
+% \maketitle
+% \thispagestyle{empty}
+% \sloppy
+%
+% \noindent
+% The default CM math fonts used by \TeX\ do not include upright
+% lowercase Greek characters, and many alternative math font sets don't,
+% either. (There are math fonts providing \emph{only} an upright
+% Greek alphabet, but that's a different story.)
+% However, mathematical constants such as $\pi = 3.14\dots$
+% are sometimes required to be typeset in roman (i.e., upright) style,
+% or one may need upright Greek to designate elementary particles.
+%
+% As a workaround,
+% the \LaTeX{} package \textsf{upgreek} makes the upright
+% Greek characters from the `Euler' or `Adobe Symbol' typefaces available
+% as math symbols. The lowercase letters are named
+% +\upalpha+, +\upbeta+ etc., whereas +\Updelta+, +\Upgamma+ etc.\ create
+% upper case.
+%
+% Just like +\alpha+, +\beta+ etc., these symbols work only in math
+% mode, and their size is properly adjusted, when they are used in
+% superscripts, subscripts or fractions.
+%
+% At first sight, providing also the uppercase letters seems pointless,
+% since +\Delta+, +\Gamma+, etc.\ are also upright by default. However,
+% it may be useful to have all upright Greek letters available in the
+% same style. Note that the uppercase letters were intentionally
+% \emph{not} named +\upDelta+ etc., so as not to clash with other
+% existent macro packages.
+%
+% The typeface is selected using a package option, so you can
+% choose what blends best with the other fonts used in your document:
+% \begin{description}
+% \item[{\mdseries\ttfamily [Euler]}] Euler Roman/Bold (default)
+% \item[{\mdseries\ttfamily [Symbol]}] Adobe Symbol
+% \item[{\mdseries\ttfamily [Symbolsmallscale]}] Adobe Symbol, scaled down to 90\% of
+% its natural size. (New feature in version 2.0\,!)
+% \end{description}
+%
+% Note that +\upmu+ should normally \emph{not} be used as the prefix
+% for physical units, meaning $10^{-6}$. The mu symbol to be used there
+% is to be taken from the \emph{text} font, and
+% most Latin text fonts do actually include a suitable Greek mu,
+% which can be accessed as +\textmu+.
+% Most likely -- depending on the encoding of your text fonts -- you
+% need to load the package \textsf{textcomp} for this purpose.
+% If, however, there is no mu in your text fonts,
+% using +\upmu+ is still better than nothing.
+% See also the \textsf{gensymb} package, which is distributed from the same
+% CTAN directory than \textsf{upgreek}: It provides a command for `micro'
+% that works in both text and math mode and uses either +\textmu+ or +\upmu+,
+% depending on the available character sets.
+%
+%
+% \StopEventually{}
+%
+% \section*{The package code}
+%
+% \begin{macrocode}
+%<*package>
+\DeclareOption{Symbol}{\let\uppi=s}
+\DeclareOption{Symbolsmallscale}{\let\uppi m}
+\DeclareOption{Euler}{\let\uppi=e}
+\ExecuteOptions{Euler}
+\ProcessOptions\relax
+\ifx\uppi e
+ \PackageInfo{upgreek}{Using Euler Roman for upright Greek}
+ \DeclareFontFamily{U}{eur}{\skewchar\font'177}
+ \DeclareFontShape{U}{eur}{m}{n}{%
+ <-6> eurm5 <6-8> eurm7 <8-> eurm10}{}
+ \DeclareFontShape{U}{eur}{b}{n}{%
+ <-6> eurb5 <6-8> eurb7 <8-> eurb10}{}
+ \DeclareSymbolFont{ugrf@m}{U}{eur}{m}{n}
+ \SetSymbolFont{ugrf@m}{bold}{U}{eur}{b}{n}
+ \let\uppi\@undefined
+ \DeclareMathSymbol{\upalpha}{\mathord}{ugrf@m}{"0B}
+ \DeclareMathSymbol{\upbeta}{\mathord}{ugrf@m}{"0C}
+ \DeclareMathSymbol{\upgamma}{\mathord}{ugrf@m}{"0D}
+ \DeclareMathSymbol{\updelta}{\mathord}{ugrf@m}{"0E}
+ \DeclareMathSymbol{\upepsilon}{\mathord}{ugrf@m}{"0F}
+ \DeclareMathSymbol{\upzeta}{\mathord}{ugrf@m}{"10}
+ \DeclareMathSymbol{\upeta}{\mathord}{ugrf@m}{"11}
+ \DeclareMathSymbol{\uptheta}{\mathord}{ugrf@m}{"12}
+ \DeclareMathSymbol{\upiota}{\mathord}{ugrf@m}{"13}
+ \DeclareMathSymbol{\upkappa}{\mathord}{ugrf@m}{"14}
+ \DeclareMathSymbol{\uplambda}{\mathord}{ugrf@m}{"15}
+ \DeclareMathSymbol{\upmu}{\mathord}{ugrf@m}{"16}
+ \DeclareMathSymbol{\upnu}{\mathord}{ugrf@m}{"17}
+ \DeclareMathSymbol{\upxi}{\mathord}{ugrf@m}{"18}
+ \DeclareMathSymbol{\uppi}{\mathord}{ugrf@m}{"19}
+ \DeclareMathSymbol{\uprho}{\mathord}{ugrf@m}{"1A}
+ \DeclareMathSymbol{\upsigma}{\mathord}{ugrf@m}{"1B}
+ \DeclareMathSymbol{\uptau}{\mathord}{ugrf@m}{"1C}
+ \DeclareMathSymbol{\upupsilon}{\mathord}{ugrf@m}{"1D}
+ \DeclareMathSymbol{\upphi}{\mathord}{ugrf@m}{"1E}
+ \DeclareMathSymbol{\upchi}{\mathord}{ugrf@m}{"1F}
+ \DeclareMathSymbol{\uppsi}{\mathord}{ugrf@m}{"20}
+ \DeclareMathSymbol{\upomega}{\mathord}{ugrf@m}{"21}
+ \DeclareMathSymbol{\upvarepsilon}{\mathord}{ugrf@m}{"22}
+ \DeclareMathSymbol{\upvartheta}{\mathord}{ugrf@m}{"23}
+ \DeclareMathSymbol{\upvarpi}{\mathord}{ugrf@m}{"24}
+ \let\upvarrho\uprho
+ \let\upvarsigma\upsigma
+ \DeclareMathSymbol{\upvarphi}{\mathord}{ugrf@m}{"27}
+ \DeclareMathSymbol{\Upgamma}{\mathord}{ugrf@m}{"00}
+ \DeclareMathSymbol{\Updelta}{\mathord}{ugrf@m}{"01}
+ \DeclareMathSymbol{\Uptheta}{\mathord}{ugrf@m}{"02}
+ \DeclareMathSymbol{\Uplambda}{\mathord}{ugrf@m}{"03}
+ \DeclareMathSymbol{\Upxi}{\mathord}{ugrf@m}{"04}
+ \DeclareMathSymbol{\Uppi}{\mathord}{ugrf@m}{"05}
+ \DeclareMathSymbol{\Upsigma}{\mathord}{ugrf@m}{"06}
+ \DeclareMathSymbol{\Upupsilon}{\mathord}{ugrf@m}{"07}
+ \DeclareMathSymbol{\Upphi}{\mathord}{ugrf@m}{"08}
+ \DeclareMathSymbol{\Uppsi}{\mathord}{ugrf@m}{"09}
+ \DeclareMathSymbol{\Upomega}{\mathord}{ugrf@m}{"0A}
+\else
+ \ifx\uppi s
+ \PackageInfo{upgreek}{Using Adobe Symbol for upright Greek}
+ \DeclareSymbolFont{ugrf@m}{U}{psy}{m}{n}
+ \else % m
+ \PackageInfo{upgreek}{Using Adobe Symbol, scaled 900, for upright Greek}
+ \DeclareFontFamily{U}{fsy}{}
+ \DeclareFontShape{U}{fsy}{m}{n}{<->s*[.9]psyr}{}
+ \DeclareSymbolFont{ugrf@m}{U}{fsy}{m}{n}
+ \fi
+ \let\uppi\@undefined
+ \DeclareMathSymbol{\upalpha}{\mathord}{ugrf@m}{`a}
+ \DeclareMathSymbol{\upbeta}{\mathord}{ugrf@m}{`b}
+ \DeclareMathSymbol{\upgamma}{\mathord}{ugrf@m}{`g}
+ \DeclareMathSymbol{\updelta}{\mathord}{ugrf@m}{`d}
+ \DeclareMathSymbol{\upepsilon}{\mathord}{ugrf@m}{`e}
+ \DeclareMathSymbol{\upzeta}{\mathord}{ugrf@m}{`z}
+ \DeclareMathSymbol{\upeta}{\mathord}{ugrf@m}{`h}
+ \DeclareMathSymbol{\uptheta}{\mathord}{ugrf@m}{`q}
+ \DeclareMathSymbol{\upiota}{\mathord}{ugrf@m}{`i}
+ \DeclareMathSymbol{\upkappa}{\mathord}{ugrf@m}{`k}
+ \DeclareMathSymbol{\uplambda}{\mathord}{ugrf@m}{`l}
+ \DeclareMathSymbol{\upmu}{\mathord}{ugrf@m}{`m}
+ \DeclareMathSymbol{\upnu}{\mathord}{ugrf@m}{`n}
+ \DeclareMathSymbol{\upxi}{\mathord}{ugrf@m}{`x}
+ \DeclareMathSymbol{\uppi}{\mathord}{ugrf@m}{`p}
+ \DeclareMathSymbol{\uprho}{\mathord}{ugrf@m}{`r}
+ \DeclareMathSymbol{\upsigma}{\mathord}{ugrf@m}{`s}
+ \DeclareMathSymbol{\uptau}{\mathord}{ugrf@m}{`t}
+ \DeclareMathSymbol{\upupsilon}{\mathord}{ugrf@m}{`u}
+ \DeclareMathSymbol{\upphi}{\mathord}{ugrf@m}{`f}
+ \DeclareMathSymbol{\upchi}{\mathord}{ugrf@m}{`c}
+ \DeclareMathSymbol{\uppsi}{\mathord}{ugrf@m}{`y}
+ \DeclareMathSymbol{\upomega}{\mathord}{ugrf@m}{`w}
+ \let\upvarepsilon\upepsilon
+ \DeclareMathSymbol{\upvartheta}{\mathord}{ugrf@m}{`J}
+ \DeclareMathSymbol{\upvarpi}{\mathord}{ugrf@m}{`v}
+ \let\upvarrho\uprho
+ \let\upvarsigma\upsigma
+ \DeclareMathSymbol{\upvarphi}{\mathord}{ugrf@m}{`j}
+ \DeclareMathSymbol{\Upgamma}{\mathord}{ugrf@m}{`G}
+ \DeclareMathSymbol{\Updelta}{\mathord}{ugrf@m}{`D}
+ \DeclareMathSymbol{\Uptheta}{\mathord}{ugrf@m}{`Q}
+ \DeclareMathSymbol{\Uplambda}{\mathord}{ugrf@m}{`L}
+ \DeclareMathSymbol{\Upxi}{\mathord}{ugrf@m}{`X}
+ \DeclareMathSymbol{\Uppi}{\mathord}{ugrf@m}{`P}
+ \DeclareMathSymbol{\Upsigma}{\mathord}{ugrf@m}{`S}
+ \DeclareMathSymbol{\Upupsilon}{\mathord}{ugrf@m}{`U}
+ \DeclareMathSymbol{\Upphi}{\mathord}{ugrf@m}{`F}
+ \DeclareMathSymbol{\Uppsi}{\mathord}{ugrf@m}{`Y}
+ \DeclareMathSymbol{\Upomega}{\mathord}{ugrf@m}{`W}
+\fi
+%</package>
+% \end{macrocode}
+%
+% The next line of code is only to prevent DocStrip from adding the
+% character table to all modules:
+% \begin{macrocode}
+\endinput
+% \end{macrocode}
+% \Finale
+%% \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 \~}
+%%