%&latex
\documentclass[12pt]{article}
\usepackage{epsf,zmtmnt,makor}
\parindent=18pt 
\input colordvi
%\def\Gray#1{#1}
\let\MyColor=\Gray
\let\InnerColor=\Yellow

\def\mycenterline#1{\hbox to\textwidth{\hss#1\hss}}
\bbbbbbbb
\def\LINE#1{\hbox to\hsize{\hss#1\hss}}
\def\smallen{\endgraf 
	\bgroup\fontsize{9}{11}\selectfont}% to make verbatim type
					       % smaller!
\def\endsmallen{\egroup\medskip\noindent}

\newif\ifIHaveHadassahFonts
\IHaveHadassahFontsfalse % default
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% COMMENT OUT THE NEXT LINE IF YOU DON'T HAVE HADASSAH FONTS:
%%
	\IHaveHadassahFontstrue
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newdimen\HSIZE \HSIZE=10pt
\hfontdef{OSH}{ohebrmm}{\HSIZE}
\hfontdef{SIL}{ezramm}{\HSIZE}\declarehdefault{SIL}
\hfontdef{SILI}{ezraimm}{\HSIZE}
\hfontdef{SILB}{ezrabmm}{\HSIZE}
\hfontdef{SILBI}{ezrabimm}{\HSIZE}
\hfontdef{SILO}{ezraomm}{\HSIZE}
\hfontdef{RSH}{rashimm}{.8\HSIZE}
\hfontdef{RSHB}{rashbmm}{.8\HSIZE}
\ifIHaveHadassahFonts
	\hfontdef{HAD}{hadassahmm}{1.2\HSIZE}
	\hfontdef{HADI}{hadassaimm}{1.2\HSIZE}
	\hfontdef{HADB}{hadassabmm}{1.2\HSIZE}
	\hfontdef{HADBI}{hadassbimm}{1.2\HSIZE}
	\hfontdef{HHMMRR}{hadassabmm}{34pt}
	\hfontdef{XX}{hadassahmm}{12pt}
	\hfontdef{XB}{hadassabmm}{9pt}
	\hfontdef{XXB}{hadassabmm}{11pt}
	\hfontdef{XXBB}{hadassabmm}{18pt}
\else
	\hfontdef{HAD}{ezramm}{1.2\HSIZE}
	\hfontdef{HADI}{ezraimm}{1.2\HSIZE}
	\hfontdef{HADB}{ezrabmm}{1.2\HSIZE}
	\hfontdef{HADBI}{ezrabimm}{1.2\HSIZE}
	\hfontdef{HHMMRR}{ezrabmm}{34pt}
	\hfontdef{XX}{ezramm}{12pt}
	\hfontdef{XB}{ezrabmm}{9pt}
	\hfontdef{XXB}{ezrabmm}{11pt}
	\hfontdef{XXBB}{ezrabmm}{18pt}
\fi

\hfontdef{hmr}{ohebrmm}{12pt}
\hfontdef{HMR}{ohebrmm}{15pt}
\hfontdef{3}{ohebrmm}{.9\HSIZE}
\hfontdef{4}{ohebrmm}{\HSIZE}
\hfontdef{6}{ohebrmm}{2\HSIZE}
{\MAKEEXCLAMLETTER\!makevowelsactive\!gdf\MKR{mqOr}}

\def\TETRAGRAMMATON{ydwd}

\title{\bf Makor:\\
A System for Typesetting Hebrew\\
with \protect\TeX\\[2pc]Installation and User Guide}
\author{Alan Hoenig
	\\Department of Mathematics
	\\John Jay College, City University of New York\\
	{\tt ahoenig@suffolk.lib.ny.us}}
\date\today

\begin{document}
\pagestyle{empty}
%%Title: ./koheleth.pdf
%%Creator: ebb Version 0.5.2
%%BoundingBox: 0 0 612 792
%%CreationDate: Mon Dec 24 17:42:22 2001
\null
\newdimen\FONTSIZE \FONTSIZE=108pt 
\hfontdef{BIG}{ezrabmm}{\FONTSIZE}
\hfontdef{OLN}{ezraomm}{\FONTSIZE}
\setbox0=\hbox{\[\hfont{BIG}mqwr\]}
\setbox2=\hbox{\[\hfont{OLN}mqwr\]}
\newbox\mkrbox
\setbox\mkrbox=\hbox{\rlap{\InnerColor{\box0}}\MyColor{\box2}}
\setbox0=\hbox{}\wd0=612bp\ht0=792bp
	\setbox0=\vbox{\hbox to 8.5in{\hss\hskip18pt\box\mkrbox\hss}%
		\vskip-3in\vskip-8pt\noindent
		\special{pdf: epdf width 8.5in (koheleth.pdf)}\box0}
\vbox to\textheight{\null
\vskip5pc
\noindent\hskip-1.5in\box0\vss}

\maketitle
\pagestyle{plain}\setcounter{page}{1}

\tableofcontents
\listoffigures
\listoftables

\[\GDEF\HTES{laukhaen chakoo-liy n'`um-ydwd l'yOm qoomiy l'``ad kiy 
mish^'pautiy l|e`:esof gOyim l'qauv'tsiy mam'laukhOs^ lish^pokh^'
``:alaeyhem za``'miy kol x:arOn `apiy kiy b'`eish^ qin'`aus^iy
t^|"`+khael k+l-h+`|+rets\:}\GDEF\HTEST{\HTES\ \CXLV[ts'fan'yauh g\:ch]}\]

This document provides an initial description of the Makor system for
typesetting Hebrew within \TeX\ and \LaTeX.  Before reading any
further, please page through these pages and look at the Hebrew
typesetting in the examples.  {\it All the Hebrew typesetting in this
manual was done with Makor}, although that does not mean those samples
were necessarily easy.  Anyway, if these examples are irrelevant to
you, there's no need to further waste your time.

\section{A Plea for assistance}
I hope that the Makor software will prove useful to authors who try it
out, but of course there is no warranty or guarantee of any kind. The
material distributed currently includes special fonts, macros, and
this guide.  Eventually, I hope to include more fonts, a Perl program
for creating Makor fonts, and several enhanced user guides.  

In the meantime, Makor is in a state of development, and I need {\em your\/}
feedback in order to make changes that are features, not bugs.  In
particular, here's what I need from users like you:
\begin{enumerate}
\item any errors or confusing bits in this document;
\item any bugs in the software;
\item any improvements in the input conventions (that is, what you
have to type in English to get Hebrew output);
\item places you know to get more fonts (There are lots of free Hebrew
fonts on the Web, but essentially all of them are no good.  Either the
fonts contain ugly letterforms, or the fonts are incomplete.  A raw
font for Makor must contains all basic characters, all
dagesh---dotted---forms, and all vowels); and
\item anything else I might need to Makor better!
\end{enumerate}

\section{Features of Makor}
With Makor, authors enter Hebrew text using an intuitive keyboard
interface.  Text can be fully vocalized or not; vowels can be turned
on or off with a software switch.  These vowels are
centered---automatically---for each different letter.  Final
letterforms are selected automatically.  In general, any digital fonts
will work with Makor, but it takes considerable tinkering to prepare
each font properly.  Currently, Makor comes equipped to work with
several variants of fonts called Rashi, OmegaSerif (similar to David
or David Light), SIL Ezra, and MasterFont Hadassah.

\begin{figure}
\[way*aumaus^ sh^aum mosh^eh  ``eved-\TETRAGRAMMATON\ b'`erets mO`aud
``al-piy \TETRAGRAMMATON\COLON\   
way*iq'bor `o{}s^O vag*ay b'`erets mO`auv
mool baeys^ p'``Or w'lo`-yauda`` `iysh^ `es^-q'vuraus^O ``ad hay*Om
haz*eh\COLON\   
oomosh^eh ben-mae`auh w'``e^s'riym sh^aunauh b'mo{}s^O
l'`-khauh:as^auh ``aeynO w'lo`-naus laech|oh\COLON\   
way*iv'koo v'naey
yi^s'rau`ael `es^-mosh^eh b'``ar'vo{}s^ mO`auv sh^'losh^iym yOm way*it^'moo
y'maey v'khiy `aevel mosh^|eh\COLON\   
w|iyhOsh^u_a`` bin-noon maulae`
roo_ach chaukh'mauh k|iy-saumakh^' mosh^eh `es^-yaudauyw ``aulauyw
way*ish^'m'``oo `aelauyw b'n|"y-yi^s'rau`ael way*|a``:a^soo k|a`:ash^er
tsiw*auh \TETRAGRAMMATON\ `es^-mosh^|eh\COLON\ 
w'lo`-qaum nauviy` ``Od b'yi^s'rau`ael k'mosh^eh `:ash^er y'dau``O
\TETRAGRAMMATON\ pauniym `el-pauniym\COLON\ 
l'khaul-hau`o{}s^o{}s^ w'ham*|Of's^iym `|ash^er sh^'lauchO
\TETRAGRAMMATON\ l|a``:a^sOs^ b'`erets mits'rauyim l'far'``oh
ool'khaul-``:avaudauyw ool'khaul-`ar'ts|O\COLON\ 
ool'khol hay*aud h|ach:azauqauh ool'khol ham*Orau` hagaudOl `:ash^er
``au^sauh mosh^eh l'``aenaey kaul-yi^s'rau`|"l\COLON\PAR\]
\caption{\label{devarim}Fully vocalized Makor output.}
\end{figure}

Makor uses the \TeX\ typesetting engine to perform the actual
typesetting.  It works both with plain \TeX\ and with \LaTeX; in fact,
this document you're reading was produced with \LaTeX.

\subsection{A Word about \TeX\ and \LaTeX}
I don't believe too much knowledge of the \TeX\ or \LaTeX\ systems is
necessary to read and understand this document.  Nevertheless, if
you're new to \TeX, you need to be aware that this system is
fundamentally different from any of the standard publishing/word 
processing packages you may be used to.  It's easy to make \TeX\ do
easy things, and challenging to produce more difficult documents.  A
good short introduction to \TeX\ and \LaTeX\ are provided in the
appendices to \cite{hoenig}, which also lists other sources and
resources.  On a less costly basis, some the guides such as Michael
Doob's {\tt gentle.tex} (``A Gentle Introduction to \TeX'') and {\tt
short.tex} (``A Short Guide to \LaTeX'') are both available from {\tt
www.ctan.org}. 

%% Beginning the Talmud typesetting...
\setbox9=\vbox{\hsize=6.5in%
%% NEW registers
\newdimen\hfontsize \hfontsize=6pt
\newdimen\smallfontsize \smallfontsize=.8\hfontsize
\newdimen\tinyfontsize \tinyfontsize=.8\smallfontsize
\newdimen\notegap \notegap=1pc
\newdimen\lunit \lunit=14pt
\newbox\mishnah \newbox\leftbox \newbox\rightbox
\newdimen\mshnhsize \mshnhsize=.4\hsize
\newdimen\centergap \centergap=1.5pc
\newbox\fourbox
%% Font def's and macros
\hfontdef{rsh}{rashimm}{\hfontsize}\declarehdefault{rsh}
\hfontdef{brsh}{rashbmm}{\hfontsize}
\hfontdef{SMALLRSH}{rashimm}{\smallfontsize}
\hfontdef{TINYRASHI}{rashimm}{\tinyfontsize}
\hfontdef{hrm}{ezramm}{10pt}
\hfontdef{lhrm}{ezramm}{15pt}
\hfontdef{SMALLEZRA}{ezramm}{8pt}
\hfontdef{BRSH}{ezrabmm}{32pt}
\def\rashistrutdepth{6pt}
\def\RIGHTHMARGINALNOTE#1{\strut
	\vadjust{\kern-\rashistrutdepth\RIGHTMARGINALSPECIAL{#1}}}
\def\RIGHTMARGINALSPECIAL#1{\vtop to \rashistrutdepth{%
	\baselineskip=\rashistrutdepth
        \vss\rlap{\hskip\hsize\hskip\notegap #1}\null}}
\def\LEFTHMARGINALNOTE#1{\strut
	\vadjust{\kern-\rashistrutdepth\LEFTMARGINALSPECIAL{#1}}}
\def\LEFTMARGINALSPECIAL#1{\vtop to \rashistrutdepth{%
	\baselineskip=\rashistrutdepth
        \vss\llap{#1}\null}}
\def\CDOT{\raise.6ex\hbox to.6ex{\hss.\hss\hss}}
\def\GM{gm\NOBOUNDARY\'}
\def\Boxme#1#2#3{\setbox0=\hbox{\hskip#1#3\hskip#1}%
   \setbox0=\vbox{\vskip#2\box0\vskip#2}%
   \boxme{\box0}}
\def\Olap#1#2{\raise#1\hbox to0pt{\hss#2\hss}}
%% The typesetting begins...
\setbox\mishnah=\vtop\bgroup\hsize=\mshnhsize\noindent \let\\=\relax
\tolerance=9500 \Vthickness=.8pt
\Boxme{.25pc}{.25pc}{\Boxme{.25pc}{.25pc}{\Boxme{.25pc}{.25pc}{\Boxme{19.25pt}{.25pc}{\[\CXLV\hfont{BRSH}`ar'b+``+h\]}}}}\vskip2pt\noindent
	\baselineskip=16pt\[\Hfont{hrm}%
`:avOs^ n'ziyqiyn, hash^*Or w'habOr w'ham*av'``eh 
w'hahev'``aer. lo` h:araey hash^*Or kah:araey ham*av'``eh, w'lo`
h:araey ham*av'``eh kah:araey hash^*Or, w'lo` zeh w+zeh sh^ey*aesh^
bauhen r|oo_ach chay*iym, kah:araey hau`aesh^ sh^e`aeyn bO r|oo_ach
chay*iym, w'lo` zeh wauzeh sh^ed*ar'kaun laeylaekh^' ool'haz*iyq.
hats*ad hash^auweh sh^ebauhen sh^ed*ar'kaun l'haz*iyq oosh'miyraus^aun
``aul|eykh^+, ookh'sh^ehiz*iyq chav ham*az*iyq l'sh^alaem
t^ash^'{l}oomaey n|ezeq b'maeytav hau`|+rets\:\  {\hfont{lhrm}\GM}
mdqs^ny `vws^ mkhll d`kh` s^wldws^.\HPAR\]
\egroup
\dimen0=\dp\mishnah \advance\dimen0 by\ht\mishnah
%
\setbox\fourbox=\hbox{\[\hfont{lhrm}`rv``h\EXEC{\hskip4pt}\]}%
%
\dimen2=\hsize \advance\dimen2 by-\mshnhsize 
%
\dimen4=-.5\mshnhsize \advance\dimen4 by-.5\centergap
\dimen3=-\dimen4 \advance\dimen3 by.5\hsize
\setbox\rightbox=\vtop{\hsize=.5\hsize \leftskip=.5\centergap 
\baselineskip=\lunit
\tolerance=11000 \dimen0=\hsize \advance\dimen0 by-\wd\fourbox
\parshape=20 
0pt \dimen0 0pt \dimen0 % top 2 lines
0pt \hsize 0pt \hsize
.5\mshnhsize .5\dimen2  .5\mshnhsize .5\dimen2 % next 2 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
.5\mshnhsize .5\dimen2  % next 15 lines
0pt \hsize % 16th line
%\dimen4 \dimen3% 16th line
\hyphenpenalty=11000
\noindent\[\CXLV\EXEC{\noindent
\llap{\lower4pt\copy\fourbox}}{\hfont{brsh}`vOs^ 
nzyqyn\CDOT}`vws^ qry lhnkh
dkhs^yvn vqr` bhdy`.  wvgmr` mfrsh hy zyhw s^wldws^\: 
{\hfont{brsh}hshwr whbwr kw\'\CDOT}ksdr shhn ks^wbyn bprshh sdrn
bmshnh.  dprshh r`shwnh n`mrh bshwr shnyh bbwr\:
{\hfont{brsh}mv``h\CDOT}mfrsh bgm\NOBOUNDARY\'\: {\hfont{brsh}hb``r\CDOT}\ 
ky s^ts\NOBOUNDARY`
`sh\: {\hfont{brsh}l` hry hshwr khry hmv``h\CDOT}klOmr  `y kt^v rchmn`
l` npiq mv``h mynyh w`mtoo lhkhy `ytstrikhoo lmykht^v wlhkhy nqt
brysh` khhry hmv``h wl` nqt lhoo khsdr l` hry hshwr khhry hbwr  mshoom
dt^oo l` hwy mtsy lmyt^ny l` zh wzh shysh bhn rooch chyym w``Od t``m`
`xryn` dh` 
rboos^` `shm``ynn sh`{}``{}\"g shysh lshnyhm rooch chyym l` nfyq
chd mchvryh wvgm\NOBOUNDARY\' mfrsh m`y l` hry dq`mr\: {\hfont{brsh}k\NOBOUNDARY{}hry h`aesh
sh`yn bO rooach chayyim\CDOT}w`y l` chat^vyh rachmoneh 
hoo` chemiyna` \RIGHTHMARGINALNOTE{\[\hfont{TINYRASHI}shqlym ch.\]}
liypataer\: {\hfont{brsh}lo` zeh wauzeh kw\'\CDOT}`lw shlsht^n drkn
lylkh wlhzyq\:\ \ {\hfont{brsh}hatsad\ hashwh\ kw\'\CDOT}mfresh bgm\NOBOUNDARY\'
l`s^wyy m`y\: {\hfont{brsh}bmytv hau`aurets\CDOT}m``ydis^ nkhsyw ygbh
dmy hziqw `m rOtseh lfrO`` l` qarqa``\:
{\hfont{lhrm}\GM\ }{\hfont{brsh}xt`s^\CDOT} bshOgg\:
{\hfont{brsh}sqylh\CDOT} bmzyd\: {\hfont{brsh}`y ``vyd shs^y
`vOs^\CDOT}bshOgg\: {\hfont{brsh}mychyyv\CDOT} s^rt^y xt`Os^\:
{\hfont{brsh} l` myxyyv `l` xd`\CDOT}`{}`v ml`khh `vl `s^Oldh dydyh l`
myxyyv\:\ \ {\hfont{brsh}wlr\"`\ dmxyyv\ s^rs^y kO\'\CDOT} d`y 
``vyd `v\RIGHTHMARGINALNOTE{\[\hfont{TINYRASHI}\CXLV krys^Os^ b\:\]}
ws^Oldh dydyh mxyyv t^rt^y xt`Os^ bms\'\ khrys^Os^ bp\'\ `mroo lO (
{\hfont{SMALLRSH}df tz.} ) kOlhO `vOs^ ml`kOs^ mmshkhn gmrynn lhoo
bmsks^ shbs^ ({\hfont{SMALLRSH}daf mt\: }) \:
\CENTERLASTLINE
\]}%
%
\setbox\leftbox=\vtop{\hsize=.5\hsize \rightskip=.5\centergap 
\baselineskip=\lunit
\tolerance=11000 \dimen0=\hsize \advance\dimen0 by-\wd\fourbox
\dimen8=2\hsize \advance\dimen8 by\rightskip
\parshape=25
0pt \dimen0 % Top 2 lines
0pt \dimen0
0pt \hsize 0pt \hsize
0pt .5\dimen2 % next 15 lines
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt \hsize %next 5 lines
0pt \hsize 
0pt \hsize 
0pt \hsize 
0pt \hsize  
0pt \dimen8 % final line spec
\noindent\[\CXLV\EXEC{\noindent\llap{\lower4pt\copy\fourbox}}
{\hfont{brsh}`vOs^ n'ziyqiyn\CDOT}`ys^ dOkhs^` dl` t^niy haen kmO hkh`
oovgmr` gby shlsh ``^srh `vOs^ nzyqyn oov`rb``h mchoosry 
khfrh ({\hfont{SMALLRSH}khrys^Os^ daf x\:})
w`ys^ dwkhs^` dqs^ny hn khdqs^ny `rb``h shwmryn hn
({\hfont{SMALLRSH}shvw``ws^ d\' mt\CDOT}) w`rb``h r`shy shnym hn
({\hfont{SMALLRSH}r\"h d\' v\CDOT wshm})\:
({\hfont{SMALLRSH}glywn}\CDOT w`\"s^ `m`y l` q`mr `rb``h `vws^ nzyqyn
hn khdqs^ny d\' r`shy shnym hn wy\"l shl` b` `l` lhgyd `rb``h `vws^
hllw l`y zh chr`y zh wqtss^ qshh dvgmr` mwkhch dnkhys^ s^n` lmnyyn`
mdfrykh ws^n` dydn m`y t``m` l` s^ny hny lkhkh y\"l dysh mqwmws^ dl`
s^ny hn khd`skhchn v`rv``h mchwsry khfrh\"\CDOT\
{\hfont{SMALLRSH}``\"h})\:
\CENTERLASTLINE\]

\setbox\fourbox=\hbox{\[\hfont{lhrm}hshwr\EXEC{\hskip4pt}\]}
\dimen0=.5\dimen2 \advance\dimen0 by-\wd\fourbox
\tolerance=11000 \hyphenpenalty=10000 \parshape=14
%% 0pt \dimen0 % Top 2 lines
%% 0pt \dimen0
%% 0pt \hsize 0pt \hsize % next 2 lines
%% 0pt .5\dimen2 % next 15 lines
%% 0pt .5\dimen2 
%% 0pt .5\dimen2 
%% 0pt .5\dimen2 
%% 0pt .5\dimen2 
%% 0pt .5\dimen2 
%% 0pt .5\dimen2 
0pt \dimen0
0pt \dimen0
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt .5\dimen2 
0pt \hsize %next 5 lines
0pt \hsize 
0pt \hsize 
0pt \hsize 
0pt \hsize 
0pt \dimen8 % final line spec
\noindent\[\CXLV\EXEC{\noindent\llap{\lower4pt\copy\fourbox}}whvwr\CDOT
fyrwsh vqwntrs khsdr shnkhs^vw vfrshh sdrn bmshnh w`f ``l gv dlm\"d s^n`
shwr lrglw l` hwy khsdr hfrshh drgl nfq` ln mwshlx `s^ v``yrh dkhs^yv
vs^r vwh m\"m\NOBOUNDARY\ shm shwr khs^yv qwdm vfrshh dhyynw ngykhh dqrn
wlm\"d mb``h zh `dm `{}``\"g dlvs^r hv``rh khs^yv bfrshs^ `mwr mkhh bhmh
`shlmnh dhyynw `dm d`zyq shwr l` chm lshnws^w khsdr hfrshh lfy shrxwq
khl khkh wshn`w khsdr l` hry dsyf` shmv``h qwdm lhv``r% wr\"s^ fy\'
%dshm `dm ks^yv vbrshh qOdm ky ygnOv `ysh shOr whw` `chd m`vOs^ nzyqyn
%dqs^ny lh bbryys^`% bgmr`
\:\CENTERLASTLINE\]

\setbox\fourbox=\hbox{\[\hfont{lhrm}l`\EXEC{\hskip4pt}\]}
\dimen0=\hsize \advance\dimen0 by-\wd\fourbox
\tolerance=11000 \hyphenpenalty=10000 \parshape=3
0pt \dimen0 0pt \dimen0
0pt \dimen8
\noindent\[\CXLV\EXEC{\noindent\llap{\lower4pt\copy\fourbox}}%
hry hshwr khry hmb``h\CDOT\ pyroosh `yn qOls^O shel shOr k'qOl's^O
shel mmb``h kdmfrsh lqmn vgm\NOBOUNDARY\' lm\NOBOUNDARY\"d s^n` shOr
lqrnO oomv``h lshynO mshoom dshOR kwwns^O lhzyq oomv``h `yn kwwns^O
lhzyq oolfykk `y ks^v rxmn` shOr l` `s^y mb``h mynh shhoo` qal mynh
w`yn pyrooshO ksh`r mqOmOs^ shbs^lmood l` r`y zeh dhs^m pyrooshO `yn
xoomr` shel seh kxoomr` shel zeh wlkk `yn hxoomrOs^ gOrmOs^ zeh hdyn
`l` htsad hshwh shebauhen gOrem hdyn hdiyn wshynh k`n hs^lmood
pyrooshO mbsh`r mqOmOs^ m'shoom dhzkyr hchmOr s^chylh bl` zeh wzeh
sheyaesh bauhen rooach chayyim\:\CENTERLASTLINE\]

\setbox\fourbox=\hbox{\[\hfont{lhrm}wl`\EXEC{\hskip4pt}\]}
\dimen0=\dimen8 \advance\dimen0 by-\wd\fourbox
\tolerance=11000 \hyphenpenalty=10000 
\parshape=3
0pt \dimen0 0pt \dimen0
0pt \dimen8
\noindent\[\CXLV\EXEC{\noindent\llap{\lower4pt\copy\fourbox}}%
zeh wazeh shysh bhn rooach chayyim khhry h`sh\CDOT\ gby shOr oomv``h
l` hOtsrkh lfrsh hchoomr` ky hkh` mshoom dchd mchd qaul lmtsO` choomr
b`chd mh sh`yn bchvyrO wh` dl` t^ny hkh` l` hry h`sh khry hshOr
oomv``h kdqt^ny l``yl l` hry hmv``h khry hshOr mshoom shelo` hyh ykhOl
lmtsO` chOmr` mh sh`yn bshnyhm d`y mshoom dkhch `chr m``oorv bO w`yn
hOlkh ld``s^O kmO shOrO `yn zeh choomr` mdl` chshyv lh gby choomr
bhm mvshOr wh` d`myrn lqmn ({\hfont{SMALLRSH}df g\: wdf w.}) gby `vnO
wskhynO m`y shn` `sh dchkh `chr m``Orv bO w`yn hOlkh ld``s^O h\"q m`y
shn` `sh sh`{}``\"f shkhch `chr m``oorv bO r`wy lhs^chyyv bO mshoom
shhO` mmOnkh wshmyrs^O khO\' oovsyf` gby bOr hwh mtsy lmymr l` hry
hbOr shs^chyls^ ``shyys^O lnzq\CENTERLASTLINE\]}%

\setbox\fourbox=\vbox{\baselineskip=8pt
	\hbox{\[\hfont{SMALLEZRA}msOrs^\]}%
	\hbox{\[\hfont{SMALLEZRA}hsh\"s\]}}
\noindent\hbox to\hsize{\hfont{lhrm}\rlap{v}%
	\hbox to.5\hsize{\hss\[\hfont{lhrm}vv`
	qm`\]\hss}\llap{\[\hfont{lhrm}r`shOn\]\hskip.5\centergap}%
	\rlap{\hskip.5\centergap\[\hfont{lhrm}frq\]}\hbox to.5\hsize{\hss
	\[\hfont{lhrm}`rv``h
`vOs^\]\hss\rlap{\hskip1pc\box\fourbox}}\vrule width0pt depth12pt}%

\noindent\hbox{\rlap{\box\leftbox}\hskip.5\hsize
	\Olap{-7.4\lunit}{\box\mishnah}\hskip.5\hsize\llap{\box\rightbox}}%
}% end of \box9
\begin{figure}
\noindent\hbox to\textwidth{\hss\box9\hss}
\caption[A page from the Babylonian Talmud]%
	{\label{talmud}Some more elaborate typesetting---a 
	page from the Babylonian Talmud.}
\end{figure}

\section{Goals of the Makor project}
\begin{enumerate}
\item I wanted to provide a natural 
input convention which would be close to what Americans might expect
to type to get Hebrew text.  For example, it has become common to
represent the throat-clearing gutteral sound present in Hebrew (but
not in English) by `ch'.  In Makor you type `ch' to get \[ch\], its
Hebrew equivalent.  In a similar way, I expect \TeX\ to take care of
the tedious details of deciding when to typeset final forms of certain
letters.  

Americans often type `{\tt chanukah} to get the name of the
Jewish holiday \[chanookauh\]; in Makor, we type \verb=chanookauh=.
\item I want to typeset vowels---which you can think of as diacritical
marks---properly.  In English, all diacritics are centered on their
base letter.  In Hebrew, all diacritics are centered with respect to a
visual axis of symmetry, which is different for each letter.  Makor
respects this change of axis for each letter.
\item It's natural, when reading Hebrew, to read each letter (all the
letters are consonants) and then apply the vocalization specified by
each vowel.  As a result, this implies typing in vowellized Hebrew
{\em contrary\/} to usual \TeX\ conventions---in Makor input, the base letter
precedes the vowel, rather than follows it as is normal in \TeX.
Moreover, since there are so many vowels in a word, I again seek a more
natural input language, one uncluttered by backslashes and group
symbols. 
\end{enumerate}
Even if you are not interested in Hebrew {\it per se\/}, you may find
this project of interest.  For it is an example of adapting \TeX\ to
work with a non-Latin writing system.  I hope this example is useful
for others who wish to use \TeX\ for non-Latin writing
systems.  Moreover, Makor is a good example of the use of virtual
fonts; all of the Makor fonts are heavily ``virtualized.''

Incidentally, I am optimistic that by virtue---the considerable
virtue---of virtual fonts, it would be straightforward to adapt Makor
input conventions for other language users.  Italian authors, for
example, may have other conventions for entering Hebrew, and an
Italian `dialect' of Makor could accommodate these.  In particular, I
look forward to adapting makor to Hebrew keyboards
to---presumably---make this software of use to Israeli authors.

{%\advance\hsize by-6pc
\hfontdef{QAL}{ohebrmm}{16pt}
\font\qal=mjnr9t at 7pt
\font\xxx=cmsy10 \newbox\xxxbox \newbox\xxybox
\setbox\xxxbox=\hbox{\xxx\char14}\setbox\xxybox=\hbox{\xxx\char15}
\def\DING#1{\raise#1\copy\xxxbox }% primary dingbat
\def\SDING#1{\raise#1\copy\xxybox }% secondary dingbat

%% Assume etex...
\let\beginright=\beginR \let\endright=\endR

\def\strutdepth{6pt}
\newbox\vobox \newdimen\VODIM \VODIM=0pt
\def\VOCAB#1#2{\DING{8pt}\strut\vadjust{\kern-\strutdepth\vocab{#1}{#2}}}
\def\vocab#1#2{\setbox\vobox=\hbox{\qal#2\ \pmb{\4\beginright#1\endright}}%
  \vtop to\strutdepth{%
  \baselineskip=\strutdepth\vss\rlap{\hskip\hsize\hskip1pc\DING{4pt}%
  \hskip0pt\box\vobox}\null}}
\def\SVOCAB#1#2{\strut\vadjust{\kern-\strutdepth\svocab{#1}{#2}}}
\def\svocab#1#2{\setbox\vobox=\hbox{\qal#2\ \pmb{\4\beginright#1\endright}}%
  \vtop to\strutdepth{%
  \baselineskip=\strutdepth\vss\rlap{\hskip\hsize\hskip1pc\SDING{4pt}%
  \hskip0pt\box\vobox}\null}}
\def\DVOCAB#1#2{% drop the vocab entry lower
  \strut\vadjust{\kern-\strutdepth\dvocab{#1}{#2}}}
\def\dvocab#1#2{\setbox\vobox=\hbox{\qal#2\ \pmb{\4\beginright#1\endright}}%
  \vtop to\strutdepth{%
  \baselineskip=\strutdepth\vss\phantom{\QAL``}%
  \rlap{\hskip\hsize\hskip1pc\SDING{4pt}%
  \hskip0pt\box\vobox}\null}}


\setbox4=\hbox\bgroup\[\Hfont{QAL}ch:agigiys^ hau`aeroosiyn sh^el
chayoos^auh\]%
\egroup

\setbox0=\hbox\bgroup\[\hfont{3}svywn lyvrkht\]\egroup

\begin{figure}
\centerline{\pmb{\box4}}\medskip
\centerline{\box0}\bigskip

\setbox2=\vbox{\hsize=\textwidth \advance\hsize by-1in
\[\hfont{QAL}`es^ ch:agiygas^ hau`aeroosiyn\VOCAB{`rwsyn}{ENGAGEMENT}
 sh^el chayoos^auh qauv'``oo
bim'hiyroos^, `ach:araey sh^ehats'``iyriym hOdiy``oo ``al kaukh^'
pis^'`Om lahOriym.\PAR\]

\[\hfont{QAL}ch:amiysh^auh-``au^saur yaumiym lif'naei hach:agiygauh, ``:adayin lo`
chaush^av `iysh^ ``al haboosh^auh\VOCAB{bwshh}{SHAME} 
sh^e``au{l}ool\SDING{8pt} sabauh men'd'l
l'hauviy` ``al koolaum.\PAR\DVOCAB{``lwl}{LIABLE}\]

\def\TT{\hskip2pt}
\[\hfont{QAL}koolaum hauyoo ``:asooqiym\VOCAB{``swq}{BUSY}\TT: 
``aur'khoo r'sh^iymOs^\SDING{8pt} sh^el hau`Or'chiym, hama`:akhauliym,
hakaeliym sh^eyaesh^ \SVOCAB{rshymh}{LIST}l'haukhiyn,
hash^'khaeniym sh^emookhauniym la``:azOr, hamaus^aunOs^ sh^echayoos^auh
m'vaqesh^es^ l'qabael.\PAR\]

\[\hfont{QAL}belauh, `imauh* sh^el chayoos^auh, hibiytauh babayis^
w'niv'h:alauh\VOCAB{nvhl}{BE FRIGHTENED}.
\PAR\]

\[\hfont{QAL}hak's^aumiym\VOCAB{khs^m}{STAIN} ``al badaey
hauripood\SDING{8pt} 
nir'`oo lauh* qOf'tsiym lau``ayin, 
hawiylOnOs^ k'vaur y'sh^auniym\SVOCAB{vdy rfwd}{UPHOLSTERY}, ``al n'yar haqiyr bach:adar hau`Okhel
rO`iym `es^ hasiymauniym sh^el hakis'`Os^.
\PAR\]

\[\hfont{QAL}w'khaukh^' nOs'fauh gam r'sh^iymauh sh^el ch:anooyOs^
l'vadaey ripood
ool'va``:alaey-miq'tsO``a\VOCAB{v``l-mqtsw``}{PROFESSIONAL}.
\PAR\]

\[\hfont{QAL}b's^Okh^' kaul haura``ash^ niz'k'rauh belauh sh^ehiy`
``_adayin lo` hech'liytauh `aeyzO ^sim'lauh s^aukhiyn l'``ats'mauh*
lach:agiygauh. 
\PAR\]}

\noindent\hbox to\textwidth{\box2\hss}
\caption[Typesetting a hypothetical Hebrew primer.]%
	{\label{EZhebrew}Typesetting a hypothetical Hebrew primer.  
Here, we define words at the margin, as would
be appropriate in a book for beginning language students.}
\end{figure}
}

\section{Getting and installing Makor}
\subsection{Getting the software}
The current version of Makor can always be found in the {\sc ctan}
archives.  Search for a directory named `{\tt makor}', and there you
are.  This manual, called {\tt ma\-kor\-man}, is present in several
forms---as a {\tt.tex} file, as a {\tt.dvi} file, and as a {\tt.pdf}
file.  

I encourage all potential users and authors to browse
{\tt makorman.pdf} to see if the package does what you want.  {\it
All\/} the Hebrew samples in this document are a product of Makor. 

\subsection{Installing Makor}
Do these things to get your version of \TeX\ Makor-ready.  By the way,
when we say `\TeX', we mean current version of {\it extended\/}
versions of \TeX, which you'll need for the right-to-left typesetting
part.  Common such versions are Omega, Lambda, e\TeX, e\LaTeX,
pdfe\TeX, and pdf-e\LaTeX, all available from
your neighborhood {\sc ctan} archive, among other sources.  {\em Make
sure\/} they adhere to Karl Berry's font naming convention (usually not a
problem). 

Remember, any time you add new files to your \TeX\ system, you'll need
to update the file name database!

It's best to get the Makor software in a {\tt.zip} file from {\sc
ctan} (online documentation there will show you how to do this).  Then, in the
root of your local {\tt texmf} directory, unzip the software with the
command 
\begin{verbatim}
unzip -d makor
\end{verbatim}
(assuming the zip file is {\tt makor.zip}).  Next, place the contents
of the file {\tt makor.map} into your font map file, usually named
{\tt psfonts.map}.  Finally, you'll need to do a few things by hand to
get the fonts ready.

\subsubsection{Fonts: OmegaSerifHebrew}
The font OmegaSerifHebrew is distributed with Omega, one of your
possible choices for an extended version of \TeX\ you'll need for
Makor.  On many (most?) implementations of \TeX, Omega will
automatically be installed. 

Take copies of the {\tt.pfb} and {\tt.tfm} files, and rename them {\tt
omsehe.pfb} and {\tt omsehe.tfm}.  Place them in directories like
\begin{verbatim}
<texmf>/fonts/type1/makor/osh
<texmf>/fonts/tfm/makor/osh
\end{verbatim}
The Omega fonts themselves are in directories like
\begin{verbatim}
<texmf>/fonts/type1/public/omega
\end{verbatim}
and
\begin{verbatim}
<texmf>/fonts/tfm/public/omega
\end{verbatim}

\subsubsection{Fonts: Hadassah}
The Hadassah fonts I used are sold by MasterFont Studio Rosenberg, an
Israeli digital type foundry (159 Yigal Alon St., Tel Aviv 67443,
Israel; \[stwdyw rwznvrg, rx\' yg`l `lwn \NUM{159}, s^l `vyv
\NUM{67443}, yshr`l\]).  Upon receipt of your credit card order, they
will email you zipped TrueType font files.  Here's what to do when you
get them:
\begin{enumerate}
\item Follow the directions in the Appendix to this document to
generate fonts that \TeX\ can cope with.
\item Place all the font files in a directory like
\begin{verbatim}
<texmf>/fonts/truetype/rosenberg/hadassah
\end{verbatim}
\item Place the {\tt.tfm} and {\tt.vf} files in
\begin{verbatim}
<texmf>/fonts/tfm/makor/hadas
<texmf>/fonts/vf/makor/hadas
\end{verbatim}
\end{enumerate}

For the umpteenth time, don't forget to refresh the \TeX\ filename
database.  (I'm always forgetting to do it---that's why I emphasize
it!)

\subsubsection{Miscellaneous files}
Most of the remaining miscellaneous files have uses, perhaps esoteric,
as described elsewhere in this manual.  Of course, several of the
miscellaneous files are used to generate this manual.  There should be
several {\tt.eps} and {\tt.pdf} files, the file {\tt makorman.tex},
and the file {\tt makorman.pdf}, which is what you've read.  

(Here, \verb=<texmf>= refers to the head of the \TeX-MF tree.  It
often has a value of \verb=c:\texmf= or \verb=/usr/local/texmf= in
personal computer systems.)  

That's it!  You're now ready to produce masterpieces of Hebrew
typesetting.

\subsection{Testing the installation}
If you've completed the installation process, not forgetting to update
the \TeX\ filename database, then you're ready to test the system.
Enter a work directory, and type any of the three following commands: 
\begin{verbatim}
etex refcard
omega refcard
pdftex refcard
\end{verbatim}
If you've typed `{\tt pdftex refcard}', you're ready to preview the
resultant file, called {\tt refcard.pdf} with Adobe Acrobat Reader or
with Ghostscript.

If you've typed any of the first two commands, either of which produce
the file {\tt refcard.dvi}, you'll need to post-process this file with
either of the following two commands:
\begin{verbatim}
dvips refcard
dvipdfm refcard
\end{verbatim}
The output, either {\tt refcard.ps} or {\tt refcard.pdf}, can be
viewed now with either of Acrobat Reader or {\tt Ghostscript}.

You will {\bf not} be able to process this file, the Makor
documentation, unless you have installed the Hadassah fonts.  These
fonts are called at numerous places but if you comment out the 
\begin{verbatim}
\IHaveHadassahFontstrue
\end{verbatim}
statement at the beginning of this document, it should compile,
although without Hadassah, some parts will look funky.

\section{Preparing your document for Makor}
In plain \TeX\ documents, include the statement
\begin{verbatim}
\input makor
\end{verbatim}
at the beginning.  In \LaTeX, include the statement
\begin{verbatim}
\usepackage{makor}
\end{verbatim}
right after the \verb=\documentclass{...}= command.

\subsection{Makor's Hebrew environment commands}
The `delimiters' \verb=\[= and \verb=\]= delimit all your Hebrew text;
text outside these commands is set in English.  Text within these
brackets is set in Hebrew according to the conventions we describe
below.  (If you're using Makor with \LaTeX, use the {\tt displaymath}
environment for displayed math instead of \verb=\[= and \verb=\]=.)

If you are typing a
paper that's all Hebrew, you must terminate each paragraph with
\verb=\]= and re-commence Hebrew again at the beginning of the
following paragraph with \verb=\[=.  I don't know why this is so; it
appears to be a requirement of both e\TeX\ and of Omega.

\begin{figure}
\mycenterline{\bf OmegaSerifHebrew fonts}
\smallskip
\noindent\[\hfont{OSH}\HTEST\HPAR\]

\medskip
\mycenterline{\bf SIL Ezra fonts}
\smallskip

\noindent Regular:\[\hfont{SIL}\HTEST\HPAR\]

\noindent Italic: \[\hfont{SILI}\HTEST\HPAR\]

\noindent Bold: \[\hfont{SILB}\HTEST\HPAR\]

\noindent Bold italic: \[\hfont{SILBI}\HTEST\HPAR\]

\noindent Outline: \[\hfont{SILO}\HTEST\HPAR\]

\medskip
\mycenterline{\bf Rashi fonts}
\smallskip

\noindent Regular: \[\hfont{RSH}\HTEST\HPAR\]

\noindent Bold: \[\hfont{RSHB}\HTEST\HPAR\]

\medskip
\mycenterline{\bf Hadassah fonts (MasterFont Rosenberg)}
\smallskip

\noindent Regular:\[\hfont{HAD}\HTEST\HPAR\]

\noindent Italic: \[\hfont{HADI}\HTEST\HPAR\]

\noindent Bold: \[\hfont{HADB}\HTEST\HPAR\]

\noindent Bold italic: \[\hfont{HADBI}\HTEST\HPAR\]

\caption{\label{mkr-fonts}Available Hebrew fonts in Makor}
\end{figure}

\subsection{Selecting Hebrew fonts}

In either case, you need to specify which fonts to use.  
{\bf Do not use font selection commands other than the ones
that are part of the Makor package.}  For either \TeX\ or \LaTeX, type
\begin{verbatim}
\hfontdef{HEB}{ohebrmm}{10pt}
\end{verbatim}
which associates a 10pt-version
of font {\tt ohebrmm} with the name \verb=HEB=.  Once you define, one
way to invoke it is
\begin{verbatim}
\[\hfont{HEB}...\]
\end{verbatim}

You often find yourself going in and out of Makor's Hebrew
environment, and it quickly becomes a nuisance to keep specifying the
same old Hebrew font using \verb=\hfont=.  You can eliminate this
problem by appealing to Makor's sense of a default font.  The first
font defined always becomes the default font, which is why it's
important to define at least one font before you start typesetting
Hebrew.  In addition, you can explicitly set the default Hebrew font
by means of
\begin{verbatim}
\declarehdefault{HEBX}
\end{verbatim}
assuming \verb=\hfontdef{HEBX}{...}= appeared before this definition.

To repeat, {\bf you must define at least one Hebrew font before you
use \verb=\[= and \verb=\]=} for the first time.  That's because Makor
will use the first-defined Hebrew font as the default.  The absence of
any defined fonts will badly confuse the default-font mechanism.

\section{Fonts}
I am grateful for the high quality fonts that I have been able to
adapt to Makor, in particular the beautiful OmegaSerifHebrew rendered
by Yannis Haralambous and the exquisite Ezra fonts, graciously placed
in the public domain by the Summer Institute of Linguistics (sometimes
called SILEzra).  The wonderful Hadassah fonts prove that commercial
fonts can be adapted to Makor.

Several different fonts, drawn from a small number of font families,
can currently be used with Makor.  Since these fonts need
considerable tweaking, you won't be able to use your own Hebrew fonts
with this package.  Figure~\ref{mkr-fonts}\ shows the current
selection.  Figure~\ref{mkr-font-families}\ gives the Makor names for
these fonts.  

Note that these fonts have been called at different design sizes in
order to appear roughly equivalent in size.  The OmegaSerifHebrew and
Ezra fonts are in design size \the\HSIZE, while the Rashi fonts appear
in size {\dimen0=.8\HSIZE \truncdim{\dimen0}\the\scr\thinspace pt}, and the
Hadassah fonts are {\dimen0=1.1\HSIZE
\truncdim{\dimen0}\the\scr\thinspace pt}.

Incidentally, many raw Hebrew fonts contain only the basic glyphs of
the Hebrew alphabet and associated special symbol, but often lack
punctuation, numerals, and other special symbols.  Makor fleshes these
raw fonts with glyphs taken from the Computer Modern Fibonacci font,
{\tt cmfib8}, because of all the \textsc{cm} fonts,
glyphs from this font best match with Hebrew
glyphs, and because I've always looked for a good use for this
fascinating font.

\subsection{Special note on the Hadassah fonts}
All the fonts but Hadassah are in the public domain, and we should be
grateful that such handsome fonts are present for us to use.  The
Hadassah fonts are not.  These beautiful fonts are furnished by an
Israeli digital font foundy, Masterfont Rosenberg ({\tt
www.masterfont.co.il}).  You have to {\bf buy\/} these fonts in order
to use them.  They are TrueType fonts, with an unusual layout, and
they had to be massaged by the {\tt ttf-edit} program available from
TrueType ({\tt www.truetype.com}); see the Appendix to this document
for details.  If you buy these fonts, you'll need this information to
make Hadassah usable with Ma\-kor.

\subsection{Compiling the source file}
After you've completed the source file according to the rules
described below, you {\em must\/} run it through either the extended
\TeX\ {\tt etex} or its \LaTeX\ counterpart {\tt elatex}.  That is,
type something like
\begin{verbatim}
omega myfile
\end{verbatim}
or
\begin{verbatim}
elatex myfile
\end{verbatim}
to produce the {\tt.dvi} that you then work with in the usual way, to
preview, print, or convert to PostScript or {\tt.pdf}. 

\subsubsection{Note on dvips}
Well, almost the usual way.  I could not get {\tt dvips} (version
5.86) to work properly with TrueType fonts.  It's quite likely that
this version is sufficiently out-of-date to explain this
non-performance, but I simply switched from this program to {\tt
dvipdfm} (version 0.13.2), which worked flawlessly.  This program
should be part of your \TeX\ suite.

\font\currfont=pplri7t at 14pt 
\font\currbf=pplb7t at 8pt
\hfontdef{XXXIII}{ezraomm}{38pt}
\hfontdef{2}{ezramm}{9.5pt}
\hfontdef{EZRASMALLBOLD}{ezrabmm}{6pt}
\setbox2=\hbox\bgroup\[\hfont{XXXIII}b'\]\egroup 
\dimen0=\wd2 \advance\dimen0 by3pt
\stringdef{1HN}{`}
\stringdef{2HN}{v}
\stringdef{3HN}{g}
\stringdef{4HN}{d}
\stringdef{5HN}{h}
\stringdef{6HN}{w}
\def\strutdepth{\dp\strutbox}
\def\versenumber{\strut\vadjust{\kern-\strutdepth\specialvnum}}
\newcount\vno \vno=0
\def\specialvnum{\global\advance\vno by1 \vtop to \strutdepth{%
  \baselineskip\strutdepth
  \vss\llap{\currbf\the\vno\ }\null}}
\def\HVERSENUMBER{\strut\vadjust{\kern-\strutdepth\specialhnum}}
\newcount\HNO \HNO=1
\def\specialhnum{\global\advance\HNO by1 \vtop to\strutdepth{%
  \baselineskip\strutdepth
  \vss\rlap{\hskip\hsize\ \ 
  \EZRASMALLBOLD\expandafter\csname\the\HNO HN\endcsname\null
  }\null}}
\let\HV=\HVERSENUMBER

\begin{figure}
\setbox9=\vbox\bgroup \hsize=6in \advance\hsize by1.5pc
\dimen9=\hsize
\hsize=.8\hsize \parindent=0pt
\global\setbox0=\vbox\bgroup\hsize=.4\hsize\noindent
\hangafter=-3 \hangindent=-\dimen0
\[\EXEC{\baselineskip=13pt}%
\GDEF\ELOKIM{`:eloqiym}%
\hfont{2}rae`sh^iys^ baurau` \ELOKIM\ `aes^ hash^*aumayim
w'`aes^ hau`|+rets\COLON\
\HV w'hau`aurets h|+y's^auh s^ohoo wauvohoo w'chosh^ekh^' ``al-p'naey
s^'hOm w'roo_ach \ELOKIM\ m'rachefes^ ``al-p'naey ham*|+yim\COLON\
\HV way*o`mer \ELOKIM\ y'hiy-`Or w|ay'hiy-`|Or\COLON\
\HV way*|ar'` \ELOKIM\ `es^-hau`Or kiy-tOv way*av'd*ael \ELOKIM\ baeyn
hau`Or oovaeyn hach|osh^ekh^'\COLON\ 
\HV way*iq'rau` \ELOKIM\ lau`Or yOm w'lachosh^ekh^' qaurau` lauy'lauh
w|ay'hiy-``erev w|ay'hiy-voqer yOm `ech|+d\COLON\CENTERLASTLINE\]%
\egroup% end of box0
\let\verse=\versenumber
\let\endverse=\  \dimen8=.4\hsize \advance\dimen8 by1.5pc
\global\setbox4=\vbox{\noindent\hangafter=-9 \hangindent=-\dimen8
\currfont\baselineskip=17pt
\verse In the beginning of God's creating the heavens and the
earth---%
\verse when the earth was bewilderment and void, with darkness over the
surface of the deep, and the breath of God was hovering upon the
surface of the waters---%
\verse God said, ``Let there be light,'' and there was light.\endverse
God saw that the light was good, and God separated between the light and
the darkness.\endverse
\verse God called the light: ``Day,'' and to the darkness He called:
``Night.''\endverse
\verse And there was evening and there was morning, one day.\endgraf
}% end of box4
\dimen7=\hsize \advance\dimen7 by-\dimen8
\hbox to\hsize{\hbox to\dimen8{\hss \currbf GENESIS I\hss}\hfill
  \hbox to.4\hsize{\hss\[\hfont{EZRASMALLBOLD}br`shys^ `\]\hss}}\smallskip
\hbox{\raise0pt\box4%
  \hskip3pt\raise57pt\llap{\box0\hskip3pt\raise115pt\llap{\box2}}}
\vskip3pc\egroup 
\noindent\hbox to\textwidth{\hss\box9\hss}
\caption[A portion of Genesis.]%
	{\label{verses}A portion of Genesis. 
The verse numbering for both the Hebrew and English
selections were done automatically.}
\end{figure}

\section{Input conventions}

\subsection{Entering Hebrew consonants}
I've tried very hard to make the correspondance between the letters of
the Latin keyboard and their Hebrew typeset equivalents be as natural
as possible, at least for American typists.  Here is the main
principal: you get a consonant by typing an English consonant. The
left apostrophe \verb=`=, the right apostrophe \verb='=, the asterisk
\verb=*=,  the circumflex
\verb=^=, and maybe a few other characters  also have special significance.  

If you type {\tt b}, you get \[b\].  If you type {\tt v}, you get \[v\],
and so on.  If you type {\tt ch} or or {\tt ts} you get \[ch\] or
\[ts\NOBOUNDARY\].
\TeX\ is careful to use the final forms of letters where appropriate,
so all you need do is type {\tt mym} to get \[mym\].  You get aleph, the
soundless consonant \[`\], by typing \verb=`=.  The almost soundless
letter ayin, \[``\], you get by typing \verb=``=; Makor treats it as a
ligature.

It's impossible to allocate all English consonants to the Hebrew
consonants in a meaningful manner, so we use the circumflex to help us
out at times.  In modern Hebrew, there are several letters that are
all pronounced like our `s'.  In Makor, we distinguish be the presence
of additional input marks.

For example, you get one s-sound, the samekh \[s\], by typing
\verb=s=.  To get the saf \[s^\], you need to enter \verb=s^=; the
\verb=^= serves as an input modifier.  Finally, to get the sin
\[^s\], you type \verb=^s=; here the left position of the circumflex
should suggest the left appearance of the dot.  
In the same way, you
get \[t\] if you type \verb=t=, but you get \[t^\] if you type
\verb=t^=.  

For all consonants you get its dotted form by following it
with an \verb=*=.  Thus, although \verb=h= and \verb=sh^= yield
\[h\] and \[sh^\], \verb=h*= and \verb=sh^*= yield
\[h*\] and \[sh^*\].  To get \[sh^*\], type \verb=sh^*=, but {\em
not\/} \verb=sh*^=.  

In addition, many of the dotted forms can be gotten
by typing English capital letters, although I deprecate this use
because this rule is not universal.

Although \TeX\ is smart enough to automatically select the end-of-word
consonants by itself, you can force such a consonant by appending the
circumflex to the letter.  The word \[wlfwm^ch\], which appears in one
of the Dead Sea Scrolls (at least this is the way it looks to me), is
keyed in as \verb=wlfwm^ch=.  Incidentally, you can {\em suppress\/}
the final form by typing the command \verb=\NOBOUNDARY=.  For example,
if I type \verb=\[ts\]=, I get \[ts\].  To get \[ts\NOBOUNDARY\], I
type \verb=\[ts\NOBOUNDARY\]=.

Please refer to Table~\ref{consonants}\ for the full list of
English-Hebrew typing conventions for consonants.

\begin{table}
$$\vbox{\baselineskip18pt\MAKEEXCLAMLETTER\!makemakorspecials
\halign{\[\hfont{HADB}#\]\hfill\qquad&\tt #\hfill\qquad
  &\[\hfont{HADB}#\]\hfill\qquad&\tt#\hfill\cr
\omit\it To get:\hfill\qquad&\omit\it Type...\hfil&
\omit\hfill\hbox to0pt{\hss\it To get:\hss}\hfill\qquad&\omit\it Type...\hfil\cr
\noalign{\vskip2pt \hrule\vskip4pt}
`&`\cr 
v&v&b&b, v*\cr 
g&g&g*&g*, G\cr 
d&d&d*&d*, D\cr 
h&h&h*&h*, H\cr
w&w&w*&w*, W\cr
z&z&z*&z*, Z\cr
ch&ch, x\cr
t&t&t*&t*, T\cr
y&y&y*&y*, Y\cr
kh\NOBOUNDARY&kh, K&k\NOBOUNDARY&k, kh*\cr
kh^&kh at EOW, kh^&k^&k at EOW, k^\cr
l&l&l*&l*, L\cr
m\NOBOUNDARY&m&m*\NOBOUNDARY&m*, M\cr 
m^&m at EOW, m^&\cr
n\NOBOUNDARY&n&N\NOBOUNDARY&n*, N\cr
n^&n at EOW, n^&\cr
s&s&s*&s*, S\cr
``&``\cr
f\NOBOUNDARY&f&p&p, f*\cr
f^&f at EOW, f^&\cr
ts\NOBOUNDARY&ts&ts*&ts*\cr
ts^&ts at EOW, ts^&\cr
q&q&Q&q*, Q\cr
r&r&r*&r*, R\cr
sh&sh&sh&sh\cr
sh^&sh^&sh^*&sh^*\cr
^s&^s&^s*&^s*\cr
}}$$
\caption[Consonant transcription rules.]%
{\label{consonants}Makor transcription rules for Hebrew
consonants ({\tt EOW}=end of word boundary).   There is often
more than one way of getting a particular consonant.}
\end{table}

\subsection{Hebrew vowels}
The English vowels together with the symbols \verb=+=, \verb=:=, \verb="=, and
\verb=|= are sometimes used to get vowels.  To get a vowel, you type
either one or two characters, and there may be more than one way to
get a vowel.  Except for some special cases detailed below, each vowel
follows its base letter.  Thus to get \[ba\], type \verb=ba=, and so
on.

Table~\ref{vowels}\ displays the Makor typing
conventions for vowels.

\begin{table}
$$\vbox{\baselineskip18pt\MAKEEXCLAMLETTER\!makemakorspecials
\halign{\hfill\[\hfont{HHMMRR}#\]\qquad&\vrule width0pt depth12pt
	\tt #\hfill\qquad&%
	\qquad\hfill\[\hfont{HHMMRR}#\]\qquad&\tt#\hfill\cr
\omit\it To get:\qquad\hfill&\omit\it Type...\hfill\qquad&
\omit\qquad\it To get:\hfill\qquad&\omit\it Type...\cr
\noalign{\vskip2pt \hrule\vskip4pt}
c'&'&\cr
ce&e&c:e&:e\cr
c+&au, +&c:+&:+\cr
ca&a&c:a&:a\cr
cae&ae, ei&\cr
ci&i&\cr
cu&u&\cr
oo&oo, w*&\cr
co&o&\cr
O&O&\cr
c|&|&c|a&|a\cr
c|+&|+&c|e&|e\cr
c|i&|i&c|"&|"\cr
c|'&|'\cr}}$$
\caption[Makor conventions for vowels.]{\label{vowels}%
Makor conventions for vowels.}
\end{table} 

Some comments:  We get \[cau\] by typing \verb=+=, because the plus sign
sorta' kinda' looks like the \[cau\].  But we can also get it by typing
\verb=au=, since the `au' sign as in the word `aura' mirrors the sound
of the kamatz \[c+\], at least in Ashkenazic (European) pronunciations.  Where
possible, I have provided several alternative input mechanisms,
because certain inputs may look better in different contexts:
\verb=b'nei yi^srau`ael=$\Rightarrow$\[b'neiy yi^srau`ael\].

We get the
{\em chataf\/} vowels \[c:a\ c:+\ c:e\] by preceding each vowel with a colon.
We {\em cannot\/} type \verb=:au= because this would result in a three
character sequence.  Vowel sequences cannot be longer than two
characters.

The {\em messeg\/} \[c|\] has a certain purpose in grammar, and 
you often see this vowel in combination with other vowels.  You get these
vowels by preceding the vowel with the vertical bar: \verb=|= gives
\[c|\], \verb=|+= gives \[c|+\], and so on.

Certain gutterals that end a word and take a vowel are pronounced as
if the vowel precedes the consonant.  Thus, although we could type
\verb=roocha= to get \[roocha\], this looks funny, since the Hebrew
word is pronounced {\it roo-ach}.  Makor provides a transposition
symbol for instances like this so that the input mirrors the
pronunciation.  This transposition character is the underscore, so we
get \[roo_ach\] by typing \verb=roo_ach=.  You can also use this to
get the verb \[yOdae_a``\]; that is, type 
\begin{verbatim}
yOdae_a``
\end{verbatim}

Each vowel follows its base letter.  So we get \[mayim\] by typing
\verb=mayim=.  You get \[rabinOviyts`\] by typing \verb=rabinOviyts`=;
here we've used the fact that certain foreign sounds (foreign from the
Israeli point of view, that is) are indicated by a right quote, which
we also get via \verb=\'=.

Sivan Toledo~\cite{toledo}\ suggests several words difficult for
Hebrew typesetting systems.  They are
$$\hbox{
\[yid'rosh^oon ^sonae` w'la^s*oraeqauh mats*Os^ mits'wos^\]
}$$
which you get by typing
\begin{verbatim}
yid'rosh^oon ^sonae` w'la^s*oraeqauh mats*Os^ mits'wos^
\end{verbatim}
For a more extended example, note that
the selection of figure~\ref{devarim} is the product of 
\smallen
\begin{verbatim}
way*aumaus^ sh^aum mosh^eh  ``eved-\TETRAGRAMMATON\ 
b'`erets mO`aud``al-piy \TETRAGRAMMATON\COLON\   
way*iq'bor `o{}s^O vag*ay b'`erets mO`auv
mool baeys^ p'``Or w'lo`-yauda`` `iysh^ `es^-q'vuraus^O 
``ad hay*Om haz*eh\COLON\   
oomosh^eh ben-mae`auh w'``e^s'riym sh^aunauh b'mo{}s^O
l'`-khauh:as^auh ``aeynO w'lo`-naus laech|oh\COLON\   
way*iv'koo v'naey yi^s'rau`ael `es^-mosh^eh b'``ar'vo{}s^ 
mO`auv sh^'losh^iym yOm way*it^'moo
y'maey v'khiy `aevel mosh^|eh\COLON\   
w|iyhOsh^u_a`` bin-noon maulae` roo_ach chaukh'mauh 
k|iy-saumakh^' mosh^eh `es^-yaudauyw ``aulauyw
way*ish^'m'``oo `aelauyw b'n|"y-yi^s'rau`ael 
way*|a``:a^soo k|a`:ash^er tsiw*auh \TETRAGRAMMATON\ 
`es^-mosh^|eh\COLON\ 
w'lo`-qaum nauviy` ``Od b'yi^s'rau`ael k'mosh^eh 
`:ash^er y'dau``O \TETRAGRAMMATON\ pauniym `el-pauniym\COLON\ 
l'khaul-hau`o{}s^o{}s^ w'ham*|Of's^iym `|ash^er sh^'lauchO
\TETRAGRAMMATON\ l|a``:a^sOs^ b'`erets mits'rauyim l'far'``oh
ool'khaul-``:avaudauyw ool'khaul-`ar'ts|O\COLON\ 
ool'khol hay*aud h|ach:azauqauh ool'khol ham*Orau` 
hagaudOl `:ash^er ``au^sauh mosh^eh l'``aenaey 
kaul-yi^s'rau`|"l\COLON
\end{verbatim}
\egroup

\subsubsection{Special considerations for \protect\[chwlm\protect\]
(cholem)}
The cholem vowel has two representations---\[`O\] and ``cholem lite''
\[`o\] \[(chOlem chausar?)\], also called a defective cholem.  
There is nothing special to say about the former, but certain
typographic conventions have been built in to the latter in Makor
fonts.  

No dot should be used when the cholem lite comes after \[^s\] or
before \[sh^\].  Hence: \verb=^sonae`= yields \[^sonae`\].  Similarly,
\begin{verbatim}
^sonae` n'^so` mosh^eh yir'po^s han*|o^s'`iym
\end{verbatim}
typesets as
\[^sonae` n'^so` mosh^eh yir'po^s han*|o^s'`iym\].  But
\verb=sh^omaer= gives \[sh^omaer\].  Makor achieves these effects
using \TeX's ligature mechanism, so if you prefer the ungainly
\[mo{}sh^eh\], you get it via \verb=mo{}sh^eh=.
But---and note this well---if a defective cholem precedes a \[s^\],
you will need to break the ligature.  Thus, we would need to type
\verb=`o{}s^O= to get
\[`o{}s^O\] (otherwise you get the malformed \[`os^O\]).  
See below, in subsection~\ref{ligature-breaking}, for a
discussion of ``ligature breaking'' and what that entails.

Some shenanigans pertain to the cholem dot in connection with the
aleph.  When this dot precedes \[`\] which functions as a vowel, then
the dot should appear over the right arm of the aleph.  So we get
\[bo` ro`sh^\] from \verb=bo` ro`sh^=.  But we need to type
\verb=bo{}`aum= to get \[bo{}`aum\]; here, the \[`\] begins a syllable
and functions therefore as a consonant.  The \verb={}= fractures the
ligature so we get the proper effect.

These conventions are part of all Makor fonts, and so you get 
$$\hbox{\[\hfont{OSH}^sonae` n'^so` mosh^eh yir'po^s han*|o^s'`iym bo` ro`sh^ 
bo{}`aum\]}$$
in OmegaSerifHebrew.  But are these conventions appropriate for Rashi
as well?  Pending feedback from knowledgable users, I have included
them also in Ra\-shi fonts.
$$\hbox{\[\hfont{RSH}^sonae` n'^so` mosh^eh yir'po^s han*|o^s'`iym bo` ro`sh^ 
bo{}`aum\]}$$
It's a little different for the Hadassah fonts.  For these, the
designer has included a cholem dot which appears above the dot of the
\[\hfont{HAD}^s\]/\[\hfont{HAD}sh^\] letters:
\[\hfont{HAD}sh^omaer\].  Nevertheless, I included the same
conventions in these fonts.
$$\hbox{\[\hfont{HAD}^sonae` n'^so` mosh^eh yir'po^s han*|o^s'`iym bo` ro`sh^ 
bo{}`aum\]}$$
How does it look?

\subsection{\label{numbers}Numbers in a Makor document}
Most of the time, Israeli authors use Arabic numbers in their
articles (how ironic!).  However, the numbers are entered and read in the Latin
manner, from left to right, a fact which has brought many a new immigrant
to their knees!  One might expect that it's easy to typeset numbers---simply
exit the Makor environment, enter the number, and return to Makor.
Try it---you'll see that it often fails to work.  Once you exit Makor,
\TeX\ reorders the Hebrew and non-Hebrew text in unexpected and
disconcerting ways.

Instead, use the \verb=\NUM= macro.  To typeset 123.45 in ``Hebrew,''
enter 
\begin{verbatim}
\NUM{123.45}
\end{verbatim}
in the source file.  However, when noting
page ranges, the smaller number must appear to the right of the
larger.  To have ``456--123'' appear in the Hebrew document, enter
\begin{verbatim}
\NUM{123}--\NUM{456}
\end{verbatim}
in your source file.  As another example, one way to get this entry,
appropriate perhaps for a table of contents:\par
\medskip
\let\DOTFILL=\dotfill
\hbox to\textwidth{\[shy``wr \NUM{12}\COLON\ chyds^ htslwfchym\DOTFILL
  \NUM{151}--\NUM{166}\]}\medskip
\noindent is to type (in plain \TeX) something like:
\smallen
\begin{verbatim}
\let\DOTFILL=\dotfill
\hbox to\textwidth{\[shy``wr \NUM{12}\COLON\ 
  chyds^ htslwfchym\DOTFILL
  \NUM{151}--\NUM{166}\]}
\end{verbatim}
\endsmallen

\subsection{Some fine points}
\subsubsection{Final letters with vowels}
Most of the time, final consonants have no associated vowels.  On the
rare occasions they do, \TeX\ needs help.  Since the vowel under the
final letter you type is the last `letter' of your word, \TeX\ has no
way of knowing that the preceding letter is actually the final
consonant.  You help \TeX\ by typing a circumflex symbol or other
symbol next to the
consonant, before keying in the vowel.  You get \[baurookh^'\] by
\verb=baurookh^'=, \[w'yish'm'r|ekh^+\] from \verb=w'yish'm'r|ekh^+=,
\[wiychun*|ek^+\] from \verb=wiychun*|ek^+=, and \[oom'tse`n^#\] from
\verb=oom'tse`n^#=.  

I have not provided for any other intances of final vowels under the
special final letterforms.  If you know of other combinations, please
let me know.  

\subsubsection{\label{ligature-breaking}Breaking ligatures}
Some of the typesetting in Makor is done via \TeX's ligature
mechanism.  For example, you get \[lo\] by typing \verb=lo=, which is
what you want most of the time.  (In this ligature, the superior dot
has been moved to the left just a bit to clear the stem of the lamed
\[l\].)  However, in the words \[``au{l}ool\] (see figure~\ref{EZhebrew})
and \[t^ash^'{l}oomaey\] (the bottom of the central part of
figure~\ref{talmud}), you want to break this ligature; otherwise you
get \[``aulool\].  One way to do
that in \TeX\ is to surround one of the members of the ligaturewith
curly brackets.  I typeset these foregoing words via
\begin{verbatim}
``au{l}ool
\end{verbatim}
and
\begin{verbatim}
t^ash^'{l}oomaey
\end{verbatim}
Typing \verb=``aul{}ool= and \verb=t^ash^'l{}oomaey= also works.

\subsection{Turning off vowels}
Savvy users of \TeX\ and especially of \LaTeX\ know that the structure
you can apply to a document is {\em the\/} great strength of these
systems.  The Makor system contains vocalization as an element of
structure.

\font\myrm=mjnr9t at  12pt 
\font\myit=mjnri9t at 12pt
\font\mysc=mjnrc9t at 12pt
\hfontdef{MYHEB}{ezramm}{9pt}
\declarehdefault{MYHEB}
\def\RH{{\mysc rh}}\def\BH{{\mysc bh}}
\let\chr=\char
\def\GENVOWEL#1{\setbox0=\hbox{\myrm-}\setbox0=\hbox to\wd0{\hss\MYHEB
  #1\hss}%
  \noindent\hbox{{\myrm-}\llap{\box0}}}
\begin{figure}
{\baselineskip=15pt \parindent=12pt
\myrm Rabbinic Hebrew (\RH) does not differ greatly from Biblical Hebrew
(\BH) in its inflection of the noun, although the neutralization of
final {\myit mem\/} and {\myit nun\/} means that the masculine plural
is often, as in Aramaic, \[\GENVOWEL{\chr105}yn\].  Apart from the more
frequent use of the archaic feminine suff{}ix \[\GENVOWEL{\chr97}s^\] as in
\[kohenes^\] `priest's wife' and \[`il*emes^\] `dumb woman', \RH\ also
employs the suff{}ixes \[\GENVOWEL{\chr105}ys^\] and \[\GENVOWEL{}oos^\] for
example \[`:araumiys^\] `Aramaic' and \[``av'doos^\] `servitude'.  \RH\
developed distinctive feminine plural suff{}ixes in \[\GENVOWEL{\chr43}`Os^\]
(Babylonian) or \[\GENVOWEL{\chr43}yOs^\] (Palestinian), for example
\[mar'ch:atsauyOs^\]/\[mar'ch:atsau`Os^\]
`bath-houses' and \[\GENVOWEL{\chr105}y*Os^\], as in
\[mal'khiy*Os^\] `kingdoms' for \BH\
\[mal'khuyO{}s^\], for nouns ending in
\[\GENVOWEL{\chr97}oos^\] in the singular.  Masculine
plural forms sometimes differ from those that would be expected, or
are normally found, in \BH, for example, \[n'ziqiyn\] from \[naezeq\]
`damage', \[sh^'wauriym\] from \[sh^Or\] `ox', \[sh^'wauqiym\] from \[sh^ooq\]
`market', \[ts'daudiym\] from \[tsad\] `side', \[ch:atsau`iyn\] from
\[ch:atsiy\] `half', and \[sh^'l{}oochiyn\] from \[sh^auliy_ach\] `envoy'.
The same is true of feminine nouns, for example \[`Os^iy*Os^\] from
\[`Os^\] `letter (of alphabet)', \[b'riys^Os^\] from \[b'riys^\] `covenant
(without plural in \BH)', and \[`im*auhOs^\] from
\[`aem\] `mother'. 

Some masculine nouns take the feminine plural suffix
\[\GENVOWEL{}Os^\], for example, \[chin*Os^\]
from \[chaen\] `favour', \[k'laulOs^\] from
\[kh'laul\] `rule', \[t^iynoqOs^\] from
\[t^iynOq\] `baby', \[ch:ayaulOs^\] from
\[chayil\] `army', \[``:ayaurOs^\] from
\[``iyr\] `city', and \[maeymO{}s^\] from
\[mayim\] `water'.  Similarly, there are some feminine
nouns which take the masculine plural suffix
\[\GENVOWEL{\chr105}ym\]---\[yOniym\] from
\[yOnauh\] `dove', \[n'mauliym\] from
\[n'maulauh\] `ant', and \[baeytsiym\] from
\[baeytsauh\] `egg', for example.  Occasionally, both
types of plural are evidenced, as with
\[yaumOs^\]/\[yaumiym\] from \[yOm\]
`day' or \[sh^aunOs^\]/\[sh^auniym\] from
\[sh^aunauh\] `year', with each form having a slightly
different shade of meaning and the `feminine' variant only used with
suffixes.  In \RH\ we sometimes find plurals of nouns only attested in
the singular in \BH, for example \[`:avauriym\] from
\[`aever\] `limb', \[d*'sh^au`iyn\] from
\[d*esh^e`\] `grass', and \[t^'midiym\] from
\[t^aumiyd\] `daily sacrifice'.  Likewise, there are
singular forms of nouns only attested in the plural in \BH, for example
\[`il'moog\] `coral-wood', \[baeytsauh\] `egg',
and \[bautsaul\] `onion'.  The dual is used more than in \BH,
with existing forms retained and new ones created, for example
\[mas'paurayim\] `scissors' and \[baen't^ayim\]
`meanwhile'.  (1993: S\'aenz-Badillos, {\myit A History of the Hebrew
Language},  Cambridge University Press, pp.\thinspace 188-89.)\par
}
\caption{\label{mixedbag}Makor fonts in combination with Roman.}
\end{figure}

%\declarehdefault{OSH}
Fluent readers of Hebrew rarely resort to vowels.  Vowels tend to make
their appearance in books for younger readers, to clarify the
pronunciations of names or foreign words, or other specialized
situations.  Nevertheless, even if you don't want to typeset the
vowels, it makes sense to include them in the input.  For example, I
can typeset
$$\hbox{
\[\hfont{HAD}\CXLV `es^ chagiygas^ hau`aeroosiyn sh^el chayoos^auh qauv'``oo
bim'hiyroos^...\]}$$
by typing
\begin{verbatim}
`s chgygs^ h`rwsyn shl chyws^h qv``w bmhyrws^...
\end{verbatim}
but I might rather type 
\begin{verbatim}
`es^ chagiygas^ hau`aeroosiyn sh^el chayoos^auh qauv'``oo
bim'hiyroos^...
\end{verbatim}
even if I didn't want the vowels to print, because the vocalized
input is so much easier to proofread (at least, it is after you get used to
the Makor conventions!).  We turn vowels on and off with the \verb=\V=
(enable {\bf v}owels) and \verb=\CXLV= (cancel vowels).  
These commands also adhere to standard \TeX\
grouping conventions, so I get
$$\hbox{
\[\hfont{HAD}\CXLV `es^ chagiygas^ hau`aeroosiyn sh^el chayoos^auh qauv'``oo
bim'hiyroos^...\]}$$
or even
$$\hbox{
\[\hfont{HAD}`es^ \CXLV chagiygas^ \V hau`aeroosiyn {\CXLV sh^el} chayoos^auh 
{\CXLV qauv'``oo} bim'hiyroos^...\]}$$
simply by monkeying with these commands.  One way to
typeset the last of these
is via
\begin{verbatim}
`es^ \CXLV chagiygas^ \V hau`aeroosiyn 
{\CXLV sh^el} chayoos^auh 
{\CXLV qauv'``oo} bim'hiyroos^...
\end{verbatim}

\section{Font selection}
Not only do the Hebrew fonts require special adjusting for use with
Makor, but it is also true that we need special treatment when fonts
are selected for use.  Consequently, Hebrew fonts should be selected
according to the rules of this section.  {\bf Do not\/} use any of the
usual font selection commands.

As with any \TeX\ document, though, fonts must be made known to \TeX,
and fonts must be selected for use.  Font definition is accomplished
by means of the \verb=\hfontdef= command, which takes {\bf three\/}
arguments:
\begin{enumerate}
\item the name by which you will refer to the font;
\item the Makor family name of the font; and
\item the size of the font you want to use.
\end{enumerate}

Makor family names are, at the moment, slightly non-intuitive.  They
consist of a recognizable family name, to which is appended two
additional letters.  At the moment, these additional letters have no
real significance, but in the future, they will carry a significance
all their own.  You can see these fonts in figure~\ref{mkr-fonts}.
Here they are again in figure~\ref{mkr-font-families}, with their
Makor family names.   Thus, if you say something like
\begin{verbatim}
\hfontdef{EZRA}{ezramm}{10.5pt}
\end{verbatim}
the nickname {\tt EZRA} refers to font {\tt ezramm} at a size of
10.5\thinspace pt.

Now, how do you invoke this font?  You need the special \verb=\hfont=
command, which is subject to the same grouping rules as any other font
selection command.  Thus, continuing the above example, we get this
font if we type
\begin{verbatim}
{\hfont{EZRA}...}
\end{verbatim}
inside the Makor environment.

For reasons that will be explained below, I recommend naming your font
with {\sc uppercase} nicknames.

In addition to the above commands, there is also commands \verb=\V=
and \verb=\CXLV= to enable and disable vowels, and an additional
command \verb=\declarehdefault= to typeset using a particular font in
the absence of additional instructions.  Thus, if typed
\begin{verbatim}
\declarehdefault{EZRA}
\end{verbatim}
right after the \verb=\hfontdef{EZRA}= command, we would automatically
get this font unless we explicitly entered another \verb=\hfont=
command. 

\def\dotss{\leaders\hrule height.7pt\hfill}
\def\dotline#1&#2&#3\[{\hbox\bgroup\vrule width0pt depth8pt
	\hbox to.35\textwidth{\it #1\rm\ \dotss}%
	\hbox to.25\textwidth{ \tt #2mm\rm\ \dotss}%
	\hbox to.4\textwidth\bgroup\dotss\ \[\hfont{#3}}
\let\savedcr=\cr
\def\cr{\]\egroup\egroup}
\begin{figure}
\dotline OmegaSerifHebrew&ohebr&OSH\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Ezra&ezra&SIL\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Ezra italic&ezrai&SILI\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Ezra bold&ezrab&SILB\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Ezra bold italic&ezrabi&SILBI\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Ezra outline&ezrao&SILO\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Rashi&rashi&RSH\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Rashi bold&rashb&RSHB\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Hadassah&hadassah&HAD\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Hadassah italic&hadassai&HADI\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Hadassah bold&hadassab&HADB\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\dotline Hadassah bold italic&hadassbi&HADBI\[`vgdhwzxtykhlmns``ftsqrshs^\cr
\caption{\label{mkr-font-families}Makor fonts.}
\end{figure}
\let\cr=\savedcr

\section{A Few points on use}
One of the main ways in which Makor works is by altering the category
codes of the vowels you type within the Makor \verb=\[...\]=
environment.  You don't need to know what `category codes' are except to
understand that \TeX\ normally groups the characters into distinct
categories which are important to the way \TeX\ reads your document
file (among other things).  Monkeying with these codes can have
unexpected and undesirable results unless you take great care.  I have
tried to take great care that the Makor macros treat this new
categorization in a robust manner, but there are inevitable
difficulties.  
For example, you cannot use Makor input in the arguments
of macros and commands, because the default category codes will already have
been assigned to them when \TeX\ reads in the macro arguments.  Since
section head titles and so on are arguments to section head commands,
this means you can't have Makor in these heads, at least not yet.
However, many of the remaining comments in this section
address these issues.

This business about assigning different category codes to vowels has
another downside in Makor: \TeX\ commands are no longer perceived as
the same commands!  For example, within the Makor environment, the
command 
\begin{verbatim}
\hspace
\end{verbatim}
is now interpreted as the (unknown) command
\verb=\hsp=, followed by an active \verb=a=, then a character
\verb=c=, followed finally by an active \verb=e=.  For this reason, I
suggest that any macros that you use within the Makor environment
consist solely of uppercase letters.  Uppercase letters retain the
same categorization---and hence the meaning---in Makor as in \TeX, and
so you run far fewer risks of unexpected surprises if you stick to
{\sc uppercase\/} macro names.

\subsection{Including \protect\TeX\ or \protect\LaTeX\ commands in
Makor}
Makor provides the \verb=\EXEC= command to {\sc exec}ute commands
within Hebrew typesetting.  So, for example, to get
\[`b\EXEC{\hskip2pc}gd\], you type
\begin{verbatim}
\[`b\EXEC{\hskip2pc}gd\]
\end{verbatim}
Any string of commands can serve as an argument to 
\verb=\EXEC=.

\[\GDEF\MKR{mauqOr}\]
\subsection{Macros containing Hebrew text}
The business about category codes alluded to above means that you have
to be careful about defining macros containing Hebrew input.  Suppose
I want to define \verb=\MKR= to typeset \[\MKR\].  I can't say
\begin{verbatim}
\def\MKR{mauqOr}
\end{verbatim}
because \TeX\ assigns to the replacement text the usual category
codes.  The trick is to create the macro {\it inside\/} of the Makor
environment, using global definitions (because \verb=\[...\]= creates
a group), and to use \verb=\GDEF= which has been \verb=\let= equal to
\verb=\gdef=.  As you can see, you'll need to use plain \TeX\ syntax
to create new macros (at least for the moment).  Thus, we type
\begin{verbatim}
\[\GDEF\MKR{mauqOr}\]
\end{verbatim}
to create the \verb=\MKR= macro.

\subsection{White space around a paragraph}
You have to be careful to get indentation correct, particularly
when enter paragraphs that are entirely (or predominantly) Hebrew.
Please note, you cannot have more than one paragraph within
\verb=\[...\]=.  Terminate each paragraph ith \verb=\]=, and begin the
new one with \verb=\[=.

If you enter a paragraph of text like this:
\smallen
\begin{verbatim}
\[laukhaen chakoo-liy n'`um-ydwd l'yOm qoomiy l'``ad kiy 
mish^'pautiy l|e`:esof gOyim l'qauv'tsiy mam'laukhOs^ lish^pokh^'
``:alaeyhem za``'miy kol x:arOn `apiy kiy b'`eish^ qin'`aus^iy
t^|"`+khael k+l-h+`|+rets.\]
\end{verbatim}
\endsmallen
you get

\[laukhaen chakoo-liy n'`um-ydwd l'yOm qoomiy l'``ad kiy 
mish^'pautiy l|e`:esof gOyim l'qauv'tsiy mam'laukhOs^ lish^pokh^'
``:alaeyhem za``'miy kol x:arOn `apiy kiy b'`eish^ qin'`aus^iy
t^|"`+khael k+l-h+`|+rets.\]

\noindent which may not be exactly what you want.  To suppress the
indentation on the {\it left\/}, use the standard \verb=\noindent=
command:
\begin{verbatim}
\noindent\[laukhaen chakoo-liy...
    ...\]
\end{verbatim}

To get indentation on the {\it right\/} side, use the special
\verb=\HINDENT= command.  At the end of the paragraph, you can control
the appearance of the last line with one of a pair of Makor commands.
For example, to get the last line flush right, use the \verb=\HPAR=
command: 
\begin{verbatim}
\noindent\[\HINDENT laukhaen chakoo-liy...
    ...k+l-h+`|+rets.\HPAR\]
\end{verbatim}
to get:

\noindent\[\HINDENT laukhaen chakoo-liy n'`um-ydwd l'yOm qoomiy l'``ad kiy 
mish^'pautiy l|e`:esof gOyim l'qauv'tsiy mam'laukhOs^ lish^pokh^'
``:alaeyhem za``'miy kol x:arOn `apiy kiy b'`eish^ qin'`aus^iy
t^|"`+khael k+l-h+`|+rets.\HPAR\]

It's also possible to {\it center\/} the last line of the Hebrew
paragraph, using a trick that relies on mixing left-right and
right-left modes.  We type
\begin{verbatim}
\noindent\[laukhaen chakoo-liy...
    ...k+l-h+`|+rets.\CENTERLASTLINE\]
\end{verbatim}
to get:

\noindent\[laukhaen chakoo-liy n'`um-ydwd l'yOm qoomiy l'``ad kiy 
mish^'pautiy l|e`:esof gOyim l'qauv'tsiy mam'laukhOs^ lish^pokh^'
``:alaeyhem za``'miy kol x:arOn `apiy kiy b'`eish^ qin'`aus^iy
t^|"`+khael k+l-h+`|+rets.\CENTERLASTLINE\]

\noindent Alas, this trick does not seem to work in pure English
language typesetting.

\subsection{Hebrew alignments and tables}
I'd like to describe here a macro---a variation of plain \TeX's
\verb=\halign=---that makes it possible to type Hebrew columns left to
right and have them typeset right to left.  I used \verb=\halign= as a
model rather than \LaTeX's \verb=\tabular= because \verb=\halign= has
always been more versatile.

\smallskip\noindent{\bf Caveat!} This macro works by writing certain
information to a temporary file; it is this operation that allows
Makor to reverse the order of columns.  However, as a result, strange
things are apt to happen if you go too wild in your table macros.
Some of this strangeness will be discussed below.  Always be alert to
the fact that you may have to reorganize or your tabular data or set up
the table in a different way to get it to typeset.  I invite motivated
readers to re-do these macros in a more robust manner.\smallskip

Simple tables, such as those in figures~\ref{consonants},
\ref{vowels}, and~\ref{mkr-font-families}, require no special
treatment.  The table in figure~\ref{hitpael}\ is a slightly different
story. Makor provides a 
\begin{verbatim}
\HEBALIGN
\end{verbatim}
alignment macro for producing
tables like this.  Although \verb=\HEBALIGN= is no way near as robust
or versatile as \verb=\halign= (the plain \TeX\ antecedent of \LaTeX's
\verb=\tabular= environment), I hope it will be of use.  Basically, we
seek to enter enter columns and column data from left to right and
have it typeset in right to left format.  

As with all \TeX\ environments, \verb=\HEBALIGN= requires a template
followed by any number of row data.  Both the rows and the templates
are arguments of a \verb=\CR= macro, which {\em precedes\/} the
template or row data.  As in standard \TeX, the tabbing symbol
\verb=&= separates each column.  {\em Unlike\/} standard \TeX, there
must be the same number of \verb=&='s on each line.  (Otherwise, the
data will line up in a manner you won't have anticipated.)  In particular,
\TeX's neat \verb=&&= convention for the template row can {\em not\/}
be used in \verb=\HEBALIGN=.  Essentially, any formatting commands can
appear in the template specification.  However, you cannot use the
\verb=#= tabbing symbol; there is a category code conflict.  Use the
Makor macro \verb=\H= instead.  Thus, a simple table could be typed as
\begin{verbatim}
\tabskip=1.5pc
\hfontdef{X}{ezramm}{10pt}
\HEBALIGN{\CR{\hfil\[\H\]&\[\H\]\hfil}% end of template
	\CR{`&baeys^}% end of first row
	\CR{gimel&d}% end of second row
} % end of \HEBALIGN
\end{verbatim}
and which typesets 

\vbox{\tabskip=1.5pc
\hfontdef{X}{ezramm}{10pt}
\HEBALIGN{\CR{\hfil\[\H\]&\[\H\]\hfil}% end of template
	\CR{`&baeys^}% end of first row
	\CR{gimel&d}% end of second row
} % end of \HEBALIGN
}

\noindent This could also have been coded as
\begin{verbatim}
\HEBALIGN{\CR{\hfil\H&\H\hfil}% end of template
	\CR{\[`\]&\[baeys^\]}% end of first row
	\CR{\[gimel\]&\[d\]}% end of second row
} % end of \HEBALIGN
\end{verbatim}

There's also a \verb=\HEBNOALIGN= macro, which works like the usual
\verb=\noalign= command.  To get

\smallskip\noindent
\HEBALIGN{\CR{\hfil\[\H\]&\[\H\]\hfil}% end of template
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{`&baeys^}% end of first row
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\omit Gimel&d}% end of second row
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
} % end of \HEBALIGN
\medskip
\noindent you type\smallen
\begin{verbatim}
\HEBALIGN{\CR{\hfil\[\H\]&\[\H\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{`&baeys^}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\omit Gimel&d}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
}
\end{verbatim}
\egroup

\subsection{Excessive complexity}
\verb=\HEBALIGN= is no way near as robust as plain \TeX's
\verb=\halign=.  So, a construction like 
\setbox0=\vbox{\tabskip1pc\halign{\hfil\it #\hfil&\hfil\it #\hfil\cr 
	c&d\cr e&f\cr}}%
\noindent{\large\bf\tabskip=1.5pc\halign{\hfil#\hfil&\hfil#\hfil\cr
a&b\cr
$\vcenter{\box0}$&g\cr}}\noindent does not seem to be directly possible
with \verb=\HEBALIGN=.

To accomplish something similar, you need to
create a box with a statement like\smallen
\begin{verbatim}
\setbox0=\vbox{\declarehdefault{hmr}\baselineskip=1pt
	\HEBALIGN{\CR{\hfil\H\hfil&\hfil\H\hfil}
	\CR{\[g\]&\[d\]}
	\CR{\[h\]&\[w\]}}}
\end{verbatim}
\endsmallen
and then use this box in the main table:\smallen
\begin{verbatim}
\tabskip=1.5pc\HEBALIGN{\CR{\hfil\H\hfil&\hfil\H\hfil}
	\CR{\[`\]&\[v\]}
	\CR{$\vcenter{\box0}$&\[z\]}}
\end{verbatim}
\endsmallen
which yields: \setbox0=\vbox{\declarehdefault{hmr}\baselineskip=10pt
	\HEBALIGN{\CR{\hfil\H\hfil&\hfil\H\hfil}
	\CR{\[g\]&\[d\]}
	\CR{\[h\]&\[w\]}}}
\declarehdefault{HHMMRR}
\noindent{\tabskip=1.5pc\HEBALIGN{\CR{\hfil\H\hfil&\hfil\H\hfil}
	\CR{\[`\]&\[v\]}
	\CR{$\vcenter{\box0}$&\[z\]}}}

\noindent
The lesson is that you have to be prepared to adopt non-standard
approaches to Hebrew typesetting with Makor.
\declarehdefault{SIL}

\subsection{Protection}
Owing to the aforementioned conflicts in category codes, you need to
protect a command which is not primitive.  For this you use the Makor
command 
\begin{verbatim}
\MPROTECT
\end{verbatim}
inside the \verb=\def=inition for
\verb=\myprotects=, which Makor examines.  Thus, if we type\smallen
\begin{verbatim}
\def\myprotects{\MPROTECT\multispan\MPROTECT\bf}
\HEBALIGN{\CR{\H&\H&\H&\hfil\[\H\]&\[\H\]\hfil}% end of template
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\multispan3:\hfil Silly\hfil:&\multispan2\hfil\[sh^aulOm!\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\[1\]&\[2\]&\[3\]&`&baeys^}% end of first row
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{1&2&3&\omit\bf Gimel&d}% end of second row
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
} % end of \HEBALIGN
\end{verbatim}
\endsmallen
you get \medskip

\tabskip=2pc\def\myprotects{\MPROTECT\multispan\MPROTECT\bf}
\HEBALIGN{\CR{\H&\H&\H&\hfil\[\H\]&\[\H\]\hfil}% end of template
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\multispan3:\hfil Silly\hfil:&\multispan2\hfil\[sh^aulOm!\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\[1\]&\[2\]&\[3\]&`&baeys^}% end of first row
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{1&2&3&\omit\bf Gimel&d}% end of second row
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
} % end of \HEBALIGN
\medskip

\noindent about which I need to make a few comments: (1) the value of
\verb=\tabskip= is \the\tabskip; (2) numerals taken from the
prevailing Hebrew font may well differ from those taken from the
prevailing Roman font; and (3) I needed to \verb=\MPROTECT= both
\verb=\multispan= and \verb=\bf=, the latter because the \LaTeX/NFSS
assigns a rather different expansion than does plain \TeX.  When in
doubt, you can always \verb=\MPROTECT= a command; it should do no harm
in any case.  

\subsection{Suppressing reversal}
If necessary, you can suppress the reversal process of several
columns.  Do this by enclosing the {\em data\/} (not the template) in
curly brackets, and these brackets will certainly span several
columns.  For example, if we make the simple change\smallen
\begin{verbatim}
\tabskip=2pc\def\myprotects{\MPROTECT\multispan\MPROTECT\bf}
\HEBALIGN{\CR{\H&\H&\H&\hfil\[\H\]&\[\H\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\multispan3:\hfil Silly\hfil:&\multispan2\hfil\[sh^aulOm!\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{{\[1\]&\[2\]&\[3\]}&`&baeys^}%% <== OBSERVE EXTRA BRACKETS!
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{1&2&3&\omit\bf Gimel&d}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
} % end of \HEBALIGN
\end{verbatim}
\endsmallen
to the code for the previous table, we get this instead:\medskip

\tabskip=2pc\def\myprotects{\MPROTECT\multispan\MPROTECT\bf}
\HEBALIGN{\CR{\H&\H&\H&\hfil\[\H\]&\[\H\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{\multispan3:\hfil Silly\hfil:&\multispan2\hfil\[sh^aulOm!\]\hfil}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{{\[1\]&\[2\]&\[3\]}&`&baeys^}%% <== OBSERVE EXTRA BRACKETS!
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
	\CR{1&2&3&\omit\bf Gimel&d}
	\HEBNOALIGN{\vskip2pt\hrule\vskip2pt}
} % end of \HEBALIGN
\bigskip

Figure~\ref{hitpael}\ puts most of this stuff together.  It is the
product of\smallen 
\begin{verbatim}
\newdimen\HTABSKIP \HTABSKIP=8pt
\declarehdefault{XX}
\let\OMIT=\omit \let\HFIL=\hfil \let\QUAD=\quad
\def\SPACEDRULE{\vskip2pt\hrule\vskip2pt}
\def\SSPACEDRULE{\vskip3pt\hrule height1.5pt\vskip3pt}
\def\myprotects{\MPROTECT\SPACEDRULE\MPROTECT\multispan\MPROTECT\hfont
	\MPROTECT\QUAD\MPROTECT\SSPACEDRULE\MPROTECT\it}
\tabskip=0pt
\noindent\HEBALIGN{\CR{
 \hfil\H\tabskip=0pt&\hfil\H&\hfil\H&\hfil\H&
 \it\hfil\H\hfil&%
 \hfil\H&\hfil\H&\hfil\H&\tabskip=0pt\hfil\H\tabskip=\HTABSKIP}% end template
\HEBNOALIGN{\SSPACEDRULE}
\CR{\multispan9\hfil\[\hfont{XXBB}his^'pal*ael\]\hfil}
\HEBNOALIGN{\SPACEDRULE}
\CR{\multispan9\hfil\[\hfont{XXB}bnyyn hs^f``l\QUAD gzrs^ shlmym\]\hfil}
\CR{\multispan4\hfil\[\hfont{XXB}zkhr\]\hfil&&\multispan4\hfil\[\hfont{XXB}%
	nqvh\]\hfil}
\HEBNOALIGN{\SPACEDRULE}
\CR{\OMIT\HFIL\[\hfont{XB}``vr\]\HFIL&\OMIT\HFIL\[\hfont{XB}hwwh\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}``s^yd\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}tswwy\]\HFIL&&\OMIT\HFIL\[\hfont{XB}``vr\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}hwwh\]\HFIL&\OMIT\HFIL\[\hfont{XB}``s^yd\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}tswwy\]\HFIL}
\HEBNOALIGN{\SPACEDRULE}
\CR{\[his^'pal*al't^iy\]&\[mis^'pal*ael\]&\[`es^'pal*ael\]&&
	I&\[his^'pal*al't^iy\]&\[mis^'pal*eles^\]&%
	\[`es^'pal*ael\]&}
\CR{\[his^'pal*al't^au\]&\[mis^'pal*ael\]&\[t^is^'pal*ael\]&%
	\[his^'pal*ael!\]&you&\[his^'pal*al't^'\]&%
	\[mis^'pal*eles^\]&\[t^is^'pal*'liy\]&\[his^'pal*'liy!\]}
\CR{\[his^'pal*ael\]&\[mis^'pal*ael\]&\[yis^'pal*ael\]&&(s)he&%
	\[his^'pal*'lauh\]&\[mis^'pal*eles^\]&\[t^is^'pal*ael\]&}
\HEBNOALIGN{\SPACEDRULE}
\CR{\[his^'pal*al'noo\]&\[mis^'pal*'liym\]&\[nis^'pal*ael\]&&we&
	\[his^'pal*al'noo\]&\[mis^'pal*'lOs^\]&\[nis^'pal*ael\]&}
\CR{\[his^'pal*al't^em\]&\[mis^'pal*'liym\]&\[t^is^'pal*'l{}oo\]&%
	\[his^'pal*'l{}oo!\]&you&\[his^'pal*al't^en\]&%
	\[mis^'pal*'lOs^\]&\[t^is^'pal*ael'n+h\]&\[his^'pal*ael'n+h!\]}
\CR{\[his^'pal*'l{}oo\]&\[mis^'pal*'liym\]&\[yis^'pal*'l{}oo\]&&
	they&\[his^'pal*'l{}oo\]&\[mis^'pal*'lOs^\]&%
	\[t^is^'pal*ael'nauh\]&}
\HEBNOALIGN{\SSPACEDRULE}
}% end of HEBALIGN
\end{verbatim}
\endsmallen
Note carefully the shenanigans with \verb=\tabskip=, which look odd
but aren't.  Remember, the template line is reversed in the
typesetting process.

\newdimen\HTABSKIP \HTABSKIP=8pt
\declarehdefault{XX}
\let\OMIT=\omit \let\HFIL=\hfil \let\QUAD=\quad
\def\SPACEDRULE{\vskip2pt\hrule\vskip2pt}
\def\SSPACEDRULE{\vskip3pt\hrule height1.5pt\vskip3pt}
\def\myprotects{\MPROTECT\SPACEDRULE\MPROTECT\multispan\MPROTECT\hfont
	\MPROTECT\QUAD\MPROTECT\SSPACEDRULE\MPROTECT\it}
\tabskip=0pt
\begin{figure}
\begin{center}
\noindent\HEBALIGN{\CR{
 \hfil\H\tabskip=0pt&\hfil\H&\hfil\H&\hfil\H&
 \it\hfil\H\hfil&%
 \hfil\H&\hfil\H&\hfil\H&\tabskip=0pt\hfil\H\tabskip=\HTABSKIP}% end template
\HEBNOALIGN{\SSPACEDRULE}
\CR{\multispan9\hfil\[\hfont{XXBB}his^'pal*ael\]\hfil}
\HEBNOALIGN{\SPACEDRULE}
\CR{\multispan9\hfil\[\hfont{XXB}bnyyn hs^f``l\QUAD gzrs^ shlmym\]\hfil}
\CR{\multispan4\hfil\[\hfont{XXB}zkhr\]\hfil&&\multispan4\hfil\[\hfont{XXB}%
	nqvh\]\hfil}
\HEBNOALIGN{\SPACEDRULE}
\CR{\OMIT\HFIL\[\hfont{XB}``vr\]\HFIL&\OMIT\HFIL\[\hfont{XB}hwwh\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}``s^yd\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}tswwy\]\HFIL&&\OMIT\HFIL\[\hfont{XB}``vr\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}hwwh\]\HFIL&\OMIT\HFIL\[\hfont{XB}``s^yd\]\HFIL&%
  \OMIT\HFIL\[\hfont{XB}tswwy\]\HFIL}
\HEBNOALIGN{\SPACEDRULE}
\CR{\[his^'pal*al't^iy\]&\[mis^'pal*ael\]&\[`es^'pal*ael\]&&
	I&\[his^'pal*al't^iy\]&\[mis^'pal*eles^\]&%
	\[`es^'pal*ael\]&}
\CR{\[his^'pal*al't^au\]&\[mis^'pal*ael\]&\[t^is^'pal*ael\]&%
	\[his^'pal*ael!\]&you&\[his^'pal*al't^'\]&%
	\[mis^'pal*eles^\]&\[t^is^'pal*'liy\]&\[his^'pal*'liy!\]}
\CR{\[his^'pal*ael\]&\[mis^'pal*ael\]&\[yis^'pal*ael\]&&(s)he&%
	\[his^'pal*'lauh\]&\[mis^'pal*eles^\]&\[t^is^'pal*ael\]&}
\HEBNOALIGN{\SPACEDRULE}
\CR{\[his^'pal*al'noo\]&\[mis^'pal*'liym\]&\[nis^'pal*ael\]&&we&
	\[his^'pal*al'noo\]&\[mis^'pal*'lOs^\]&\[nis^'pal*ael\]&}
\CR{\[his^'pal*al't^em\]&\[mis^'pal*'liym\]&\[t^is^'pal*'l{}oo\]&%
	\[his^'pal*'l{}oo!\]&you&\[his^'pal*al't^en\]&%
	\[mis^'pal*'lOs^\]&\[t^is^'pal*ael'n+h\]&\[his^'pal*ael'n+h!\]}
\CR{\[his^'pal*'l{}oo\]&\[mis^'pal*'liym\]&\[yis^'pal*'l{}oo\]&&
	they&\[his^'pal*'l{}oo\]&\[mis^'pal*'lOs^\]&%
	\[t^is^'pal*ael'nauh\]&}
\HEBNOALIGN{\SSPACEDRULE}
}% end of HEBALIGN
\end{center}
\caption{\label{hitpael}A Hebrew verb conjugation.}
\end{figure}

\subsection{\protect\LaTeX\ and Makor}
You may run into additional clashes between Makor and \LaTeX.  I hope
to resolve these difficulties soon.

\section{Additional tools}
\subsection{fonttbl}
A couple of tools included with the Makor package may be useful to
you.  There is a file {\tt fonttbl.tex} which prints out a font table
for a Hebrew font of your choice.  For example, if I modify the top of
the file so a line defining \verb=\myfont= looks like
\begin{verbatim}
\def\myfont{hadassab at 10pt }
\end{verbatim}
and then run this file through \TeX\ and \verb=dvipdfm= (or whatever
works for you), I get a table like figure~\ref{fonttbl}.  (In reality,
there will be a few additional rows and some other minor changes when
you do it yourself in real life.)

The advantage of such a table is that it may reveal the presence of
unsuspected characters that may, on occasion, be of use.  For example,
figure~\ref{fonttbl}\ shows that the Israeli `new shekel' symbol
appears in position~164, along with other Yiddish and Ladino glyphs,
odd ligatures, and miscellaneous other things.  If we say
\begin{verbatim}
\def\NEWSHEKEL{\char164\relax}
\end{verbatim}
\def\NEWSHEKEL{\char164\relax}in 
or something equivalent 
our document, then we get \[\hfont{XX}\NEWSHEKEL\] when we use
this command in an appropriate Makor environment.

%%%%%%%%%%%%%%%%%%%% FONTTBL Macros %%%%%%%%%%%%%%%%%%%%%%%%%
%&plain
\newif\ifblankfont \blankfontfalse %\blankfonttrue
%% \message{Enter a font name >>}
%% \read-1 to\myfont
%% \def\myfont{nhadassbi at 15pt }
%% \def\myfont{rashimm at 15pt }
%% \def\myfont{silezramf at 15pt}
\ifIHaveHadassahFonts
	\def\myfont{hadassabmm at 10pt}
\else
	\def\myfont{ezrabmm at 10pt}
\fi
\font\tblfont=\myfont
\font\littlerm=cmtt8
\newcount\scr \scr=0
\newcount\scrr \scrr=0
\dimen8=\hsize \advance\dimen8 by-45pt \advance\dimen8 by-6.4pt
\divide\dimen8 by16
\def\.{\hskip1pt}\def\\{\vrule width0pt height13pt}
\def\adjustglyphend{\let\glyphend=\noboundary % the default
  \ifnum\scr<31 \let\glyphend=\relax\fi 
  \ifnum\scr=129 \let\glyphend=\relax\fi
  \ifnum\scr=18 \let\glyphend=\noboundary\fi
}
\newdimen\Vthickness \Vthickness=.5pt
\def\boxme#1{\vbox{\hrule height\Vthickness
	\hbox{\vrule width\Vthickness#1\vrule width\Vthickness}%
	\hrule height\Vthickness}}
%% The \tableentry macro originally tested for zero-widths.  It was
%% assumed that if the width of a character was zero, than the character
%% was on-existent, and vice-versa.  Unfortunately, many non-TeX fonts
%% poorly behaved---non-existent characters may have non-zero widths!
%% Inspection of the afm file may reveal non-existent characters by
%% virtue of the `.notdef' keyword, but who knows if this is a 
%% reliable test either?
\newif\ifnotdef % we'll test by the presence of .notdef
\newif\ifusingnotdefs \usingnotdefsfalse
\usingnotdefstrue
\def\notdeftests{% these tests are user defined!
  %\ifnum\scr<32 \notdeftrue \fi
  %\ifnum\scr=127 \notdeftrue \fi
}
\def\setnochar{\setbox0=\hbox to\dimen0{\hss$\times$\hss}}
\def\setachar{\setbox0=\hbox to\dimen0{\hss\tblfont\char\scr\glyphend\hss}}
\def\tableentry{%
	\adjustglyphend
	\setbox2=\hbox to\dimen8{\.\littlerm \the\scr\hss\vrule width0pt
	depth3pt
	\char\scr\glyphend\.}\dimen0=\wd2
	\setbox0=\hbox to\dimen8{\hss\tblfont\\\char\scr\glyphend\hss}%
	\ifblankfont\setbox0=\hbox to \wd0{\\\hss}\fi
        \notdeffalse % assume char is defined...
        %% \ifusingnotdefs 
        %%   \notdeftests
        %% \else 
	%%   \ifdim\wd0=0pt \notdeftrue\fi
        %% \fi
        %% \ifnotdef \setnochar \else \setachar \fi
	\setachar
	\vbox{\hrule\hbox{\vrule\vbox{\hbox to\dimen8{\vrule width0pt
		height 13pt\box0}\vskip6pt%
	        \hbox to\dimen8{\hss \box2\hss}}\vrule}\hrule}\hskip3pt}
\newcount\nrows \nrows=11%16%15
\newcount\ncols \ncols=16
\def\tableline{\scrr=0 \hbox{\loop \tableentry 
	\global\advance\scr by 1 \advance\scrr by1 \ifnum\scrr<\ncols 
        \repeat}}
\dimen0=\dp\strutbox \advance\dimen0 by\Vthickness
\begin{figure}
\ifblankfont\centerline{\bf Blank Font Table}\else
\centerline{\bf Font Table for font \lower\dimen0\boxme{\
\strut\myfont\ }}\fi
\bigskip
\newcount\thisrow \thisrow=0
\loop 
  \tableline \smallskip\advance\thisrow by1 
\ifnum\thisrow<\nrows \repeat
\caption{\label{fonttbl}A Makor font table.}
\end{figure}

\subsection{refcard}
The file {\tt refcard.tex} allows you to print out a one-page summary
of Makor, its commands, and examples of usage.  You can customize it
to the point of various font parameters.  Then, when you run it
through Omega or e\TeX, you get figure~\ref{refcard}.

\begin{figure}
\epsfxsize=6in
\begin{center}
\noindent\vbox to8in{\vss\vss
	\hbox to\epsfxsize{\hss\epsffile{refcard.eps}\hss}\vss}
\end{center}
\caption{\label{refcard}A Makor reference card.}
\end{figure}

The biblical quote, which forms part of the reference card, and which
has apeared elsewhere in this document, is the Hebrew equivalent of
``the quick brown fox...;'' all Hebrew letters (including the final
variants) appear in this single verse from Zephaniah at least once.
(Are there other verses with this characteristic?  Other Hebrew
sentences?)

\subsection{Other files}
The file {\tt koheleth.tex} provides the \TeX/Makor code for the cover
of this manual.  Its explanation requires another manual about this size.
Perhaps I'll get to it one day.

The file {\tt makormap.tex} allows you to generate a keyboard map like
figure~\ref{Israeli-keymap}.  You need to modify the command
\begin{verbatim}
\capmap{ohebr}{im}
\end{verbatim}
which is, essentially, the single line of this file.  At the moment,
the first argument can only be {\tt ezra}, {\tt rashi}, {\tt ohebr}
(for OmegaSerifHebrew), or {\tt hadassah}.  The second argument can
only be {\tt mm} for the standard Makor keyboard, or {\tt im} for the
experimental Israeli keyboard.

\section{Processing this manual}
The presence of TrueType fonts in the manual made the processing of
this manual problematic, for reasons that remain mysterious to me.

It was not a problem to run the file through either of {\tt Lambda} or
{\tt elatex}.  ({\tt Lambda} is the \LaTeX-equipped version of Omega.)
Much to my disappointment, the resulting {\tt.dvi} file could not be
fed to {\tt dvips} (version~5.86).  It's not impossible that more
current versions of {\tt dvips} would work properly, at least with
respect to TrueType fonts, but I did not investigate this.

{\tt Pdfelatex} was even less forgiving.  It complained bitterly about
the absence of encoding vectors for the TrueType fonts.  I created
such files, and included them as part of the {\tt psfonts.map} file,
but to no avail.  

The final and only successful method involved using {\tt dvipdfm} as
the \TeX\ post-processor.  This program, which was part of the
Mik\TeX\ implementation of \TeX\ which I used, was automatically set up
as part of the installation process.  As you can tell from the name,
{\tt dvipdfm} works like {\tt dvips}, but produces a {\tt.pdf} file
rather than a PostScript file.  {\tt dvipdfm} was totally unfazed by
the presence of TrueType.  I needed to nothing special beyond
installing the TrueType fonts properly.

In the presence of {\tt refcard.eps}, {\tt koheleth.pdf}, and {\tt
makormap.pdf} (all provided with the Makor software), run the
file {\tt mak\-or\-man.tex} through an extended version of \LaTeX\ (this
is a \LaTeX\ file), and possibly through {\tt dvipdfm}.  That's it!

I included the source files with this distribution to serve as
examples of the use of Makor.  I fear, though, that several of the
examples, though, are nevertheless opaque without some additional
explanation.  Although I have no time for that now, I hope to get to
that in the future. 

\newdimen\mkrfudge \mkrfudge=7in
\begin{figure}
%% \begin{center}
%% \noindent\epsffile{makormap.eps}
%% \end{center}
\noindent\hskip-2in\vbox{\null\vskip\mkrfudge
\special{pdf: epdf width 8.5in (makormap.pdf)}%
%\vskip-\mkrfudge
}
\caption[An Israeli keymap.]{\label{Israeli-keymap}An Israeli
keymap. Each `key' indicates the characters you get in a standard
American keyboard for upper- and lowercase, together with their Ascii
values, and the Israeli characters.}
\end{figure}

\hfontdef{SILIS}{ezraim}{\HSIZE}
\section{Experimental fonts}
\subsection{Israeli keyboard layout}
Experienced Israeli typists have complained to me that they would
prefer to type Hebrew input as if they were typing on an Israeli
keyboard.  That is, if you press the key corresponding to the `T' on a
typical American keyboard, you don't get the Hebrew \[t\], but rather
the key you would get if you touched the same key on an Israeli
keyboard.  That key would be labelled \[\hfont{SILIS}t\]---and that's
what you get in Makor if you use the Israeli-Makor experimental
fonts.  That is, define the fonts which use the usual Makor
conventions but assume an Israeli layout.  These fonts are identified
by the two characters `{\tt im}' instead of {\tt mm}.  That is, you
might type
\begin{verbatim}
\hfontdef{EZRAIL}{ezraim}{10pt}
\end{verbatim}
to enable an Ezra-Israeli font.  

There is a file {\tt makormap.tex} which, with the obvious
modifications at its beginning, allow you to typeset a keymap for one
of these experimental fonts.  Figure~\ref{Israeli-keymap}\ displays
one such map.  Experimental fonts for Rashi, Rashi bold, Ezra, Ezra
italic, Ezra bold, Ezra bold italic, Ezra outline, and Omega serif
Hebrew are provided.  I call them experimental because, not having a
proper Israeli keyboard, I can't test them fully.  Please let me know
if there are any difficulties or problems.

\def\helper#1#2{#2 #1}
\section{Future work; acknowledgments; bugs}
\subsection{Acknowledgments}
I am grateful to the following folk who took the time out not only to
play with this package but to alert me to problems and deficiencies:  
\helper{Bilotta}{Giuseppe},
\helper{Cataldo}{Jeremiah},
\helper{Cohen}{Tzafrir},
\helper{Fisher}{Matt},
\helper{Isaacson}{Sam},
\helper{Kirsch\-hock}{Manfred},
\helper{Lipkin}{Bernice},
\helper{Lyon}{Adam},
\helper{Neumann}{Thomas}, and
\helper{Sasaki}{Tsuguya}.
Many thanks, and thanks also for all your suggestions.

I am pleased to be able to publically acknowledge my gratitude to the
{\sc cuny} Institute for Software Design and Development ({\sc cisdd})
for their financial support of this project. 

\subsection{Future work}
Here are some of the things still needing to be done.
\begin{enumerate}
\item adapt Makor for use with an Israeli keyboard;
\item adapt Makor for Yiddish, Ladino, \ldots\ input and typesetting;
\item compatibility with Arab\TeX;
\item develop the Perl script for adapting any well-formed Hebrew font
for use with Makor;
\item work on a User Guide for this Perl Script;
\end{enumerate}

\subsection{Reporting bugs or other problems}
Please contact me at {\tt ahoenig@suffolk.lib.ny.us} to report any
problems or bugs.  Thanks for your consideration and assistance!

\section{Appendix: Using ttf-edit with Hadassah fonts}
Several of the raw fonts that are part of Makor are true type fonts,
and I found them somewhat problematical to deal with.  There are
several guides for using TTF with \TeX, but true type fonts tend to be
ill-formed, at least from \TeX's point of view.  They often contain
far more than 256~characters, and these characters are apt to be
presented in some odd and quirky ordering.  

The Hadassah fonts were delivered to me in True Type format, and it
became important to deal with them.  My tool of choice was Richard
Kinch's program
\verb=ttf_edit= (TrueTeX Systems; {\tt
kinch@truetex.com}).  At the time (late fall, 2001), this program was
made available to me in a beta-test version.  See also {\tt
www.truetex.com}. 

I issued the following series of commands:
\begin{verbatim}
ttf_edit.exe hadassah.ttf font 3 1 afm >newfont.afm
\end{verbatim}
created an {\tt.afm} file corresponding to {\tt hadassah.ttf}.  I
edited this to form {\tt new.afm}, which is distributed with makor.

Next, I typed
\begin{verbatim}
ttf_edit hadassah.ttf font new.afm 3 1 encode 
  nhadassah.ttf gen
\end{verbatim}
The font {\tt nhadassah.ttf} formed the raw font for all the Makor
fonts. 

I likewise executed the same pair of commands (with obvious
modifications) for the three other Hadassah variants.

\begin{thebibliography}{99}
\bibitem{hoenig}A. Hoenig. {\em \TeX\ Unbound: Strategies for Fonts,
Graphics, and More} New York: Oxford University Press, 1998.
\thispagestyle{empty}
\thispagestyle{empty}


\bibitem{toledo}S. Toledo. {\em A Simple Technique for Typesetting
Hebrew with Vowel Points.} TUGboat 20(1) 15--20 (March, 1999).\thispagestyle{empty}


\end{thebibliography}

\end{document}