summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/pxgreeks
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/pxgreeks
Initial commit
Diffstat (limited to 'macros/latex/contrib/pxgreeks')
-rw-r--r--macros/latex/contrib/pxgreeks/README43
-rw-r--r--macros/latex/contrib/pxgreeks/pxgreeks.dtx354
-rw-r--r--macros/latex/contrib/pxgreeks/pxgreeks.ins80
-rw-r--r--macros/latex/contrib/pxgreeks/pxgreeks.pdfbin0 -> 68222 bytes
4 files changed, 477 insertions, 0 deletions
diff --git a/macros/latex/contrib/pxgreeks/README b/macros/latex/contrib/pxgreeks/README
new file mode 100644
index 0000000000..b32dc0378a
--- /dev/null
+++ b/macros/latex/contrib/pxgreeks/README
@@ -0,0 +1,43 @@
+ +--------------------------------------------------+
+ + pxgreeks +
+ + `shape selection for the PX fonts Greek letters' +
+ + +
+ + jfbu (at) free.fr +
+ +--------------------------------------------------+
+
+This is the README file for the LaTeX2e package `pxgreeks',
+version 1.0, 2011/03/16
+
+\usepackage[option]{pxgreeks}
+
+Options:
+
+TeX: lowercase Greek italic and uppercase upright (default),
+sloped: synonym for TeX,
+ISO: lowercase and uppercase italic,
+itgreek: synonym for ISO,
+upright: lowercase and uppercase upright,
+French: synonym for upright,
+upGreek: uppercase Greek upright (default),
+itGreek: uppercase Greek italic.
+
+\usepackage[itGreek,upgreek]{pxgreeks} will give upright lowercase
+combined with italic uppercase.
+
+Once the shapes have been decided the \other... prefix allows
+to use the alternative: for example if \alpha is in italic shape
+then \otheralpha will refer to the upright glyph.
+
+
+Copyright (C) 2011 by Jean-Francois Burnol.
+
+ The files of this package 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 2003/12/01 or later.
+
diff --git a/macros/latex/contrib/pxgreeks/pxgreeks.dtx b/macros/latex/contrib/pxgreeks/pxgreeks.dtx
new file mode 100644
index 0000000000..37aecbcd53
--- /dev/null
+++ b/macros/latex/contrib/pxgreeks/pxgreeks.dtx
@@ -0,0 +1,354 @@
+% \iffalse meta-comment
+% File `pxgreeks.dtx'
+%
+% Copyright (C) 2011 by Jean-Francois Burnol
+%
+% This file 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 2003/12/01 or later.
+%
+% Please report errors to jfbu (at) free (dot) fr
+%
+% \fi
+% \iffalse
+%<*dtx>
+\ProvidesFile{pxgreeks.dtx}
+ [2011/03/16 1.0 shape selection for the PX fonts Greek letters]
+%</dtx>
+%
+%<*driver>
+\documentclass[a4paper]{ltxdoc}
+\usepackage{amsmath} % for the logo
+\usepackage[hscale=0.6]{geometry}
+\usepackage[pdfstartview=FitH,pdfpagemode=UseNone]{hyperref}
+%\RecordChanges
+%\OnlyDescription
+\begin{document}
+ \DocInput{pxgreeks.dtx}
+\end{document}
+%</driver>
+% \fi
+% \changes{1.0}{2011/03/16}{Initial version.}
+%
+% \GetFileInfo{pxgreeks.dtx}
+%
+% \begin{center}
+% {\Large The \texttt{pxgreeks} package}\\
+% Jean-Fran\c cois \textsc{Burnol}\\
+% \texttt{jfbu (at) free (dot) fr}
+% \end{center}
+%
+% \begin{abstract}
+% The PX Fonts \footnote{package
+% \url{http://mirrors.ctan.org/help/Catalogue/entries/pxfonts.html}}
+% of \textsc{Young~Ryu} provide a very complete replacement for
+% the default math fonts of \TeX{} and \LaTeX{}, containing all
+% CM symbols and even all symbols from the \AmS{} fonts, and
+% more. In particular upright shapes for the Greek letters are
+% available (they are necessary in French mathematical
+% typography). The |pxgreeks| package\footnote{This document
+% describes |pxgreeks| version \fileversion\ (\filedate).}
+% allows \LaTeX{} users who use the PX fonts to easily select
+% the shapes (italic or upright) for the Greek lowercase and
+% uppercase letters. This is compatible with using arbitrary
+% text fonts in the document.
+% \end{abstract}
+%
+% \section{Features}
+%
+% The shape of the Greek letters is decided according to the
+% options passed to the package: |TeX| (=|sloped|, the default:
+% lowercase italic and uppercase upright), |upright|
+% (=|French|=|upgreek|, lowercase and uppercase upright), |ISO|
+% (=|itgreek|, lowercase and uppercase italic), |itGreek| (italic
+% uppercase) and |upGreek| (upright uppercase). Use both of
+% |itGreek| and |upgreek| to get lowercase upright and uppercase
+% italic.
+%
+% The uppercase Greek letters are not taken from the PX roman
+% font |pxr| (`operators') but from either the alternate math
+% italic font |pxmia| (`lettersA', which in fact provides upright
+% Greek in OML encoding), or from the math italic font |pxmi|
+% (`letters', where uppercase Greek is in italic shape). This
+% means that if some other package redefines the `operators' font
+% used in math (presumably to co\"incide with the `roman' font
+% used for the document text), this will have no impact on the
+% Greek uppercase letters. If some package modifies the `letters'
+% font used in math (which typically is the font for Latin
+% letters and lowercase Greek letters, and with |pxgreeks| is
+% also used for the italic uppercase Greek letters), then of
+% course the glyphs will be from the new font. But the upright
+% glyphs will still be from the PX Font |pxmia| (`lettersA').
+%
+% Following the model of the |fourier| package, the alternative
+% shape of the Greek letters is accessible via the \cs{other...}
+% prefix: \cs{otheralpha} will be upright if \cs{alpha} is
+% italic, and vice versa. For the lowercase Greek letters there
+% are also the macros ending in |up| (\cs{alphaup}, \dots) which
+% are already defined by |pxfonts|.
+%
+% Regarding the uppercase letters, the package defines (replacing
+% the |amsmath| definitions) \cs{varGamma}, etc\dots{} as synonyms for
+% \cs{otherGamma}, etc\dots, but does not define additional
+% macros \cs{Gammaup} as this was not done by the package
+% |pxfonts|. Use rather \cs{otherGamma} if
+% necessary.\footnote{contrarily to |amsmath| we define the
+% \cs{varGamma}, etc\dots{} to be of type \cs{mathalpha} so they
+% obey, like the default \LaTeX{} \cs{Gamma}, etc \dots{} the math
+% alphabet changing commands; however to access the bold glyphs I
+% recommend using either the \cs{bm} command from the |bm|
+% package or the \cs{boldsymbol} command from the |amsbsy|
+% package and not \cs{mathbf} which by default will use the PX
+% roman font |pxr|.}
+%
+% The package defines \cs{omicron}, \cs{otheromicron}, and
+% \cs{omicronup}. But there is no upright omicron in the |pxmia|
+% font, so we have to use the construct |\mathrm{\omicron}| (this
+% will a priori use the PX roman font |pxr|).
+%
+% It is not necessary to write |\usepackage{pxfonts}| prior to
+% |\usepackage{pxgreeks}| as this is done by |pxgreeks| itself,
+% but for clarity of the \LaTeX{} source of the document to be
+% typeset, this is highly recommended, as |pxgreeks| does very
+% minor things compared to |pxfonts|.
+%
+% Using |pxgreeks| should be hopefully compatible with any
+% package which is already compatible with |pxfonts|.
+%
+%
+% \StopEventually{}
+%
+% \section{Implementation}
+%
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{pxgreeks}
+ [2011/03/16 v1.0 shape selection for the PX fonts Greek letters]
+\RequirePackage{pxfonts}
+\newif\iftgs@uplower
+\newif\iftgs@itupper
+\def\tgs@Greek@sh{0}
+\DeclareOption{itgreek}{\tgs@uplowerfalse\tgs@ituppertrue}
+\DeclareOption{upgreek}{\tgs@uplowertrue\tgs@itupperfalse}
+\DeclareOption{itGreek}{\def\tgs@Greek@sh{1}}
+\DeclareOption{upGreek}{\def\tgs@Greek@sh{2}}
+\DeclareOption{TeX}{\tgs@uplowerfalse\tgs@itupperfalse} %default
+\DeclareOption{sloped}{\ExecuteOptions{TeX}}
+\DeclareOption{upright}{\ExecuteOptions{upgreek}}
+\DeclareOption{French}{\ExecuteOptions{upright}}
+\DeclareOption{ISO}{\ExecuteOptions{itgreek}}
+\DeclareOption*{\PackageWarning{pxgreeks}{Unknown option `\CurrentOption'}}
+\ProcessOptions\relax
+\ifcase\tgs@Greek@sh\or\tgs@ituppertrue\or\tgs@itupperfalse\fi
+% \end{macrocode}
+% macro \cs{re@DeclareMathSymbol} defined in pxfonts.sty\\
+% symbol font lettersA=pxmia defined in pxfonts.sty (contains upright Greek)
+% \begin{macrocode}
+\re@DeclareMathSymbol{\Gamma}{\mathalpha}{lettersA}{0}
+\re@DeclareMathSymbol{\Delta}{\mathalpha}{lettersA}{1}
+\re@DeclareMathSymbol{\Theta}{\mathalpha}{lettersA}{2}
+\re@DeclareMathSymbol{\Lambda}{\mathalpha}{lettersA}{3}
+\re@DeclareMathSymbol{\Xi}{\mathalpha}{lettersA}{4}
+\re@DeclareMathSymbol{\Pi}{\mathalpha}{lettersA}{5}
+\re@DeclareMathSymbol{\Sigma}{\mathalpha}{lettersA}{6}
+\re@DeclareMathSymbol{\Upsilon}{\mathalpha}{lettersA}{7}
+\re@DeclareMathSymbol{\Phi}{\mathalpha}{lettersA}{8}
+\re@DeclareMathSymbol{\Psi}{\mathalpha}{lettersA}{9}
+\re@DeclareMathSymbol{\Omega}{\mathalpha}{lettersA}{10}
+% \end{macrocode}
+% \cs{varGamma} etc... defined in amsmath, but with type \cs{mathord}
+% \begin{macrocode}
+\re@DeclareMathSymbol{\varGamma}{\mathalpha}{letters}{0}
+\re@DeclareMathSymbol{\varDelta}{\mathalpha}{letters}{1}
+\re@DeclareMathSymbol{\varTheta}{\mathalpha}{letters}{2}
+\re@DeclareMathSymbol{\varLambda}{\mathalpha}{letters}{3}
+\re@DeclareMathSymbol{\varXi}{\mathalpha}{letters}{4}
+\re@DeclareMathSymbol{\varPi}{\mathalpha}{letters}{5}
+\re@DeclareMathSymbol{\varSigma}{\mathalpha}{letters}{6}
+\re@DeclareMathSymbol{\varUpsilon}{\mathalpha}{letters}{7}
+\re@DeclareMathSymbol{\varPhi}{\mathalpha}{letters}{8}
+\re@DeclareMathSymbol{\varPsi}{\mathalpha}{letters}{9}
+\re@DeclareMathSymbol{\varOmega}{\mathalpha}{letters}{10}
+\re@DeclareMathSymbol{\omicron}{\mathalpha}{letters}{`o}
+% \end{macrocode}
+% unfortunately no upright omicron in lettersA=pxmia
+% \begin{macrocode}
+\let\omicronup\undefined\newcommand{\omicronup}{\mathrm{o}}
+\iftgs@uplower % upright lowercase Greek letters
+\let\otheralpha\alpha
+\let\otherbeta\beta
+\let\othergamma\gamma
+\let\otherdelta\delta
+\let\otherepsilon\epsilon
+\let\otherzeta\zeta
+\let\othereta\eta
+\let\othertheta\theta
+\let\otheriota\iota
+\let\otherkappa\kappa
+\let\otherlambda\lambda
+\let\othermu\mu
+\let\othernu\nu
+\let\otherxi\xi
+\let\otherpi\pi
+\let\otherrho\rho
+\let\othersigma\sigma
+\let\othertau\tau
+\let\otherupsilon\upsilon
+\let\otherphi\phi
+\let\otherchi\chi
+\let\otherpsi\psi
+\let\otheromega\omega
+\let\othervarepsilon\varepsilon
+\let\othervartheta\vartheta
+\let\othervarpi\varpi
+\let\othervarrho\varrho
+\let\othervarsigma\varsigma
+\let\othervarphi\varphi
+\let\otheromicron\omicron
+%%
+\let\alpha\alphaup
+\let\beta\betaup
+\let\gamma\gammaup
+\let\delta\deltaup
+\let\epsilon\epsilonup
+\let\zeta\zetaup
+\let\eta\etaup
+\let\theta\thetaup
+\let\iota\iotaup
+\let\kappa\kappaup
+\let\lambda\lambdaup
+\let\mu\muup
+\let\nu\nuup
+\let\xi\xiup
+\let\pi\piup
+\let\rho\rhoup
+\let\sigma\sigmaup
+\let\tau\tauup
+\let\upsilon\upsilonup
+\let\phi\phiup
+\let\chi\chiup
+\let\psi\psiup
+\let\omega\omegaup
+\let\varepsilon\varepsilonup
+\let\vartheta\varthetaup
+\let\varpi\varpiup
+\let\varrho\varrhoup
+\let\varsigma\varsigmaup
+\let\varphi\varphiup
+\let\omicron\omicronup
+\else % italic lowercase Greek letters (default)
+\let\otheralpha\alphaup
+\let\otherbeta\betaup
+\let\othergamma\gammaup
+\let\otherdelta\deltaup
+\let\otherepsilon\epsilonup
+\let\otherzeta\zetaup
+\let\othereta\etaup
+\let\othertheta\thetaup
+\let\otheriota\iotaup
+\let\otherkappa\kappaup
+\let\otherlambda\lambdaup
+\let\othermu\muup
+\let\othernu\nuup
+\let\otherxi\xiup
+\let\otherpi\piup
+\let\otherrho\rhoup
+\let\othersigma\sigmaup
+\let\othertau\tauup
+\let\otherupsilon\upsilonup
+\let\otherphi\phiup
+\let\otherchi\chiup
+\let\otherpsi\psiup
+\let\otheromega\omegaup
+\let\othervarepsilon\varepsilonup
+\let\othervartheta\varthetaup
+\let\othervarpi\varpiup
+\let\othervarrho\varrhoup
+\let\othervarsigma\varsigmaup
+\let\othervarphi\varphiup
+\let\otheromicron\omicronup
+\fi
+%%
+\iftgs@itupper % italic uppercase Greek
+\let\otherGamma\Gamma
+\let\otherDelta\Delta
+\let\otherTheta\Theta
+\let\otherLambda\Lambda
+\let\otherXi\Xi
+\let\otherPi\Pi
+\let\otherSigma\Sigma
+\let\otherUpsilon\Upsilon
+\let\otherPhi\Phi
+\let\otherPsi\Psi
+\let\otherOmega\Omega
+\let\Gamma\varGamma
+\let\Delta\varDelta
+\let\Theta\varTheta
+\let\Lambda\varLambda
+\let\Xi\varXi
+\let\Pi\varPi
+\let\Sigma\varSigma
+\let\Upsilon\varUpsilon
+\let\Phi\varPhi
+\let\Psi\varPsi
+\let\Omega\varOmega
+\let\varGamma\otherGamma
+\let\varDelta\otherDelta
+\let\varTheta\otherTheta
+\let\varLambda\otherLambda
+\let\varXi\otherXi
+\let\varPi\otherPi
+\let\varSigma\otherSigma
+\let\varUpsilon\otherUpsilon
+\let\varPhi\otherPhi
+\let\varPsi\otherPsi
+\let\varOmega\otherOmega
+\else % upright uppercase Greek (default)
+\let\otherGamma\varGamma
+\let\otherDelta\varDelta
+\let\otherTheta\varTheta
+\let\otherLambda\varLambda
+\let\otherXi\varXi
+\let\otherPi\varPi
+\let\otherSigma\varSigma
+\let\otherUpsilon\varUpsilon
+\let\otherPhi\varPhi
+\let\otherPsi\varPsi
+\let\otherOmega\varOmega
+\fi
+\endinput
+% \end{macrocode}
+% \iffalse
+%</code>
+%<*dtx>
+% \fi
+%
+% \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 \~}
+%
+% \iffalse
+%</dtx>
+% \fi
+%
+% \CheckSum{528}
+% \Finale
+\endinput
diff --git a/macros/latex/contrib/pxgreeks/pxgreeks.ins b/macros/latex/contrib/pxgreeks/pxgreeks.ins
new file mode 100644
index 0000000000..dc162c4946
--- /dev/null
+++ b/macros/latex/contrib/pxgreeks/pxgreeks.ins
@@ -0,0 +1,80 @@
+%%
+%% Copyright (C) 2011 by Jean-Francois Burnol
+%%
+%% Please report errors to jfbu (at) free.fr
+%%
+%% This file 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 2003/12/01 or later.
+%%
+%% --------------- start of docstrip commands ------------------
+%%
+\def\filedate{2011/03/14}
+\def\batchfile{pxgreeks.ins}
+\input docstrip.tex
+
+{\ifx\generate\undefined
+\Msg{**********************************************}
+\Msg{*}
+\Msg{* This installation requires docstrip}
+\Msg{* version 2.3c or later.}
+\Msg{*}
+\Msg{* An older version of docstrip has been input}
+\Msg{*}
+\Msg{**********************************************}
+\errhelp{Move or rename old docstrip.tex.}
+\errmessage{Old docstrip in input path}
+\batchmode
+\csname @@end\endcsname
+\fi}
+
+\declarepreamble\mainpreamble
+This is a generated file.
+
+ Copyright (C) 2011 by Jean-Francois Burnol
+
+ Please report errors to jfbu (at) free.fr
+
+ This file 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 2003/12/01 or later.
+
+\endpreamble
+
+\keepsilent
+
+\usedir{tex/latex/pxgreeks}
+
+\usepreamble\mainpreamble
+
+\askforoverwritefalse
+
+\generate{\file{pxgreeks.sty}{\from{pxgreeks.dtx}{code}}
+ }
+
+\ifToplevel{
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space pxgreeks.sty}
+\Msg{*}
+\Msg{* To produce the documentation run pxgreeks.dtx through}
+\Msg{* LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{***********************************************************}
+}
+
+
+\endbatchfile
diff --git a/macros/latex/contrib/pxgreeks/pxgreeks.pdf b/macros/latex/contrib/pxgreeks/pxgreeks.pdf
new file mode 100644
index 0000000000..bfe358c721
--- /dev/null
+++ b/macros/latex/contrib/pxgreeks/pxgreeks.pdf
Binary files differ