# Use this table to test various combinations of emphasis opcodes.
# Uncomment groups of opcodes and run with ../yaml/new_emph.yaml.

include tables/spaces.uti
include tables/latinLetterDef6Dots.uti
include tables/digits6Dots.uti
include tables/braille-patterns.cti

punctuation . 256
punctuation - 36

emphclass italic

#emphword italic 456
#emphwordstop italic 6
#firstletteremph italic 3456
#lastletteremph italic 123456
#singleletteremph italic 45
#lenemphphrase italic 400
#firstwordemph italic 56
#lastwordemphbefore italic 12346
#lastwordemphafter italic 2356
