Подсветка синтакса, tkinter

пытаюсь разобраться с подсветкой синтакса библиотеки Pygments. Не понимаю почему выдает ошибку "'Event' object has no attribute 'tk'". Код:

# Текстовое поле
class Tab(tk.Frame):

    def __init__(self, root, name):
        tk.Frame.__init__(self, root)

        self.root = root
        self.name = name

        # Текстовое поле
        self.textWidget = CustomText(self, font = "DejaVuSansMono 10", fg = "#111", bg = "#fff")
        # Панель с номерами строк
        linenumbers = TextLineNumbers(self, width=30)
        linenumbers.attach(self.textWidget)
        
        def on_change(event):
            linenumbers.redraw()
        
        self.textWidget.bind("<<Change>>", on_change)
        self.textWidget.bind("<Configure>", on_change)
        
        vsb = tk.Scrollbar(self, orient="vertical", command=self.textWidget.yview)
        self.textWidget.configure(yscrollcommand=vsb.set)
        
        linenumbers.pack(side="left", fill="y")
        vsb.pack(side="right", fill="y")
        self.textWidget.pack(fill='both', expand=True)
        # Сохранение файла
    def saveas(self, event=None):
        file = filedialog.asksaveasfilename(filetypes=FILE_TYPES,
                                            defaultextension=FILE_TYPES[0][1])
        if file != "":
            self.file_name = file
            self.save(file)

    def save(self, event=None):
        if self.file_name is None:
            self.saveas()
        else:
            self._save(self.file_name)

    def save_tab(self, event=None):
        file = filedialog.asksaveasfilename(filetypes=FILE_TYPES,
                                            defaultextension=FILE_TYPES[0][1])
        if file != "":
            self.file_name = file
            self.save(file)

    def _save(self, filename):
        textWidget = self.textWidget.get("0.0", "end")
        with open(filename, "w") as file:
            file.write(textWidget)
            self.saved_text = textWidget.rstrip()

        self.textWidget.tag_configure("Token.Comment", foreground="#b21111")

        # Тестовый синтакс
    def syn(self, event=None):
        self.textWidget = CustomText(self, font = "DejaVuSansMono 10", fg = "#111", bg = "#fff")
        self.textWidget.mark_set("range_start", "1.0")
        data = self.textWidget.get("1.0", "end-1c")
        for token, content in lex(data, PythonLexer()):
            self.textWidget.mark_set("range_end", "range_start + %dc" % len(content))
            self.textWidget.tag_add(str(token), "range_start", "range_end")
            self.textWidget.mark_set("range_start", "range_end")

    root.bind("<Key>", syn)

Ответы (0 шт):