Instead of an array self._chars = [u'',u'',u''] use three separate strings
Instead of an array self._chars = [u'',u'',u''] use three separate strings

Using self._chars_valid, self._chars_invalid, and self._chars_prevalid
instead of self._chars[0], self._chars[1], self._chars[2] makes the
code more readable because one does not have to remember what the
indices 0, 1, 2 mean.

kaio/ibus-table,mike-fabian/ibus-table,mike-fabian/ibus-table,kaio/ibus-table