10.7. Вложенное меню «Script-Fu»

Этот подменю содержит некоторые команды Script-Fu, включая консоль Script-Fu. Script-Fu - язык для написания скриптов, которые позволяют выполнять последовательность команд GIMP автоматически.

10.7.1. Activating the Submenu

You can access this command from the main menu through FiltersDevelopmentScript-Fu.

10.7.2. Консоль Script-Fu

Консоль Script-Fu - это диалог, в котором можно тестировать команды Scheme в интерактивном режиме.

The console consists of a large scrollable main window for output and a text box at the bottom to enter Scheme commands. When you type a Scheme statement and then press the Enter key, the command and its return value will be displayed in the main window.

Рисунок 16.234. Консоль Script-Fu

Консоль Script-Fu

За дополнительной информацией о Scheme и примерах использования консоли Script-Fu обратитесь к главе Раздел 3, «Инструкция по Script-Fu».

Кнопки консоли Script-Fu

Браузер

The Browse button is next to the Scheme commands text box. When clicked, the procedure browser window opens with an additional Apply button.

Select a PDB procedure from the list and press the Apply button. The selected procedure and its parameter names will be pasted into the text box of the Script Console.

Now you just have to replace the parameter names after the procedure name with actual values. Then you can call the procedure by pressing Enter.

Закрыть

При нажатии на эту кнопку консоль Script-Fu закроется.

Очистить

При нажатии на эту кнопку содержимое главного окна будет удалено. Обратите внимание, что вернуть удалённое содержимое с помощью команды Сохранить невозможно.

Сохранить

Эта команда позволяет сохранить содержимое главного окна, то есть, вывод консоли Script-Fu. (включая символы «>»).

10.7.3. Запустить сервер

This command will start a server, which reads and executes Script-Fu (Scheme) statements you send it via a specified port.

Рисунок 16.235. Порт сервера Script-Fu

Порт сервера Script-Fu

Listen on IP

The IP address the Script-Fu server will listen on. This is usually 127.0.0.1 (also known as localhost). Only change this if you know what you are doing.

Порт сервера

Номер порта, который будет прослушивать сервер Script-Fu. Можно запустить несколько серверов, каждый со своим номером порта.

Файл записи сервера

Optionally you can specify the name of a file the server will use to log informational and error messages. If no file is specified, messages will be written to stdout.

Серверный протокол Script-Fu

Протокол, используемый для общения с сервером Script-Fu, прост:

  • Каждый запрос (команда Script-Fu) длиной L, посылаемый серверу, должен следовать за этими тремя символами:

    Таблица 16.1. Формат заголовка для команд

    Номер байта Содержание Описание
    0 0x47 Магический байт ('G')
    1 L div 256 Верхний байт L
    2 L mod 256 Нижний байт L

  • Каждый ответ сервера (возвратное значение или сообщение об ошибке) длиной L следует за следующими четырьмя байтами:

    Таблица 16.2. Формат заголовка для ответа

    Номер байта Содержание Описание
    0 0x47 Магический байт ('G')
    1 код ошибки 0 при успехе, 1 при ошибке
    2 L div 256 Верхний байт L
    3 L mod 256 Нижний байт L

[Подсказка] Подсказка

Чтобы не думать о таких деталях, исходный код GIMPPython поставляется со скриптом servertest.py, который можно использовать как простую командную строку для сервера Script-Fu.