summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/plain/pdcmac/magrmac.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/plain/pdcmac/magrmac.dtx')
-rw-r--r--Master/texmf-dist/source/plain/pdcmac/magrmac.dtx231
1 files changed, 231 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/plain/pdcmac/magrmac.dtx b/Master/texmf-dist/source/plain/pdcmac/magrmac.dtx
new file mode 100644
index 00000000000..71f2dd83cfe
--- /dev/null
+++ b/Master/texmf-dist/source/plain/pdcmac/magrmac.dtx
@@ -0,0 +1,231 @@
+% magrmac.dtx -- documentation and source for magrmac.tex -*-tex-*-
+
+%%%@TeX-document-file {
+%%% title = "MAGRMAC.TEX -- Malvern Greek Macros",
+%%% filename = "$texmf/doc/plain/pdcmac/magrmac.dtx",
+%%% version = "$Revision: 1.3 $",
+%%% package = "pdcmac 1.0",
+%%% date = "$Date: 1995/03/29 16:32:24 $",
+%%% author = "P. Damian Cugley",
+%%% email = "damian.cugley@comlab.ox.ac.uk",
+%%% address = "Oxford University Computing Laboratory,"
+%%% Parks Road, Oxford OX1 3QD, UK",
+%%% abstract = "This document describes and is the source code for
+%%% the TeX definitions file magrmac.tex.
+%%% Running plain TeX on this file produces both the
+%%% definitions file and the printed documentation.",
+%%% copyright = "Copyright (c) 1991-1995 P. Damian Cugley",
+%%% copying = "This program is free software; you can redistribute
+%%% it and/or modify it under the terms of the GNU
+%%% General Public License as published by the Free
+%%% Software Foundation; either version 2 of the License,
+%%% or (at your option) any later version.",
+%%% notice = "This program is distributed in the hope that it will
+%%% be useful, but WITHOUT ANY WARRANTY; without even the
+%%% implied warranty of MERCHANTABILITY or FITNESS FOR A
+%%% PARTICULAR PURPOSE. See the GNU General Public
+%%% License for more details.",
+%%% notice = "You should have received a copy of the GNU General
+%%% Public License along with this program; if not, write
+%%% to the Free Software Foundation, Inc., 675 Mass Ave,
+%%% Cambridge, MA 02139, USA.",
+%%% codetable = "USASCII",
+%%% dependencies = "pdccode.tex"
+%%%}
+
+%{{{ magrmac.dtx
+%{{{ preamble
+
+\relax
+\input pdccode
+
+\document
+\rcs$Id: magrmac.dtx,v 1.3 1995/03/29 16:32:24 pdc Exp $\endrcs
+
+\codefile{magrmac.tex}
+
+%}}} preamble
+%{{{ introduction
+\author{P. Dmaian Cugley}
+\title{MAGRMAC---Malvern Greek Macros}
+
+\section{Introduction}
+
+ This document describes |magrmac.tex|, a small file of macros
+ for setting Greek with Malvern~G fonts. `Malvern~G' is the name
+ of an encoding for typesetting Greek texts. Malvern
+ release~$1{\cdot}2$ has a collection of fonts ({\tt
+ ma$XX$g$YY$}) which use this encoding. The Levy and Dryllerakis
+ fonts should work to an extent.
+
+ The conventions for Malvern Greek text files are intended to be
+ similar to those for K.~J.\ Dryllerakis's Greek\TeX\ (the
+ `|kd|-' fonts), and will be most useful on computers where the
+ operating system uses latin letters (as opposed to those which
+ can display Greek letters on the screen).
+
+ There is a brief guide for |magrmac.tex| called |magrman.tex|.
+\notepar
+ These macros are not necessarily in final form and are not
+ intended to be supported. Use them at your own risk.
+\endnotepar
+
+ The document you are reading is a plain \TeX\ file called
+ |magrmac.dtx|. This `documented \TeX\ macros'\footnote*{The
+ suffix |dtx| is the same as files used to simlar effect in the
+ \LaTeX~2e distribution.} file produces the file `|magrmac.tex|'
+ in the current directory, in addition to the usual |dvi| file.
+ The code lines in the printed documentation are identical to
+ those in the macros file.
+
+%}}} introduction
+%{{{ file identification
+\section{File identification}
+
+ Nowadays, macro files start with some comments identifying the
+ file, for the benefit of people wondering what the file is for.
+
+\code
+ \|\% magrmac.tex \fileversion~\filedate~-- Malvern Greek Macros
+ |%%%@TeX-definition-file {
+ |%%% filename = "$texmf/tex/plain/pdcmac/magrmac.tex",
+ \|\%\%\% version~~~~~~~~= "\fileversion",
+ \|\%\%\% date~~~~~~~~~~~= "\filedate",
+ |%%% package = "pdcmac 1.0",
+ |%%% author = "P. Damian Cugley",
+ |%%% email = "damian.cugley@comlab.ox.ac.uk",
+ |%%% address = "Oxford University Computing Laboratory,
+ |%%% Parks Road, Oxford OX1 3QD, UK",
+ |%%% codetable = "USASCII",
+ |%%% keywords = "TeX, plain TeX, Malvern, Greek, macros",
+ |%%% supported = "Maybe",
+ |%%% abstract = "Macros for using Malvern Greek fonts.
+ |%%% This file was generated by running
+ |%%% plain TeX on magrmac.dtx",
+ |%%% copyright = "Copyright (c) 1991-1995 P. Damian Cugley",
+ |%%% copying = "DO NOT DISTRIBUTE THIS FILE.
+ |%%% Distribute magrmac.dtx only as part of the
+ |%%% package it came in.",
+ |%%% dependencies = "",
+ |%%%}
+ |
+ \|\\message\{\fileversion~\filedate\}
+ |
+\endcode
+%}}} file identification
+%{{{ greek mode
+\section{Greek Mode}
+
+ The Greek Mode is started with |\begingreek| for compatibility
+ with the precedent of Greek\TeX\ and Levy's original Greek
+ macros.\footnote*{The conventions of PDCFMT2 would suggest
+ |\greek|\dots|\endgreek| but (besides being incompatible with
+ existing Greek macros) it is probable that the hyphenation table
+ code (|\language| code) for Greek would be called |\greek|,
+ based on the names I~have seen used.}
+
+ The token register |\everygreek| is expanded each time we enter
+ Greek mode. At a minimum it should contain a command to select
+ an appropriate Greek font.
+\code
+ |\newtoks\everygreek
+ |\chardef\other=12
+\smallbreak
+ |\def\begingreek{%
+ | \begingroup
+ | \catcode`\~\other \catcode`\|\other \catcode`\"\other
+ | \the\everygreek
+ |}
+\smallbreak
+ |\let\endgreek=\endgroup
+\endcode
+%}}} greek mode
+\section{Customization}
+%{{{ lunate sigma, curly phi
+
+\subsec{Lunate sigma}
+
+ The macro |\grlunatesigma| belongs in |\everygreek|. It makes
+ |s| an active char expanding to |c|. A certain amount of
+ jiggery-pokery is required because making |s| active makes it
+ impossible to use the name |\grlunatesigma|!
+
+\code
+ |\toksdef\toksa=0
+\smallbreak
+ |\begingroup \let\\=\toksa \catcode`\s=13 \catcode`\S=13 \\={\endgroup
+ | \def\tmp{%
+ | \catcode`\s\active \chardef s`c
+ | \catcode`\S\active \chardef S`C
+ | }
+ |}\the\\
+ |\let\grlunatesigma=\tmp
+\endcode
+
+\subsec{Variant phi}
+
+ In the end I~make the two-stroke phi $\phi$ the default one,
+ with $\varphi$ as the `variant', for compatibility with plain
+ \TeX.
+\code
+ |\chardef\ninetytwo=92
+\smallbreak
+ |\begingroup \uccode`\~=`f \uppercase{\toksa={\endgroup
+ | \def\grvarphi{%
+ | \catcode`\f\active \chardef~\ninetytwo
+ | }
+ |}} \the\toksa
+\endcode
+%}}} lunate sigma
+%{{{ accent
+
+\subsec{One-accent Greek}
+
+ The |\monotonik| macro makes all the accent characters generate
+ the modern symmetrical accent, while the breathings and iota
+ subscript do nothing.
+\code
+ |\begingroup \catcode`\<=\active \catcode`\>=\active
+ | \catcode`\'=\active \catcode`\`=\active \toksa={\endgroup
+ | \def\monotoniko{%
+ | \catcode\lq\'\active \chardef'3
+ | \catcode\lq\`\active \chardef`3
+ | \catcode\lq\~\active \chardef~3
+ | \catcode\lq\<\active \let<\relax
+ | \catcode\lq\>\active \let>\relax
+ | \catcode\lq\|\active \let|\relax
+ | }
+ |}\the\toksa
+\smallbreak
+ |\def\plutoniko{%
+ | \catcode`\'\other \catcode`\`\other \catcode`\~\other
+ | \catcode`\<\other \catcode`\>\other \catcode`\|\other
+ |}
+\endcode
+%}}} accent
+%{{{ define delims
+
+\subsec{Choose shorthand delimiters for Greek Mode}
+
+ Define |#1| to be a `greek shift' in the way |$| is a maths
+ shift. Like |$|, |#1| will stand for either |\begingreek| or
+ |\endgreek| as required. |#1| must be a one-character control
+ sequence (as might be used after |`|).
+\code
+ |\def\grdelimiter#1{
+ | \begingroup \uccode`~=`#1 \uppercase{\toksa={\endgroup
+ | \def~{\begingreek \let~\endgreek}
+ | }} \the\toksa
+ |}
+\endcode
+
+%}}} define delims
+\endcodefile
+\enddocument
+\bye
+%}}} macros for greek
+
+% Local variables:
+% fold-folded-p: t
+% tex-macros-p: t
+% End: