code: def event_text_key(self, event):
          
          char = event.char
          if not char or char not in string.ascii_letters:
              # ignore all non letter inputs
              return
  
          converted_char = invert_shift(char)
          log.debug("convert keycode %s - char %s to %s", event.keycode, repr(char), converted_char)
  #         self.text.delete(Tkinter.INSERT + "-1c") # Delete last input char
          self.text.insert(tkinter.INSERT, converted_char) # Insert converted char
          return "break"
docs: So a "invert shift" for user inputs:
          Convert all lowercase letters to uppercase and vice versa.