On german/french/spanish keyboards, typing [ requires modifier keys like AltGr, so the `mod==0` condition is wrong. Fixes #2573 ch != 0 is useless because IsPrint is implemented this way: if uint32(r) <= MaxLatin1 { return properties[uint8(r)]&128 != 0 } with properties[0] set to 1 (so, bit 7 not set) -> 0 is not printable.