The Gimp-Perl package, written by Marc Lehmann, allows you to write Gimp plug-in scripts in Perl. The Gimp actually has its own internal scripting language called Script-Fu that allows you to access internal procedures and plug-ins and create high-level scripts. Script-Fu is based on the Scheme programming language. All of the scripts that come bundled with the Gimp are Script-Fu scripts. Scripts and plug-ins written in Perl are sometimes referred to as Perl-Fu scripts. The remainder of this chapter is going to be focused on writing plug-ins with Perl rather than in Script-Fu for two reasons:
Perl is a much more robust scripting language and has many “hooks” to the world outside the Gimp that are very useful when creating plug-ins that are meant to be integrated into web applications.
Because Script-Fu was the first scripting engine to be distributed with the Gimp, it is documented in other places; see the Gimp Users Manual at http://manual.gimp.org if you are interested in Script-Fu tutorials.
If you want to write plug-ins that are meant to be usable by anyone with a copy of the Gimp, you may want to consider writing it in Script-Fu, since the Script-Fu interpreter is the “official” script interpreter distributed with the Gimp (at least, the only one as of Version 1.0). Also, the Gimp-Perl interface must be installed separately, and is pretty complex. Not too complex, though, and with that complexity comes power. The focus on Script-Fu may change ...