[Gimp-developer] Switch to Tiny-Fu, end of Script-Fu maintenance?

Kevin Cozens kcozens at interlog.com
Mon Oct 9 16:55:36 PDT 2006


Sven Neumann wrote:
> First of all, I would like to hear Kevin on this. I have asked him to
> tell us about his goals for Tiny-Fu and in order to evaluate this
> question, we absolutely need to know what the goals are.

My goals re: Tiny-Fu have never changed. See my reply to the "devel docs" thread.

> Instead of removing our only platform independent language binding, we
> should apply the changes that Kevin has done in the gimp-tiny-fu module
> to the plug-ins/script-fu directory in the GIMP tree.

You suggested moving Script-Fu (and pygimp) in to a module outside of the GIMP 
source tree in 2004. If you currently prefer to keep Script-Fu in the main 
source tree and roll the Tiny-Fu changes in to the existing Script-Fu plug-in, 
  that could be done. It would also avoid any issues relating to where 
Script-Fu bugs should be filed in Bugzilla.

 > This should be a
 > relatively small change since it only involves replacing the Scheme
 > interpreter. The scripts itself and probably most of the UI code can be
> left untouched.

Define small. ;-) It isn't all that bad but it may not be as small a change as 
you think. I have done a quick global search/replace on a copy of the Tiny-Fu 
source files so I could run a diff against Script-Fu.

I'm still reviewing the changes listed in the diff to come up with a patch 
file for the main set of changes to the Script-Fu source. At the moment, there 
are 9 files that will be altered, a tenth (siod-wrapper.c) should be renamed 
in addition to changes, the siod directory will be removed, three directories 
with source will be added, and a few Makefile will need to be updated.

I would suggest using the Tiny-Fu scripts as they are known to work with 
Tiny-Fu. The Script-Fu ones may work but I haven't tested them recently and 
don't particularly feel like going through the process of testing 95+ scripts 
(again). I would also prefer to use the Tiny-Fu I had made some of the 
globally defined functions in the script files local to functions in the 
script. This avoids conflicts between scripts that defined a function with the 
same name but may not have been identical. In addition, I reformatted the 
Tiny-Fu scripts which makes it easier to see the syntax of the language. IMO 
this makes them better as example scripts, and makes it easier for the new or 
casual Script-Fu writer to write or modify a script as they won't have to 
waste a ton of time counting brackets to find out where they missed one (or 
more) brackets.

 > Development on Script-Fu can then continue as usual and
> hopefully under the lead of Kevin and the tiny-fu CVS module has
> fulfilled its role and can be declared as merged and closed.

I don't plan on going anywhere. In the short term, I would be about the only 
one familiar with the TinyScheme portion of a new Script-Fu. The Tiny-Fu could 
probably be closed after a merge although I wonder if it might still have any 
value as a sandbox for work relating to version 2.

I will work on creating a TinyScheme based Script-Fu. I will want a clear "go 
ahead" from the core developer(s) before a TinyScheme based version of 
Script-Fu gets commited to the main GIMP source tree. Once a merge takes place 
we will be commited to using "Tiny-Fu" due mainly to the number of changes and 
the hassle it would be to back out all the changes.

-- 
Cheers!

Kevin.

http://www.interlog.com/~kcozens/ |"What are we going to do today, Borg?"
Owner of Elecraft K2 #2172        |"Same thing we always do, Pinkutus:
                                   |  Try to assimilate the world!"
#include <disclaimer/favourite>   |              -Pinkutus & the Borg



More information about the Gimp-developer mailing list