GIMP:warum kann ich das nicht registrieren?
Frage
Gimp Gimp Ich schreibe ein Add-On für Blender, um es mit Gimp zu synchronisieren, und dieses Skript sollte in Gimp gestartet werden können, aber ich kann es nicht registrieren...Warum?
blender_gimp_sync.py:
# -*- coding: utf-8 -*-
#!/usr/bin/env python
from gimpfu import *
def blender_gimp_sync():
image_dir = "/home/antoni4040/Έγγραφα/Layout.png"
image = gimp.pdb.gimp_file_load(image_dir, image_dir)
gimp.Display(image)
register(
"python_fu_bgsync",
"Blender-Gimp Sync",
"Syncronize Gimp with Blender for texturing",
"Antonis Karvelas",
"Antonis Karvelas",
"2012",
"<Image>/Image/Blender-Gimp Sync",
"*",
[],
[],
blender_gimp_sync
)
main()
Es ist wirklich seltsam...
Lösung
Sie haben nicht gesagt, welchen Fehler Sie erhalten - aber da Sie Ihre Quelldatei gepostet haben, denke ich, ich kann es erraten:GIMP erwartet, dass seine Plug-Ins vom System ausgeführt werden können - und was den Posix-Systemen (einschließlich Linux) sagt, dass eine Datei mit einem bestimmten Interpreter oder einer bestimmten Shell ausgeführt werden soll, ist die Shebang-Zeile - die Zeile, die geht #!/usr/bin/env python
in Ihrem Beispiel.
Diese Linie muss jedoch die sein erst zeile in Ihrer Datei - die #!
zeichen darin sollten die ersten beiden Zeichen in der Datei sein.Die Zeile, die die Zeichenkodierung angibt - # -*- coding: utf-8 -*-
sollte danach kommen - es muss die zweite Zeile in der Datei sein, keine Leerzeilen dazwischen).
Stellen Sie schließlich sicher, dass das Skript als ausführbar festgelegt ist, indem Sie "chmod a + x" für die Python-Datei ausführen.
im Zusammenhang damit, aber nicht das, was das Problem verursacht, ist das Einfügen des Menüpfads zusammen mit dem Namen des Skriptmenüs in GIMP veraltet - der richtige Weg, dies zu tun, besteht darin, nach dem Parameter "Datum" nur den Namen zu übergeben, der angezeigt werden soll im Menü - "Sync" - und übergeben Sie den Menüpfad am Ende des Aufrufs als benannten Parameter, wie z: menu="<Image>/Image/Blender-Gimp"