darktable gebruiken vanuit een lua-script
Waarschuwing: deze functie is erg experimenteel. Het is bekend dat verschillende elementen nog niet werken in bibliotheekmodus. Zorgvuldig testen wordt ten zeerste aanbevolen.
Met de lua-interface kan je darktable vanuit elk lua-script gebruiken. Dit zal darktable als een bibliotheek laden en jou voorzien van het meeste van de lua API (darktable is zonder interface geconfigureerd, dus de functies met betrekking tot de gebruikersinterface zijn niet beschikbaar).
Als voorbeeld zal het volgende programma de lijst met alle afbeeldingen in uw bibliotheek afdrukken:
#!/usr/bin/env lua
package = require "package"
package.cpath=package.cpath..";./lib/darktable/lib?.so"
dt = require("darktable")(
"--library", "./library.db",
"--datadir", "./share/darktable",
"--moduledir", "./lib/darktable",
"--configdir", "./configdir",
"--cachedir","cachedir",
"--g-fatal-warnings")
require("darktable.debug")
for k,v in ipairs(dt.database) do
print(tostring(v))
end
Let op de derde regel die verwijst naar de locatie van het bestand libdarktable.so
.
Merk ook op dat de aanroep om een functie die retourneert te vragen slechts één keer kan worden aangeroepen en waarmee je de opdrachtregelparameter van darktable kunt instellen. De parameter :memory:
to --library
is hier handig als u niet aan jouw persoonlijke bibliotheek wilt werken.
translations
- English: using darktable from a lua script
- German (translation incomplete): Arbeiten mit darktable von einem Lua Skript
- Polish (translation incomplete): użycie darktable ze skryptu lua
- Português (translation incomplete): usar o darktable a partir de um script lua
- Ukrainian (translation incomplete): використання darktable зі сценарію lua