50 lines
2.1 KiB
Text
50 lines
2.1 KiB
Text
import [copy-language add-feature add-lookup BeginLookupBlock EndLookupBlock] from "./table-util"
|
|
|
|
export : define [buildLOCL sink para glyphStore] : begin
|
|
local rec : BeginLookupBlock sink
|
|
|
|
define cyrlSRB : copy-language sink 'cyrl_SRB ' 'cyrl_DFLT'
|
|
define cyrlMKD : copy-language sink 'cyrl_MKD ' 'cyrl_DFLT'
|
|
define cyrlBGR : copy-language sink 'cyrl_BGR ' 'cyrl_DFLT'
|
|
|
|
# SRB
|
|
define loclSRB : add-feature sink 'locl'
|
|
cyrlSRB.features.unshift loclSRB.name
|
|
cyrlMKD.features.unshift loclSRB.name
|
|
loclSRB.lookups.push : add-lookup sink : object
|
|
type 'gsub_single'
|
|
substitutions : if para.isItalic
|
|
object
|
|
'cyrl/be' : glyphStore.ensureExists 'cyrl/be.SRB'
|
|
'cyrl/ghe' : glyphStore.ensureExists 'cyrl/ghe.SRB'
|
|
'cyrl/de' : glyphStore.ensureExists 'cyrl/de.SRB'
|
|
'cyrl/pe' : glyphStore.ensureExists 'cyrl/pe.SRB'
|
|
'cyrl/te' : glyphStore.ensureExists 'cyrl/te.SRB'
|
|
object
|
|
'cyrl/be' : glyphStore.ensureExists 'cyrl/be.SRB'
|
|
|
|
# BGR
|
|
define loclBGR : add-feature sink 'locl'
|
|
cyrlBGR.features.unshift loclBGR.name
|
|
loclBGR.lookups.push : add-lookup sink : object
|
|
type 'gsub_single'
|
|
substitutions : object
|
|
'cyrl/ve' : glyphStore.ensureExists 'cyrl/ve.BGR'
|
|
'cyrl/ghe' : glyphStore.ensureExists 'cyrl/ghe.italic'
|
|
'cyrl/de' : glyphStore.ensureExists 'cyrl/de.BGR'
|
|
'cyrl/zhe' : glyphStore.ensureExists 'cyrl/zhe.BGR'
|
|
'cyrl/ze' : glyphStore.ensureExists 'cyrl/ze.BGR'
|
|
'cyrl/i' : glyphStore.ensureExists 'cyrl/i.BGR'
|
|
'cyrl/ibreve' : glyphStore.ensureExists 'cyrl/ibreve.BGR'
|
|
'cyrl/igrave' : glyphStore.ensureExists 'cyrl/igrave.BGR'
|
|
'cyrl/ka' : glyphStore.ensureExists 'cyrl/ka.BGR'
|
|
'cyrl/El' : glyphStore.ensureExists 'cyrl/El.BGR'
|
|
'cyrl/el' : glyphStore.ensureExists 'cyrl/el.BGR'
|
|
'cyrl/pe' : glyphStore.ensureExists 'cyrl/pe.BGR'
|
|
'cyrl/te' : glyphStore.ensureExists 'cyrl/te.BGR'
|
|
'cyrl/sha' : glyphStore.ensureExists 'cyrl/sha.BGR'
|
|
'cyrl/shcha' : glyphStore.ensureExists 'cyrl/shcha.BGR'
|
|
'cyrl/yu' : glyphStore.ensureExists 'cyrl/yu.BGR'
|
|
'cyrl/tse' : glyphStore.ensureExists 'cyrl/tse.BGR'
|
|
|
|
EndLookupBlock.Front rec sink
|