Какой пакет мне нужно установить для разработки плагинов для gedit?
Я использую Ubuntu 12.04 с Python 2.7.3 и PyGObject, и я хотел бы разработать плагины для Gedit в Python. Я нашел простое учебное пособие для такого рода вещей здесь.
В соответствии с руководством мне нужен модуль Gedit для взаимодействия с интерфейсом плагина:
from gi.repository import GObject, Gedit
Я получаю ошибку импорта при попытке импортировать модуль Gedit. Итак, мой вопрос: какой пакет мне нужно установить, чтобы получить этот модуль?
Я пробовал: gedit-dev, gedit-plugins
Изменить: Вот полный обратный след для приведенного выше утверждения:
ERROR:root:Could not find any typelib for Gedit
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name Gedit
3 ответа
Чтобы ответить на ваш вопрос, библиотека типов, необходимая для разработки плагинов gedit, содержится в самом пакете gedit.
$ apt-file search Gedit-3.0.typelib
gedit: /usr/lib/gedit/girepository-1.0/Gedit-3.0.typelib
Но при использовании Python в интерактивном режиме или из скрипта, from gi.repository import Gedit поиск /usr/lib/girepository-1.0/ скорее, чем /usr/lib/gedit/girepository-1.0, Это является причиной ошибки импорта.
Вам нужно будет создать соответствующие файлы.plugin и.py в ~/.local/share/gedit/plugins и запустить код, выбрав плагин в диалоговом окне настроек gedit.
Я получаю ту же ошибку, что и вы, если запускаю код плагина напрямую без Gedit.
Как описано в руководстве, которое вы связали, вам нужно создать файл.plugin для кода вашего плагина. Поместите код вашего плагина и файл.plugin в ~/.local/share/gedit/plugins. Перезапустите Gedit. Откройте Gedit > Изменить> Настройки> Плагины и найдите свой плагин. Установите флажок для вашего плагина. Теперь ваш плагин должен работать с использованием кода Gedit.
Чтобы проверить наличие ошибок в вашем плагине, запустите gedit из консоли.
Ошибка импорта для Gedit может указывать, что GtkSource-3.0.typelib отсутствует или неправильно установлен.
Кроме того, типичные симптомы заключаются в том, что вы не можете загрузить несколько плагинов (не только тот, который вы разрабатываете сами), и что вы получаете предупреждения при запуске gedit из командной строки (видно на Ubuntu 13.10 Saucy). Вы можете исправить это, установив отсутствующий пакет:
sudo apt-get install gir1.2-gtksource-3.0
Смотрите также: Предупреждения при запуске gedit из терминала Ubuntu
Также обратите внимание, что плагины для GEdit v3 используют python3 вместо версии 2.7.x Python.