Hello, > "Debugging Script-Fu scripts is only slightly less painful than stabbing > yourself in the eye with a dull spoon. indeed debugging gimp scripts is a pain and I encountered it several times. There are several ways to make it easier to follow the execution (defining some functions which will print all the arguments passed to other functions) but I'm unaware of any interactive debugging utility. > As a more long term fantasy, has there been any discussion of an RPC > portal to the Procedure Database. > > This would allow add-ons to be written in any language with a relatively > small investment in each. The big plus for the developers of add-on > would be the ability to use existing IDEs with a DEBUGGER. As far as I know, there are some plans to introduce javascript as the new scripting language for GIMP. It was suggested for this year's summmer of code, but eventually other projects were taken. If the suggestion to move to javascript is likely to happen anywhere in the near future, I'm not sure if it's worth it to try write a scheme debugger. Also, a note from the manual of tinyscheme (the scheme implementation GIMP currently uses): > Decent debugging facilities are missing. Only tracing is supported > natively. So basically, I don't see any trivial way to implement debugging into GIMP's scheme withou a serious re-write of GIMP's scheme. I have only two solutions which are a quick and ugly but they'll work: 1. On my first programming course in the university we learned scheme, and we wrote a scheme interpeter in scheme for learning purposes. I think I can hack it and add debugging features to it as I still remember it's code - then in order to debug a script, you would simply pass the script as a to a function called "mc-eval". I'll need to ask permission from my professor to distribute the code, but I'm pretty sure he'll agree. 2. We can connect an external scheme implementation which supports debugging (I have one which I wrote in java, and there are probably more better existing ones) and allow it to run the script itself. When it doesn't find a function, then it will invoke the aproppriate procedure from GIMP using a call to the PDB (since if a script uses a function which is not defined in it, it's probably a gimp procedure) So, I see no way of implementing a scheme debugger in GIMP nativly, but there are two tools which we can connect externally to provide debugging options. Back to javascript - I think that a debugger should be included on the project's todo. These are my thoughts - tell me if any of them seem interesting enough to try. ~LightningIsMyName _______________________________________________ Gimp-developer mailing list Gimp-developer@xxxxxxxxxxxxxxxxxxxxxx https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer