;; Two-part vowel signs
((0x0B47 0x0B56)
(cond
- ((font-facility 0x25CC) < 0x0B47 0x25CC 0x0B56 >)
+ ((font-facility 0x25CC) < = 0x25CC = >)
(".+" < 0x0B48 >)))
((0x0B47 0x0B3E)
(cond
- ((font-facility 0x25CC) < 0x0B47 0x25CC 0x0B3E >)
+ ((font-facility 0x25CC) < = 0x25CC = >)
(".+" < 0x0B4B >)))
((0x0B47 0x0B57)
(cond
- ((font-facility 0x25CC) < 0x0B47 0x25CC 0x0B57 >)
+ ((font-facility 0x25CC) < = 0x25CC = >)
(".+" < 0x0B4C >)))
;; Combining marks are displayed with a DOTTED CIRCLE.
*)
(reorder
- ("(.|.+[^YJ])((J?HY)*)$"
- (1 reorder-BR) (2 reorder-Y)))
+ ("(.|.+([^YJ]|JY|HJ))((J?HY)*)$"
+ (1 reorder-BR *) (3 reorder-Y *))
+ ("(.*)(.HJ)$"
+ (1 reorder-BR) (2 = *)))
(reorder-BR
(cond
- ("J?(H)([BR])(.*)"
- (2 =) (1 =) (3 reorder-BR))
- ("(.)(.*)"
- (1 =) (2 reorder-BR))))
+ ("J?(H)([BR])"
+ (2 =) (1 =))
+ ("." =)))
(reorder-Y
- ("J?(H)(Y)(.*)"
- (2 =) (1 =) (3 reorder-Y)))
+ ("J?(H)(Y)"
+ (2 =) (1 =)))
)
;; Stage 3
("." =))
*)
+ ;; Oriya should not have half forms nor vatu forms, but
+ ;; Samyak-Oriya.ttf and utkal.ttf do have them.
(b4post
- ("(.|.+[^YH]H?)(YH)*$"
- (1 (cond ("(.H)(.+)" (1 :otf=orya=half+) (2 :otf=orya=blwf,half,vatu+))
- (".+" :otf=orya=blwf,half,vatu+)))))
+ (cond
+ ("(.H)J?(.*)"
+ (1 :otf=orya=half+)
+ (2 ("(.|.+([^YH]|JY|[BR]H))((YH)*)$" (1 lang-forms *))))
+ ("(.|.+([^YH]|JY|[BR]H))((YH)*)"
+ (1 lang-forms *))))
+
+ (lang-forms
+ (cond
+ ("(.H)J" (1 :otf=orya=half+))
+ (".H" :otf=orya=blwf,half,vatu+)
+ ("." =)))
(post
- ("(.|.+[^YH]H?)((YH)+)$"
- (2 :otf=orya=pstf+)))
+ ("(.|.+([^YH]|JY|[BR]H))((YH)+)$"
+ (3 :otf=orya=pstf+)))
)
;; Stage 4