zmienne
darktable wspiera podstawianie zmiennych w części modułów i ustawień. Takimi obszarami są na przykład:
-
Tworzenie nazw plików w module eksportu
-
Zawartość linii informacji o obrazie
-
Wyświetlanie informacji o obrazie w nakładkach i podpowiedziach stołu podświetlanego (patrz ustawienia > stół podświetlany)
-
Umieszczanie tekstu na zdjęciu w module znaku wodnego
🔗dostępne zmienne
Dostępne są poniższe zmienne, choć niektóre mogą nie być dostępne w pewnych kontekstach:
$(ROLL.NAME) rolka filmu obrazu wejściowego
$(FILE.FOLDER) folder zawierający obraz wejściowy
$(FILE.NAME) nazwa bazowa obrazu wejściowego
$(FILE.EXTENSION) rozszerzenie pliku obrazu wejściowego
$(ID) identyfikator obrazu
$(VERSION) numer wersji duplikatu
$(VERSION.IF_MULTI) to samo co $(VERSION), ale ciąg pusty, jeśli istnieje tylko jedna wersja
$(VERSION.NAME) nazwa wersji z metadanych
$(DARKTABLE.VERSION) wersja działającej instancji darktable
$(DARKTABLE.NAME) nazwa darktable
$(SEQUENCE) numer kolejny w zadaniu eksportu
$(WIDTH.SENSOR) szerokość danych RAW w pikselach przed przycięciem RAW
$(HEIGHT.SENSOR) wysokość danych RAW w pikselach przed przycięciem RAW
$(WIDTH.RAW) szerokość danych RAW w pikselach po przycięciu RAW
$(HEIGHT.RAW) wysokość danych RAW w pikselach po przycięciu RAW
$(WIDTH.CROP) szerokość obrazu w pikselach na końcu kolejki, ale przed zmianą rozmiaru eksportu
$(HEIGHT.CROP) wysokość obrazu w pikselach na końcu kolejki, ale przed zmianą rozmiaru eksportu
$(WIDTH.EXPORT) szerokość obrazu w pikselach na końcu kolejki i po zmianie rozmiaru eksportu
$(HEIGHT.EXPORT) wysokość obrazu w pikselach na końcu kolejki i po zmianie rozmiaru eksportu
$(WIDTH.MAX) maksymalna szerokość, wpisana w module eksportu
$(HEIGHT.MAX) maksymalna wysokość, wpisana w module eksportu
$(YEAR) rok w dniu importu/eksportu
$(YEAR.SHORT) dwucyfrowy rok w dniu importu/eksportu
$(MIESIĄC) numeryczny (1-12) miesiąc w dniu importu/eksportu
$(MONTH.LONG) pełna nazwa miesiąca w dniu importu/eksportu
$(MONTH.SHORT) skrócona nazwa miesiąca w dniu importu/eksportu
$(DAY) dzień w dniu importu/eksportu
$(HOUR) godzina w momencie importu/eksportu
$(MINUTA) minuta w momencie importu/eksportu
$(SECOND) sekunda w momencie importu/eksportu
$(MSEC) milisekunda w momencie importu/eksportu
$(EXIF.YEAR) Rok Exif
$(EXIF.YEAR.SHORT) Rok Exif, wersja dwucyfrowa
$(EXIF.MONTH) Miesiąc Exif, numeryczny
$(EXIF.MONTH.LONG) Miesiąc Exif, pełna nazwa
$(EXIF.MONTH.SHORT) Miesiąc Exif, skrócona nazwa
$(EXIF.DAY) Dzień Exif
$(EXIF.HOUR) Godzina Exif
$(EXIF.MINUTE) Exif minuta
$(EXIF.SECOND) Exif sekunda
$(EXIF.MSEC) Exif milisekunda
$(EXIF.DATE.REGIONAL) Data Exif w preferowanym przez użytkownika regionalnym formacie daty
$(EXIF.TIME.REGIONAL) Czas Exif w preferowanym przez użytkownika regionalnym formacie daty
$(EXIF.ISO) Wartość Exif ISO
$(EXIF.EKSPOZYCJA) Ekspozycja Exif
$(EXIF.EXPOSURE.BIAS) Błąd ekspozycji Exif
$(EXIF.APERTURE) Przysłona Exif
$(EXIF.CROP_FACTOR) Współczynnik przycięcia Exif
$(EXIF.FOCAL.LENGTH) Ogniskowa Exif
$(EXIF.FOCAL.LENGTH.EQUIV) ekwiwalent ogniskowej 35 mm Exif
$(EXIF.FOCUS.DISTANCE) Odległość ostrości Exif
$(IMAGE.EXIF) podstawowe informacje o ekspozycji z danych Exif (przysłona, ekspozycja, ISO)
$(LONGITUDE) długość geograficzna
$(LATITUDE) szerokość geograficzna
$(ELEVATION) wysokość
$(GPS.LOCATION) szerokość, długość geograficzna i wysokość (z pominięciem wszelkich wartości, które nie są ustawione)
$(STARS) liczba gwiazdek (tylko tekst)
$(RATING.ICONS) ocena w gwiazdkach (przy użyciu gwiazdek)
$(LABELS) etykiety kolorów (etykiety kolorów jako tekst)
$(LABELS.ICONS) etykiety kolorów (etykiety kolorów jako ikony)
$(MAKER) producent aparatu
$(MODEL) model aparatu
$(OBIEKTYW) obiektyw
$(TITLE) tytuł z metadanych
$(DESCRIPTION) opis z metadanych
$(CREATOR) twórca na podstawie metadanych
$(PUBLISHER) wydawca na podstawie metadanych
$(RIGHTS) prawa do metadanych
$(TAGS)(Xmp.dc.Subject) lista tagów
$(CATEGORYn(category)) nazwa tagu poziomu n [0,9] wybranej kategorii (lub tagu)
$(SIDECAR_TXT) zawartość pobocznego pliku tekstowego (jeśli istnieje)
$(FOLDER.PICTURES) folder ze zdjęciami
$(FOLDER.HOME) folder domowy
$(FOLDER.DESKTOP) folder pulpitu
$(OPENCL.ACTIVATED) czy OpenCL jest aktywowany
$(USERNAME) nazwa użytkownika zdefiniowana przez system operacyjny
$(NL) znak nowej linii
$(JOBCODE) wewnętrzny kod zadania bieżącego zadania
🔗zamiana łańcuchów znaków
Wszystkie zmienne wspierają podstawową zamianę łańcuchów znakowych, inspirowaną językiem powłoki bash, jednak różnią się w szczegółach.
Wszystkie wzorce traktowane są jako proste porównania łańcuchów znakowych. Wyrażenia regularne nie są wspierane.
Poniżej znajduje się lista funkcji zamieniających łańcuchy znakowe, gdzie ‘var’ jest jedną ze zmiennych, opisanych poniżej:
$(zmienna-default) Jeśli zmienna jest pusta, zwraca „default"
Jako wartości "default" można użyć innej zmiennej, np.
$(WIDTH.CROP-$(WIDTH.RAW))
$(zmienna+alt_wartość) Jeśli zmienna ma wartość, zwraca „alt_wartość", w przeciwnym razie pusty łańcuch.
$(zmienna:offset) Zwraca zmienną od pozycji offset.
Jeśli offset jest ujemny, liczy pozycję od końca łańcucha.
$(zmienna:offset:dl) Zwraca zmienną o maksymalnej długości dl, począwszy od pozycji offset.
Jeśli offset jest ujemny, dl liczona jest od końca zmiennej.
Jeśli dl jest ujemna, wskazuje koniec wyniku,
licząc od końca zmiennej, a nie faktyczną długość.
$(zmienna#wzor) Usuwa „wzor" z początku zmiennej.
$(zmienna%wzor) Usuwa „wzor" z końca zmiennej.
$(zmienna/wzor/zamiennik) Zamienia pierwsze wystąpienie „wzoru” w zmiennej na „zamiennik”.
Jeśli „zamiennik” jest pusty, „wzór” zostanie usunięty.
$(zmienna//wzor/zamiennik) Zamienia wszystkie wystąpienia „wzoru” w zmiennej na „zamiennik”.
Jeśli „zamiennik” jest pusty, „wzór” zostanie usunięty.
$(zmienna/#wzor/zamiennik) Jeśli zmienna zaczyna się „wzorem”, to „wzór” zostanie zastąpiony „zamiennikiem”.
$(zmienna/%wzor/zamiennik) Jeśli zmienna kończy się „wzorem”, to „wzór” zostanie zastąpiony „zamiennikiem”.
$(zmienna^) Zamienia pierwszy znak zmiennej na dużą literę.
$(zmienna^^) Zamienia wszystkie znaki zmiennej na duże litery.
$(zmienna,) Zamienia pierwszy znak zmiennej na małą literę.
$(zmienna,,) Zamienia wszystkie znaki zmiennej na małe litery.
🔗formatowanie
Wzorce informacji o obrazie obsługują znaczniki markup. Na przykład dodanie poniższego spowoduje wyraźne ostrzeżenie (duży, czerwony, pogrubiony tekst), gdy inicjalizacja OpenCL nie powiedzie się:
<span alpha='1%'>$(OPENCL_ACTIVATED/no/<span foreground='red' weight='heavy' size='xx-large' alpha='100%'>OPENCL ACTIVATION FAILED</span>$(NL))</span>