limit to one character per keypress