Gimp Python скрипт не отображается в меню - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь написать сценарий python -fu, чтобы просто напечатать предупреждение на консоль ошибок. У меня тоже самое работает со схемой-фу.

Но в меню не отображается с python -фу.

У меня есть скрипт в каталоге, настроенный в gimp для плагинов: / Users / myusername / Библиотека / Поддержка приложений / GIMP / 2.10 / plug-ins

файл с именем: python -fu-hello-warning.py

Запуск этого в MacOS Catalina, версия 10.15.3. Версия GIMP: 2.10.14.

Это код:

#!/usr/bin/env python

# Hello Warning 

from gimpfu import *

def hello_warning():
     pdb.gimp_message("hello warning")

register(
    "python_fu_hello_warning",
    "Hello warning",
    "Hello warning TO ERROR CONSOLE",
    "Walter Moore",
    "Walter Moore",
    "2020",
    "Hello warning (Py)...",
    "",
    [],
    [],
    hello_warning, 
    menu="<Image>/File/HelloWarning"
)

main()

Что я делаю не так?

1 Ответ

1 голос
/ 24 марта 2020

Работает для меня, поэтому я могу думать только о том, что:

  • файл не находится в одной из папок, отсканированных Gimp («Правка»> «Настройки»> «Папки»> «Плагины»)
  • вы не установили файл как исполняемый (chmod +x ...). В OSX и Linux Gimp сканирует только файлы, отмеченные как исполняемые в каталогах плагинов.

В общем случае, если ваш плагин не регистрируется:

  1. Прежде чем даже добавить его в Gimp, выполните python pluginfile.py в терминале, там будут отображаться явные ошибки. Когда он жалуется на gimpfu, вы хороши для go.
  2. Добавьте несколько видимых линий маркера print '*************************' в верхней части вашей главной страницы, это будет выполняться каждый раз, когда плагин запускается, и облегчает найдите другой вывод из вашего скрипта. Вы также можете использовать более информативные линии печати. ​​
  3. Запуск Gimp в терминале. Если вы не видите строку маркера, то ваш код, скорее всего, вообще не выполняется: это каталог, отсканированный Gimp? Это исполняемый файл?
  4. Найдите сообщения об ошибках во время выполнения и исправьте их.
...