%\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} % %\ProvidesPackage{upgreek} [2003/02/12 v2.0 (WaS)] %<*driver> \documentclass{ltxdoc} \CodelineNumbered \begin{document} \DocInput{upgreek.dtx} \end{document} % % \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 % % \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 \~} %%