простий приклад lua

Почнемо з простого прикладу, який надрукує якийсь код на консолі. Створіть файл з назвою luarc у каталозі конфігурації darktable (зазвичай $HOME/.config/darktable/) і додайте до нього такий рядок:

print("Hello World !")

Запустіть darktable і ви побачите на консолі надруковану фразу “Hello World !”. Нічого вигадливого, але це початок.

На даний момент у сценарії немає нічого специфічного для darktable. Ми просто використовуємо стандартну функцію друку Lua для друку рядка. Це приємно і все таке, але ми можемо зробити і краще. Для доступу до API darktable вам спочатку потрібно “вимагати” його (require) та зберегти повернутий об’єкт у змінну. Після цього ви зможете отримати доступ до API darktable як під-поля поверненого об’єкта. Все це задокументовано в довідковому посібнику Lua API від darktable.

local darktable = require "darktable"
darktable.print_error("Hello World !")

Запустіть сценарій і … нічого не станеться. Функція darktable.print_error подібна до print, але друкуватиме повідомлення лише у тому випадку, якщо ви ввімкнули відстежування lua, запустивши darktable з “darktable -d lua” у командному рядку. Це рекомендований спосіб відстежування сценаріїв lua в darktable.

Translations