10.6. O Submenu Script-Fu

Este submenu contém alguns comandos Script-Fu, especialmente o console Script-Fu. Script-Fu é uma linguagem para escrever scripts, que permite que você execute uma série de comandos do GIMP automaticamente.

10.6.1. Activating the Submenu

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

10.6.2. Recarregar Scripts

Você vai precisar deste comando cada vez que você adicionar, remover ou alterar um script Script-Fu. O comando faz com que os Script-Fus sejam recarregados e os menus que contêm Script-Fus sejam reconstruídos a partir do zero. Se você não usar este comando, GIMP não vai notar as mudanças até que você o inicie novamente.

Note que você não vai obter qualquer retorno, a não ser que esteja exportando um arquivo, se um de seus scripts falhar.

10.6.3. Console Script-Fu

O console Script-Fu é uma janela de diálogo onde você pode testar e executarinterativamente comandos de Scheme - a linguagem do Script-fu.

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.

Figura 16.249. O Console Script-Fu

O Console Script-Fu

Você vai encontrar mais informações sobre Scheme e exemplos de como usar o console Script-Fu em Seção 3, “Um tutorial de Script-Fu”.

Os Botões do Console de Script-Fu

Procurar

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.

Fechar

Ao pressionar este botão o console Script-Fu será fechado.

Limpar

When you click on this button, the content of the main window will be removed. Note that you can't get back the removed content using the Save command.

Salvar

Este comando permite que você salve o conteúdo da janela principal, que é a saída do console Script-Fu (incluindo os caracteres >>). O conteúdo é salvo como um arquivo de texto, apenas como referência. Você pode copiar e colar trechos do arquivo para criar seu próprio Script-fu depois. Note que não há uma opção para carregar um arquivo salvo desta janela (e uma vez que o arquivo não é só a listagem dos comandos executados, mas os comandos e sua resposta, carregar o arquivo nem faria muito sentido).

10.6.4. Iniciar Servidor

Este comando inicia o servidor, Este comando irá iniciar um servidor, que lê e executa instruções Script-Fu (Scheme) que você envia através de uma porta (de rede) especifica.

Figura 16.250. Opções do Servidor Script-Fu

Opções do Servidor Script-Fu

Porta do Servidor

O número da porta que servidor Script-Fu vai ouvir. É possível iniciar mais de um servidor, especificando números de porta diferentes, é claro.

Arquivo de registros (logfile) do Servidor

Opcionalmente, você pode especificar o nome de um arquivo que o servidor usará para registrar mensagens informais e de erro. Se nenhum arquivo for especificado, as mensagens serão impressas na saída padrão.

O Protocolo do Servidor Script-Fu.

O protocolo usado para comunicações com o servidor Script-Fu é muito simples:

  • Cada mensagem (instrução Script-Fu) de comprimento L enviado para o servidor tem que ser precedido pelos 3 bytes seguintes:

    Tabela 16.1. Formato de cabeçalho para comandos

    Byte # Conteúdo Descrição
    0 0x47 byte Mágico ('G')
    1 L div 256 Byte alto de L
    2 L mod 256 Byte baixo de L

  • Cada resposta do servidor (valor de retorno ou mensagem de erro) de comprimento L será precedida pelos 4 bytes seguintes:

    Tabela 16.2. Formato de cabeçalho para respostas

    Byte # Conteúdo Descrição
    0 0x47 byte Mágico ('G')
    1 código de erro 0 em caso de sucesso, 1 em caso de erro
    2 L div 256 Byte alto de L
    3 L mod 256 Byte baixo de L

[Dica] Dica

Se você não quiser sujar as mãos: existe um script Python chamado servertest.py fornecido com o código-fonte GIMP, que pode ser usado como um simples comando de linha shell para o servidor Script-Fu.