Gimp Script-Fu не выполняет ни одно из условий
Я пытаюсь создать условный оператор в скрипте Gimp Script-Fu, и, похоже, ничего не выполняется.
(gimp-message "before cond")
(cond
[#t (gimp-message "I should see this")]
[else (gimp-message "I shouldn't see this")]
)
(gimp-message "after cond")
Вывод, который я получаю, следующий
script-fu.exe-Warning: before cond
script-fu.exe-Warning: after cond
Что я здесь не так делаю? Почему ни одно из моих gimp-сообщений не отображается в cond
заявление?
1 ответ
Решение
Я думаю, что я получил свой синтаксис для cond
из документации ракетки, так как не так много документации для TinyScheme или, более конкретно, Script-Fu
Я обнаружил, что синтаксис, распознаваемый Gimp, в основном то же самое, но заменяя скобки [] на круглые скобки ()
(gimp-message "before cond")
(cond
(#t (gimp-message "I should see this"))
(else (gimp-message "I shouldn't see this"))
)
(gimp-message "after cond")
После замены скоб я получил ожидаемый результат. Обидно, что не было никакой ошибки, чтобы сказать, что скобки были неожиданными.