feature case { @caseBracket = [@BRACKET_ @_BRACKET]; @casePunct = [@DASH figuredash uni2015 @GUILLEMET arrowleft arrowright @MATH]; lookup caseSub { sub questiondown by questiondown.case; sub exclamdown by exclamdown.case; } caseSub; lookup casePos { pos @caseBracket <0 70 0 0>; pos @casePunct <0 30 0 0>; } casePos; lookup caseKern { # Note: These position rules cannot be part of # the kernLatin lookup, because then they would be # added to the legacy kern table, where non-Unicode # characters cause problems for Windows applications. pos questiondown.case' -80 @_T; pos questiondown.case' -60 @_W; pos questiondown.case' -90 @_Y; } caseKern; } case; feature kern { lookup kernAll; lookup kernLatin; lookup kernGreek; lookup kernCyrillic; } kern;