111 lines
3.6 KiB
Plaintext
111 lines
3.6 KiB
Plaintext
lookup ccmpSubIota { sub iotaBelow by iotaLF; } ccmpSubIota;
|
|
lookup ccmpSubOgonek { sub ogonekBelow by ogonekTR; } ccmpSubOgonek;
|
|
lookup ccmpManual1 {
|
|
sub [i cyrUkrainiani j cyrje iogonekBelow]' @MG_above by [dotlessi dotlessi dotlessj dotlessj iogonek.dotless];
|
|
sub eta iotaBelow' lookup ccmpSubIota;
|
|
sub eta @MG_above iotaBelow' lookup ccmpSubIota;
|
|
sub eta @MG_above @MG_above iotaBelow' lookup ccmpSubIota;
|
|
sub eta @MG_above @MG_above @MG_above iotaBelow' lookup ccmpSubIota;
|
|
sub [a A u cyra cyrA] ogonekBelow' lookup ccmpSubOgonek;
|
|
sub [a A u cyra cyrA] @MG_above ogonekBelow' lookup ccmpSubOgonek;
|
|
sub [a A u cyra cyrA] @MG_above @MG_above ogonekBelow' lookup ccmpSubOgonek;
|
|
sub [a A u cyra cyrA] @MG_above @MG_above @MG_above ogonekBelow' lookup ccmpSubOgonek;
|
|
} ccmpManual1;
|
|
|
|
lookup ccmpManual2 {
|
|
sub commaAbove graveAbove by psilivaria;
|
|
sub commaAbove acuteAbove by psilioxia;
|
|
sub commaAbove perispomeniAbove by psiliperispomeni;
|
|
sub revCommaAbove graveAbove by dasiavaria;
|
|
sub revCommaAbove acuteAbove by dasiaoxia;
|
|
sub revCommaAbove perispomeniAbove by dasiaperispomeni;
|
|
} ccmpManual2;
|
|
|
|
feature ccmp {
|
|
script latn;
|
|
language dflt;
|
|
lookup ccmpManual1;
|
|
script grek;
|
|
language dflt;
|
|
lookup ccmpManual1;
|
|
lookup ccmpManual2;
|
|
script cyrl;
|
|
language dflt;
|
|
lookup ccmpManual1;
|
|
script DFLT;
|
|
language dflt;
|
|
lookup ccmpManual1;
|
|
} ccmp;
|
|
|
|
feature mark {
|
|
script latn;
|
|
language dflt;
|
|
lookup markAuto_letter1;
|
|
lookup markAuto_letter2;
|
|
lookup markAuto_overlay;
|
|
script grek;
|
|
language dflt;
|
|
lookup markAuto_letter1;
|
|
lookup markAuto_letter2;
|
|
lookup markAuto_overlay;
|
|
script cyrl;
|
|
language dflt;
|
|
lookup markAuto_letter1;
|
|
lookup markAuto_letter2;
|
|
lookup markAuto_overlay;
|
|
script DFLT;
|
|
language dflt;
|
|
lookup markAuto_letter1;
|
|
lookup markAuto_letter2;
|
|
lookup markAuto_overlay;
|
|
} mark;
|
|
|
|
feature mkmk {
|
|
script latn;
|
|
language dflt;
|
|
lookup mkmkAuto;
|
|
script grek;
|
|
language dflt;
|
|
lookup mkmkAuto;
|
|
script cyrl;
|
|
language dflt;
|
|
lookup mkmkAuto;
|
|
script DFLT;
|
|
language dflt;
|
|
lookup mkmkAuto;
|
|
} mkmk;
|
|
|
|
# Programming ligations
|
|
lookup arrowStickFR { sub [hyphen equal] by [minus.fr equal.fr]; } arrowStickFR;
|
|
lookup arrowStickLF { sub [hyphen equal] by [minus.lf equal.lf]; } arrowStickLF;
|
|
lookup arrowStickCR { sub [hyphen equal] by [minus.cr equal.cr]; } arrowStickCR;
|
|
lookup arrowStickLC { sub [hyphen equal] by [minus.lc equal.lc]; } arrowStickLC;
|
|
lookup arrowStickCF { sub [hyphen equal] by [minus.cf equal.cf]; } arrowStickCF;
|
|
lookup arrowStickFC { sub [hyphen equal] by [minus.fc equal.fc]; } arrowStickFC;
|
|
lookup arrowStickLR { sub [hyphen equal] by [minus.lr equal.lr]; } arrowStickLR;
|
|
lookup arrowExclamHTMLComment { sub exclam by exclam.htmlcommentstart; } arrowExclamHTMLComment;
|
|
lookup caltArrow1 {
|
|
# Arrows, sub
|
|
sub less [hyphen equal]' lookup arrowStickLC [hyphen equal]' lookup arrowStickCR greater; # <-->, <==>
|
|
sub less [hyphen equal]' lookup arrowStickLR greater; # <->, <=>
|
|
sub less [hyphen equal]' lookup arrowStickLC [hyphen equal]' lookup arrowStickCF; # <--, <==
|
|
sub less hyphen' lookup arrowStickLF; # <-
|
|
sub less exclam' lookup arrowExclamHTMLComment hyphen' lookup arrowStickLC hyphen' lookup arrowStickCF; # <!--
|
|
sub [hyphen equal]' lookup arrowStickFC [hyphen equal]' lookup arrowStickCR greater; # -->, ==>
|
|
sub [hyphen equal]' lookup arrowStickFR greater; # ->, =>
|
|
} caltArrow1;
|
|
feature calt {
|
|
script latn;
|
|
language dflt;
|
|
lookup caltArrow1;
|
|
script grek;
|
|
language dflt;
|
|
lookup caltArrow1;
|
|
script cyrl;
|
|
language dflt;
|
|
lookup caltArrow1;
|
|
script DFLT;
|
|
language dflt;
|
|
lookup caltArrow1;
|
|
} calt;
|