Осваиваю написание плагинов для ST3. Взял готовый пример и пытаюсь при выборе символа вывести MessageBox. Вот код:
import os
import sublime
import sublime_plugin
class UnicodeCharacterInsertCommand(sublime_plugin.TextCommand):
def run(self, edit):
content = self.get_popup_content()
self.view.show_popup(content, flags=sublime.HTML, location=-1, max_width=400, on_navigate=self.on_choice_symbol)
def get_characters_html(self):
resources = sublime.find_resources('unicode-characters.html')
content = sublime.load_resource(resources[0])
return content
def on_choice_symbol(self, symbol):
self.view.run_command("insert", {"characters": symbol})
self.view.hide_popup()
sublime.message_dialog("message_dialog check: %s" % symbol) # вот тут саблайм падает
def get_popup_content(self):
tpl_path = os.path.dirname(os.path.realpath(__file__)) + '/unicode-characters.html'
content = open(tpl_path, 'r').read()
return content
Окно выводится, но при нажатии на кнопку ОК или попытке закрыть нажав на крестик, саблайм молча падает. Что я не так делаю?