Skip to content

3. Usage in the Script Fu console

AlSchemist edited this page Oct 24, 2021 · 5 revisions

3. Usage of the Gimp lambda library in the Script-Fu console

Gimp menu “Filters” > “Script-Fu” > “Console”[b] In both French and English, the keyboard shortcut is the same: Alt+R S C You need to wait for about 5 seconds for the loading of the λLib.

A flashing cursor is displayed in the input area of ​​the Script-Fu console above the “Help” button and to the left of the “Browse …” button. You are invited to enter a Script-Fu function.


3.1 What is the version of Gimp?

To start, type in the input box of the Script-Fu console the gimp-version function in parentheses without parameters:

(gimp-version)

And validate with the keyboard key “Enter” ; -> Script-Fu displays the list containing the version as a string between double quotes in a list between parentheses:

("2.10.28")


3.2 List of GimpλLib features

Then, enter the keyword “features ” in plural between two stars “*” without parentheses and validate by “Enter” *features*

It is true that parentheses are only required for calling a function, not for a global variable or constant like pi ;-> Script-Fu displays:

(tinyscheme srfi-0 srfi-1 srfi-2 srfi-6 srfi-8 srfi-9 srfi-13 srfi-23 srfi-30 srfi-32 srfi-47 srfi-60 srfi-66 srfi-111)


3.3 Features of the basic legacy library supplied with Gimp

Before installing the λLib, with the basic library, you would get only the two-part list: (srfi-0 tinyscheme)


3.4 Scheme Requests for Implementation

SRFI, followed by a number, groups together a category of Scheme functionalities alongside the RnRS standards with n between 4 and 7.

The λLib fixes the bug else according to the implementation of SRFI 0 cond-expand, which is very little (it’s an euphemism) used by authors of Scheme libraries.

TinyScheme in the Gimp Script-Fu plugin is more or less in the R4RS à R5RS movement. The last one in the features list is over a hundred. SRFI-111 on the box/unbox theme falls under the R7RS umbrella with an R5RS compatible implementation.

Clone this wiki locally