[USE] Document customizations of USE categories
This commit is contained in:
parent
7287125c58
commit
bb50aae9b4
|
@ -247,6 +247,7 @@ def is_BASE_OTHER(U, UISC, UDI, UGC, AJT):
|
||||||
if UISC == Consonant_Placeholder: return True
|
if UISC == Consonant_Placeholder: return True
|
||||||
return U in [0x2015, 0x2022, 0x25FB, 0x25FC, 0x25FD, 0x25FE]
|
return U in [0x2015, 0x2022, 0x25FB, 0x25FC, 0x25FD, 0x25FE]
|
||||||
def is_CGJ(U, UISC, UDI, UGC, AJT):
|
def is_CGJ(U, UISC, UDI, UGC, AJT):
|
||||||
|
# Also includes VARIATION_SELECTOR, WJ, and ZWJ
|
||||||
return U == 0x200D or UDI and UGC in [Mc, Me, Mn]
|
return U == 0x200D or UDI and UGC in [Mc, Me, Mn]
|
||||||
def is_CONS_FINAL(U, UISC, UDI, UGC, AJT):
|
def is_CONS_FINAL(U, UISC, UDI, UGC, AJT):
|
||||||
return ((UISC == Consonant_Final and UGC != Lo) or
|
return ((UISC == Consonant_Final and UGC != Lo) or
|
||||||
|
@ -269,6 +270,7 @@ def is_HALANT(U, UISC, UDI, UGC, AJT):
|
||||||
and not is_HALANT_OR_VOWEL_MODIFIER(U, UISC, UDI, UGC, AJT)
|
and not is_HALANT_OR_VOWEL_MODIFIER(U, UISC, UDI, UGC, AJT)
|
||||||
and not is_SAKOT(U, UISC, UDI, UGC, AJT))
|
and not is_SAKOT(U, UISC, UDI, UGC, AJT))
|
||||||
def is_HALANT_OR_VOWEL_MODIFIER(U, UISC, UDI, UGC, AJT):
|
def is_HALANT_OR_VOWEL_MODIFIER(U, UISC, UDI, UGC, AJT):
|
||||||
|
# Split off of HALANT
|
||||||
# https://github.com/harfbuzz/harfbuzz/issues/1102
|
# https://github.com/harfbuzz/harfbuzz/issues/1102
|
||||||
# https://github.com/harfbuzz/harfbuzz/issues/1379
|
# https://github.com/harfbuzz/harfbuzz/issues/1379
|
||||||
return U in [0x11046, 0x1134D]
|
return U in [0x11046, 0x1134D]
|
||||||
|
@ -285,6 +287,7 @@ def is_HIEROGLYPH_SEGMENT_END(U, UISC, UDI, UGC, AJT):
|
||||||
def is_ZWNJ(U, UISC, UDI, UGC, AJT):
|
def is_ZWNJ(U, UISC, UDI, UGC, AJT):
|
||||||
return UISC == Non_Joiner
|
return UISC == Non_Joiner
|
||||||
def is_OTHER(U, UISC, UDI, UGC, AJT):
|
def is_OTHER(U, UISC, UDI, UGC, AJT):
|
||||||
|
# Also includes BASE_IND, Rsv, and SYM
|
||||||
return ((UGC in [Cn, Po] or UISC in [Consonant_Dead, Joiner, Modifying_Letter, Other])
|
return ((UGC in [Cn, Po] or UISC in [Consonant_Dead, Joiner, Modifying_Letter, Other])
|
||||||
and not is_BASE(U, UISC, UDI, UGC, AJT)
|
and not is_BASE(U, UISC, UDI, UGC, AJT)
|
||||||
and not is_BASE_OTHER(U, UISC, UDI, UGC, AJT)
|
and not is_BASE_OTHER(U, UISC, UDI, UGC, AJT)
|
||||||
|
@ -294,6 +297,7 @@ def is_OTHER(U, UISC, UDI, UGC, AJT):
|
||||||
def is_REPHA(U, UISC, UDI, UGC, AJT):
|
def is_REPHA(U, UISC, UDI, UGC, AJT):
|
||||||
return UISC in [Consonant_Preceding_Repha, Consonant_Prefixed]
|
return UISC in [Consonant_Preceding_Repha, Consonant_Prefixed]
|
||||||
def is_SAKOT(U, UISC, UDI, UGC, AJT):
|
def is_SAKOT(U, UISC, UDI, UGC, AJT):
|
||||||
|
# Split off of HALANT
|
||||||
return U == 0x1A60
|
return U == 0x1A60
|
||||||
def is_SYM_MOD(U, UISC, UDI, UGC, AJT):
|
def is_SYM_MOD(U, UISC, UDI, UGC, AJT):
|
||||||
return U in [0x1B6B, 0x1B6C, 0x1B6D, 0x1B6E, 0x1B6F, 0x1B70, 0x1B71, 0x1B72, 0x1B73]
|
return U in [0x1B6B, 0x1B6C, 0x1B6D, 0x1B6E, 0x1B6F, 0x1B70, 0x1B71, 0x1B72, 0x1B73]
|
||||||
|
|
Loading…
Reference in New Issue