% \iffalse meta-comment %% %% This is LEVY.DTX 1995/04/20 v1.0a %% %% Copyright (C) 1991--1995 by Andreas Dafferner %% All rights reserved %% % \fi % \CheckSum{404} % %% \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 \~} %% % % \title{Das \texttt{Levy}-Package\thanks{Dies ist die Version: % 1995/04/20 v1.0a. % Thanks to Knut B"uhler and Rainer Sch"opf. % Note: This package is released under terms which affect % its use in commercial applications. Please see the details at % the head of the source file.}} % \author{Andreas Dafferner\\ % \begin{small} % email: andreas.dafferner@urz.uni-heidelberg.de % \end{small}} % % \maketitle % % \begin{abstract} % \noindent Silvio Levy's griechische Zeichens"atze lassen sich % mit der von ihm mitgelieferten Datei \texttt{greekmac.tex} nur % f"ur \TeX{} benutzen. Das vorliegende package erm"oglicht die % Verwendung mit \LaTeXe. % \end{abstract} % % \hrulefill % \tableofcontents % \clearpage % \pagestyle{myheadings} % \markboth{Levy.sty}{Levy.sty} % % \DeleteShortVerb{\|} % % \subsection{Die Steuerdatei} % % Die folgende Steuerdatei \verb+levy.drv+ erzeugt die % vollst"andige Dokumentation: % % \begin{macrocode} %<*driver> \NeedsTeXFormat{LaTeX2e} \documentclass[11pt]{ltxdoc} \usepackage{german,levy} \renewcommand{\thesubsection}{\arabic{subsection}} \renewcommand{\contentsname}{} \setcounter{tocdepth}{2} \begin{document} \DocInput{levy.dtx} \input{ody} \end{document} % % \end{macrocode} % % \subsection{Benutzung in \LaTeXe} % % Um die griechischen Zeichens"atze benutzen zu k"onnen, steht f"ur % \LaTeXe{} die Datei \verb+levy.sty+ zur Verf"ugung, die wie folgt % eingeladen wird: % % \medskip % % \begin{center} % \begin{tabular}{@{}l} % \verb+\documentclass ...+\\ % \verb+\usepackage{...,levy,...}+ % \end{tabular} % \end{center} % % \subsection{Griechischer Zeichensatz} % % Die folgende Tafel zeigt, welche Zeichen in welcher Gr"o"se zur % Verf"ugung stehen: % % \medskip % % \begin{scriptsize} % \begin{center} % \begin{tabular}{@{}|l|l|*{9}{c|}} \hline % Fontname & Schriftart &\multicolumn{9}{c|}{vorhandene Schriftgr"o"sen}\\ \cline{3-11} % & & 8pt & 9pt & 10pt & 11pt & 12pt & 14pt & 17pt & 20pt & 25pt \\ \hline\hline % grreg & gerade &$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$\\ \hline % grbld & fett &$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$\\ \hline % grtt & typewriter & & &$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$&$\ast$\\ \hline % \end{tabular} % \end{center} % \end{scriptsize} % % \subsection{Tastaturbelegung} % % Um folgende griechische Buchstaben zu erhalten, m"ussen die % darunterstehenden lateinischen eingegeben werden: % % \medskip % % \begin{center} % \begin{tabular}{@{}|*{17}{c|}} \hline % \textgr{a}&\textgr{b}&\textgr{g}&\textgr{d}&\textgr{e} % &\textgr{z}&\textgr{h}&\textgr{j}&\textgr{i}&\textgr{k} % &\textgr{l}&\textgr{m}&\textgr{n}&\textgr{x}&\textgr{o} % &\textgr{p}&\textgr{r}\\ \hline % \texttt{a}&\texttt{b}&\texttt{g}&\texttt{d}&\texttt{e} % &\texttt{z}&\texttt{h}&\texttt{j}&\texttt{i}&\texttt{k} % &\texttt{l}&\texttt{m}&\texttt{n}&\texttt{x}&\texttt{o} % &\texttt{p}&\texttt{r}\\ \hline % \multicolumn{17}{c}{ }\\[15pt] \hline % \textgr{c}&\textgr{t}&\textgr{u}&\textgr{f}&\textgr{q} % &\textgr{y}&\textgr{w}&\textgr{.}&\textgr{;}&\textgr{,} % &\textgr{?}&\textgr{:}&\textgr{!}&\textgr{''}&\textgr{((} % &\textgr{))}&\dig \\ \hline % \texttt{s}&\texttt{t}&\texttt{u}&\texttt{f}&\texttt{q} % &\texttt{y}&\texttt{w}&\texttt{.}&\texttt{;}&\texttt{,} % &\texttt{?}&\texttt{:}&\texttt{!}&\texttt{''}&\texttt{((} % &\texttt{))}&\verb+\dig+\\ \hline % \end{tabular} % \end{center} % % \medskip % % "`\textgr{c}"' wird vor Leer- und Satzzeichen automatisch in % "`\textgr{s}"' umgewandelt. Soll vor diesen Zeichen dennoch % ein Binnensigma stehen, mu"s "`\verb+c+"' eingegeben werden. % % \subsection{Diakritische Zeichen} % % Spiritus und Akzent werden vor den Buchstaben geschrieben, auf dem % sie stehen sollen (Ausnahme ist das Iota subscriptum, das an den % Buchstaben angeh"angt wird). In Kombination wird der Spiritus vor den % Akzent geschrieben. % % \medskip % % \begin{center} % \begin{tabular}{|l|c|c|} \hline % Akzent & Beispiel & Eingabe \\ \hline % Zirkumflex &\bgr m~hnis \egr&\verb+m~hnis+ \\ % Akut &\bgr teiqomaq'ia \egr&\verb+teiqomaq'ia+\\ % Gravis &\bgr Di`os >ap'ath \egr&\verb+Di`os+ \\ % Spiritus asper &\bgr ap'orrhsis \egr&\verb+>ap'orrhsis+\\ % Diaeresis &\bgr >Atre"'idhs \egr&\verb+>Atre"'idhs+\\ \hline % Iota subscriptum &\bgr >~ajla >ep`i Patr'oklw|\egr&\verb+>~ajla Patr'oklw|+ \\ \hline % \end{tabular} % \end{center} % % \StopEventually{} % % \subsection{levy.sty f"ur \LaTeXe} % % Die Datei \verb+levy.sty+ besteht aus zwei Teilen: Der erste Teil % enth"alt eine modifizierte Version von Levy's \verb+greekmac.tex+. % Alle "Anderungen gegen"uber der Originaldatei sind mit % {\glqq}\texttt{!!!}{\grqq} gekennzeichnet. % % Der zweite Teil enth"alt die Anpassungen und Erweiterungen, die % f"ur \LaTeXe{} ben"otigt werden. % % \begin{macrocode} %<*package> \NeedsTeXFormat{LaTeX2e} \message{Package `levy', 1995/04/20 v1.0a} \ProvidesPackage{levy}[1995/04/20 v1.0a % Package for writing greek texts (AdaF)] % \end{macrocode} % % \subsubsection{greekmac.tex} % % \begin{macrocode} %------------------------------------------------- % !!! Hier beginnt `greekmac.tex' von Silvio Levy %------------------------------------------------- \def\ifnextchar#1#2#3{\let\tempe #1\def\tempa{#2}\def\tempb{#3}\futurelet \tempc\ifnch} \def\ifnch{\ifx\tempc\tempe\let\tempd\tempa\else\let\tempd\tempb\fi\tempd} \def\gobble#1{} % !!! hier 3 Zeilen gesperrt und ersetzt % \font\tengr=grreg10 % \font\tengrbf=grbld10 % \font\tengrtt=grtt10 % \end{macrocode} % \begin{macro}{\greek} % Mit der Anweisung \verb+\greek+ kann zur griechischen Schriftfamilie % umgeschaltet werden (wird z.B.{} f"ur "Uberschriften gebraucht; % siehe Beispiel). % \begin{macrocode} \def\d@greek{\fontencoding{U}\fontfamily{levy}\selectfont} \def\greek#1{{\d@greek #1}} % \end{macrocode} % \end{macro} % \begin{macrocode} \def\greekmode{% \catcode`\<=13 \catcode`\>=13 \catcode`\'=11 \catcode`\`=11 \catcode`\~=11 \catcode`\"=11 \catcode`\|=11 \lccode`\<=`\<% \lccode`\>=`\>% \lccode`\'=`\'% \lccode`\`=`\`% \lccode`\~=`\~% \lccode`\"=`\"% \lccode`\|=`\|% % !!! hier 1 Zeile geaendert: % \tengr\def\bf{\tengrbf}\def\tt{\tengrtt} \d@greek } \newcount\vwl \newcount\acct \def\lt{<} \def\gt{>} { \greekmode \gdef>{\ifnextchar `{\expandafter\smoothgrave\gobble}{\char\lq\>}} \gdef<{\ifnextchar `{\expandafter\roughgrave\gobble}{\char\lq\<}} \gdef\smoothgrave#1{\acct=\rq137 \vwl=\lq#1 \dobreathinggrave} \gdef\roughgrave#1{\acct=\rq103 \vwl=\lq#1 \dobreathinggrave} \gdef\dobreathinggrave{\ifnum\vwl\lt\rq140 %if uppercase \char\the\acct\char\the\vwl\else\expandafter\testiota\fi} \gdef\testiota{\ifnextchar |{\addiota\doaccent\gobble}{\doaccent}} \gdef\addiota{\ifnum\vwl=\lq a\vwl=\rq370 \else\ifnum\vwl=\lq h\vwl=\rq371 \else\vwl=\rq372 \fi\fi} \gdef\doaccent{\accent\the\acct \char\the\vwl\relax} } \newif\ifgreek\greekfalse \def\begingreek{\bgroup\greektrue\greekmode} \def\endgreek{\egroup} % \end{macrocode} % % \begin{macro}{\greekdelims} % Statt mit \verb+\begingreek+ und \verb+\endgreek+ kann man % auch mit \verb+$+ arbeiten. Dazu mu"s mit dem Kommando % \verb+\greekdelims+ diese neue Funktion aktiviert werden: % \begin{macrocode} \let\math=$ {\catcode`\$=13 \gdef\greekdelims{\catcode`\$=13 \def${\ifgreek\endgreek\else\begingreek\fi} \def\display{\math\math}\def\enddisplay{\math\math}}} %--------------------------------------------------- % !!! Hier endet `greekmac.tex' von Silvio Levy %--------------------------------------------------- % \end{macrocode} % \end{macro} % % \subsubsection{Erweiterungen f"ur \LaTeXe} % % \begin{macro}{\bgr, \egr} % Im Text kann mit dem Kommando \verb+\bgr+ (Kurzform von % \verb+\begingreek+) zum griechischen Zeichensatz gewechselt % werden, der mit \verb+\egr+ (Kurzform von \verb+\endgreek+) % beendet wird. % \begin{macrocode} \def\bgr{\begingreek} \def\egr{\endgreek} % \end{macrocode} % \end{macro} % % \noindent Mit der Anweisung \verb+\bgr+ wird automatisch der % zum aktuellen Font entsprechende griechische aufgerufen. Den % {\glq}normalen{\grq} Font erh"alt man mit \verb+\textgr{...}+, % den \textbf{fetten} mit \verb+\textgb{...}+, die typewriter-Version % mit \verb+\textgt{...}+ (Innerhalb des greekmode funktionieren % auch \verb+\textbf{...}+ und \verb+\texttt{...}+). % % \begin{macrocode} \def\d@gr{\usefont{U}{levy}{m}{n}} \def\textgr#1{{\d@gr #1}} \def\d@gb{\usefont{U}{levy}{b}{n}} \def\textgb#1{{\d@gb #1}} \def\d@gt{\usefont{U}{levyt}{m}{n}} \def\textgt#1{{\d@gt #1}} % \end{macrocode} % % Das im Zeichensatz von S.~Levy fehlende Digamma kann mit dem % Kommando \verb+\dig+ erzeugt werden: % % \begin{macrocode} \def\dig{\textsf{F}} % \end{macrocode} % % Fette Schrift ist b statt bx: % % \begin{macrocode} \renewcommand{\bfdefault}{b} % \end{macrocode} % % In S.~Levy's Datei \verb+use.dvi+ ist beschrieben, da"s es bei % griechischem Text in Boxen zu Problemen kommen kann. Dies % betrifft neben den Fu"snoten z.B.{} die "Uberschriften. Der % Grund daf"ur liegt in der \LaTeX-Eigenschaft, innerhalb einer % Box keinen \verb+\catcode+-Wechsel mehr zuzulassen (was f"ur % \TeX{} kein Problem darstellt). % % \begin{macro}{\bfn, \efn} % Eine m"ogliche L"osung dieses Problems besteht f"ur Fu"snoten % darin, da"s man statt \verb+\footnote{Text}+ jetzt % \verb+\bfn Text\efn+ schreibt. Dahinter verbirgt sich % folgender Code: % % \begin{macrocode} \newbox\fnbox \def\bfn{\setbox\fnbox=\hbox\bgroup\footnotesize} \def\efn{\egroup\footnote{\unhbox\fnbox}} % \end{macrocode} % \end{macro} % % \begin{macro}{\grsection usw.} % Bei "Uberschriften mit griechischem Text gilt es % drei Punkte zu beachten: (1) Vor der "Uberschrift mu"s % mit \verb+\bgr+ in den \verb+greekmode+ geschaltet werden, der % nach der "Uberschrift wieder beendet werden mu"s. (2) Die % "Uberschrift mu"s mit \verb+\gr...+-Vorsatz aufgerufen werden, also % z.B. \verb+\grsection{...}+ statt \verb+\section{...}+. (3) Tritt % innerhalb der "Uberschrift ein Spiritus (\verb+>+ oder \verb+<+) % auf, so mu"s dieser mit \verb+\protect+ gesch"utzt werden. Das % Beispiel % % \begin{verbatim} % \bgr % \grsubsubsection{Text: \greek{\protect~ix}} % \egr % \end{verbatim} % ergibt: % \bgr % \grsubsubsection{Text: \greek{\protect~ix}} % \egr % % \noindent Entsprechendes gilt f"ur die anderen "Uberschriften: % \verb+\grpart+, \verb+\grchapter+, \verb+\grsection+, % \verb+\grsubsection+, \verb+\grsubsubsection+ usw. Der Code % dazu sieht so aus: % % \bigskip % % \begin{macrocode} \newcommand{\grpart}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \part{#1}\addtocontents{toc}{\endgroup}} \newcommand{\grchapter}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \chapter{#1}\addtocontents{toc}{\endgroup}} \newcommand{\grsection}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \section{#1}\addtocontents{toc}{\endgroup}} \newcommand{\grsubsection}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \subsection{#1}\addtocontents{toc}{\endgroup}} \newcommand{\grsubsubsection}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \subsubsection{#1}\addtocontents{toc}{\endgroup}} \newcommand{\grparagraph}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \paragraph{#1}\addtocontents{toc}{\endgroup}} \newcommand{\grsubparagraph}[1]{\IfFileExists{\jobname.toc}% {\addtocontents{toc}{\begingroup\protect\greekmode\rmfamily}}{}% \subparagraph{#1}\addtocontents{toc}{\endgroup}} % \end{macrocode} % \end{macro} % % \begin{macrocode} % % \end{macrocode} % % \subsection{ulevy.fd} % % Die Fonts sind in der Datei \texttt{ulevy.fd} definiert: % % \begin{macrocode} %<*levyfd> \ProvidesFile{Ulevy.fd}[1995/04/20 v1.0a Levy's Greek Fonts] \DeclareFontFamily{U}{levy}{} \DeclareFontShape{U}{levy}{m}{n}{% <8> grreg8 <9> grreg9 <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> grreg10 }{} \DeclareFontShape{U}{levy}{b}{n}{% <8> grbld8 <9> grbld9 <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> grbld10 }{} \DeclareFontFamily{U}{levyt}{}{} \DeclareFontShape{U}{levyt}{m}{n}{% <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> grtt10 }{} % % \end{macrocode} % % \subsection{Beispiel} % % Das folgende Beispiel zeigt die Eingabe und das Ergebnis: % % \begin{macrocode} %<*odyssee> \begin{center} \bgr\textbf{ODUSSEIAS\hspace{1em}I}\egr \end{center} \begin{verse} \bgr t`on d'' >apameib'omenos pros'efh pol'umhtis >Odusse'us; \\ ((>Alk'inoe kre~ion, p'antwn >aride'ikete la~wn, \\ >~h toi m`en t'ode kal`on >akou'emen >est`in >aoido~u \\ toio~ud'' o<~ios <'od'' >est'i, jeo~is >enal'igkios a>ud'hn. \\ o>u g`ar >eg'w g'e t'i fhmi t'elos qari'esteron e>~inai \\ >'h <'ot'' >`an >e"ufros'unh m`en >'eqh| kat`a d~hmon <'apanta, \\ daitum'ones d'' >an`a d'wmat'' >akou'azwntai >aoido~u \\ <'hmenoi ek krht~hros >af'usswn \\ o>inoq'oos for'eh|si ka`i >egqe'ih| dep'aessin; \\ to~ut'o t'i moi k'alliston >en`i fres`in e>'idetai e>~inai. \\ \dots)) \\ \egr \end{verse} hier noch ein Beispiel mit "Uberschrift und Fu"snote: \bgr \grsubsection{Musai \greek{Mo~usai}} \egr \noindent dorisch \bgr M~wsa\egr, "aolisch \bgr Mo~isa\egr, $<$ *mont(h)ia zu lateinisch \textsl{mens}, die {\flq}Sinnende{\frq} oder {\flq}Erinnernde{\frq}\bfn Aus: Artikel \bgr\textgb{Mo~usa}\egr, Der kleine Pauly 3, 1975, 1475.\efn {\dots} Die Umschaltung funktioniert auch mit \verb+$+, wenn man zuvor \verb+\greekdelims+ aufgerufen hat:\greekdelims Text$Mo~usa$Text. % % \end{macrocode} % % \Finale \endinput