From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Mon, 2 Sep 2019 13:46:59 +0900
Subject: Initial commit

---
 macros/latex/contrib/txgreeks/txgreeks.dtx | 354 +++++++++++++++++++++++++++++
 1 file changed, 354 insertions(+)
 create mode 100644 macros/latex/contrib/txgreeks/txgreeks.dtx

(limited to 'macros/latex/contrib/txgreeks/txgreeks.dtx')

diff --git a/macros/latex/contrib/txgreeks/txgreeks.dtx b/macros/latex/contrib/txgreeks/txgreeks.dtx
new file mode 100644
index 0000000000..b7f271b3c4
--- /dev/null
+++ b/macros/latex/contrib/txgreeks/txgreeks.dtx
@@ -0,0 +1,354 @@
+% \iffalse meta-comment
+%    File `txgreeks.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{txgreeks.dtx}
+       [2011/03/16 1.0 shape selection for the TX 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{txgreeks.dtx}
+\end{document}
+%</driver>
+% \fi
+% \changes{1.0}{2011/03/16}{Initial version.}
+%
+% \GetFileInfo{txgreeks.dtx}
+%
+% \begin{center}
+%   {\Large The \texttt{txgreeks} package}\\
+%   Jean-Fran\c cois \textsc{Burnol}\\
+%   \texttt{jfbu (at) free (dot) fr}
+% \end{center}
+%
+%  \begin{abstract}
+%    The TX Fonts \footnote{package
+%    \url{http://mirrors.ctan.org/help/Catalogue/entries/txfonts.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 |txgreeks| package\footnote{This document
+%    describes |txgreeks| version \fileversion\ (\filedate).}
+%    allows \LaTeX{} users who use the TX 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 TX roman
+%  font |txr| (`operators') but from either the alternate math
+%  italic font |txmia| (`lettersA', which in fact provides upright
+%  Greek in OML encoding), or from the math italic font |txmi|
+%  (`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 |txgreeks| 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 TX Font |txmia| (`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 |txfonts|.
+%
+%  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
+%  |txfonts|. 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 TX
+%  roman font |txr|.}
+%
+%  The package defines \cs{omicron}, \cs{otheromicron}, and
+%  \cs{omicronup}. But there is no upright omicron in the |txmia|
+%  font, so we have to use the construct |\mathrm{\omicron}| (this
+%  will a priori use the TX roman font |txr|).
+%
+%  It is not necessary to write |\usepackage{txfonts}| prior to
+%  |\usepackage{txgreeks}| as this is done by |txgreeks| itself,
+%  but for clarity of the \LaTeX{} source of the document to be
+%  typeset, this is highly recommended, as |txgreeks| does very
+%  minor things compared to |txfonts|.
+%
+%  Using |txgreeks| should be hopefully compatible with any
+%  package which is already compatible with |txfonts|.
+%
+%
+% \StopEventually{}
+% 
+%  \section{Implementation}
+%
+%
+%    \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{txgreeks}
+	[2011/03/16 v1.0 shape selection for the TX fonts Greek letters]
+\RequirePackage{txfonts}
+\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{txgreeks}{Unknown option `\CurrentOption'}}
+\ProcessOptions\relax
+\ifcase\tgs@Greek@sh\or\tgs@ituppertrue\or\tgs@itupperfalse\fi
+%    \end{macrocode}
+% macro \cs{re@DeclareMathSymbol} defined in txfonts.sty\\
+% symbol font lettersA=txmia defined in txfonts.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=txmia
+%    \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
-- 
cgit v1.2.3

