Я наконец понял это посредством процесса эмпирических. Решение является довольно замысловатым:
(trap 'true' ERR; exec ttf2afm "$FONT") |
grep ...
По-видимому, exec
причины ttf2afm
принять процесс подоболочки с захваченной ошибкой, заставляя это работать в среде, где это не имеет значения если это segfaults.
Захват комплексного ERR
сигнал будет мешать подоболочке умереть и отправить сигнал в основной сценарий – который сразу завершится, если это сделает – когда программа перестала работать.
Единственная проблема состоит в том, что само ядро произведет целый набор мусора отслеживания стека непосредственно к консольному устройству однажды процесс segfaults, таким образом, не будет никакого способа препятствовать тому, чтобы он был произведен [что я знаю о], но это не имеет значения, поскольку это не влияет на stdout или stderr.
Я - автор gedit-скидки-с-цены. Ваша проблема должна быть решена в текущей версии (3.2.1).
С уважением.
Для кого-либо еще все еще испытывающего эту проблему, мне удалось заставить плагин активироваться с пользовательским сценарием для запуска gedit
это добавляет необходимый dir к PYTHONPATH
:
#!/bin/bash
export PYTHONPATH=$PYTHONPATH:/usr/lib/gedit-2/plugins
gedit $1
Я думаю, что это - ошибка. Я пытался установить его на Ubuntu 10.10 и, даже после установки gedit-plugins
, Я видел точно то же сообщение об ошибке. Эта запись ML [1] предполагает, что сценарий установки не настраивает плагин правильно:
gpdefs (который обозначает определения gedit-плагинов) является файлом, сгенерированным, настраивают, который в основном играет ту же роль как config.h, но для Python.
Если Вы устанавливаете gedit-plugins
затем gpdefs.py
установлен на /usr/lib/gedit-2/plugins/
но, как Gilles отмечает, плагин скидки с цены не добавляет его к пути Python.
[1] http://comments.gmane.org/gmane.comp.gnome.apps.epiphany/8711