Можно ли заставить Tkinter распознавать управляющие символы ANSI? - PullRequest
0 голосов
/ 13 октября 2019

Я пытаюсь напечатать сообщение в поле tk.Text. Сообщение является результатом функции, которая возвращает результат поиска. Я хочу, чтобы сообщение было отформатировано таким образом, чтобы только заголовок был полужирным, а результаты - обычным текстом:

search_results.append(self.text.BOLD + "Top Tracks for " + artist_found + ":" + self.text.END)
for track in top_tracks['tracks']:
    search_results.append("\t- " + track['name'])
self.search_results_msg = "\n".join(search_results)

Где self.text - это экземпляр класса ниже

class Text_Options():
  BOLD = '\033[1m'
  END = '\033[0m'

Tkinter не распознает управляющие символы ANSI. Могу ли я что-нибудь сделать для работы ANSI? Или что еще я мог сделать, чтобы достичь того, чего я хочу. Я знаю, что есть tk.Font, но так как я только хочу выделить заголовок и оставить остальное сообщение обычным, я не знаю, поможет ли .Font.

1 Ответ

0 голосов
/ 13 октября 2019

Не из коробки. Управление цветом ANSI содержит пример кода Tcl для преобразования их в разметку Tcl (в основном, замену при вставке).

...