%% This OTP, part of the Makor2 package, converts to the dagesh form
%% where appropriate.  There are two mechanisms for adding a dagesh:
%% (1) an asterisk following the letter; and (2) doubling the letter.
%% This OTP suppresses the dagesh.

input:
       1;
output:
       1;

aliases:

       AST     = 42
               ;
       RAW_LETTER      = (96-122)
               ;
       ALIF    = 96
               ;
       VET     = 97
               ;
       GIMEL   = 98
               ;
       DALET   = 99
               ;
       HE      = 100
               ;
       VAV     = 101
               ;
       ZAYIN   = 102
               ;
       HET     = 103
               ;
       TET     = 104
               ;
       YOD     = 105
               ;
       FINALKHAF       = 106
               ;
       KHAF    = 107
               ;
       LAMED   = 108
               ;
       FINALMEM        = 109
               ;
       MEM     = 110
               ;
       FINALNUN        = 111
               ;
       NUN     = 112
               ;
       SAMEKH  = 113
               ;
       AYIN    = 114
               ;
       FINALPHE        = 115
               ;
       PHE     = 116
               ;
       FINALTSADI      = 117
               ;
       TSADI   = 118
               ;
       QOF     = 119
               ;
       RESH    = 120
               ;
       SHIN    = 121
               ;
       SAV     = 122
               ;
       SHINDOT = 176
               ;
       SINDOT  = 177
               ;
expressions:
%% First, the asterisk convention...
       {RAW_LETTER}{AST}       => \1
               ;
       {SHINDOT}{AST}          => 121
               ;
       {SINDOT}{AST}           => 121
               ;
%% Now some special cases (more-or-less):
       {SHIN}{SHINDOT}         => 121
               ;
       {SINDOT}{SHIN}          => 121
               ;
%% Finally, the doubling convention.
       {ALIF}{ALIF}            => \1
               ;
       {VET}{VET}              => \1
               ;
       {GIMEL}{GIMEL}          => \1
               ;
       {DALET}{DALET}          => \1
               ;
       {HE}{HE}                => \1
               ;
       {VAV}{VAV}              => \1
               ;
       {ZAYIN}{ZAYIN}          => \1
               ;
       {HET}{HET}              => \1
               ;
       {TET}{TET}              => \1
               ;
       {YOD}{YOD}              => \1
               ;
       {FINALKHAF}{FINALKHAF}  => \1
               ;
       {KHAF}{KHAF}            => \1
               ;
       {LAMED}{LAMED}          => \1
               ;
       {FINALMEM}{FINALMEM}    => \1
               ;
       {MEM}{MEM}              => \1
               ;
       {FINALNUN}{FINALNUN}    => \1
               ;
       {NUN}{NUN}              => \1
               ;
       {SAMEKH}{SAMEKH}        => \1
               ;
       {AYIN}{AYIN}            => \1
               ;
       {FINALPHE}{FINALPHE}    => \1
               ;
       {PHE}{PHE}              => \1
               ;
       {FINALTSADI}{FINALTSADI}=> \1
               ;
       {TSADI}{TSADI}          => \1
               ;
       {QOF}{QOF}              => \1
               ;
       {RESH}{RESH}            => \1
               ;
       {SHIN}{SHIN}            => \1
               ;
       {SAV}{SAV}              => \1
               ;
       145                     => 97 % bet -> vet
               ;
       155                     => 107 % kaf -> khaf
               ;
       164                     => 116 % pe -> phe
               ;
       170                     => 122 % taf -> saf
               ;