zmienne

darktable wspiera podstawianie zmiennych w części modułów i ustawień. Takimi obszarami są na przykład:

🔗dostępne zmienne

Dostępne są poniższe zmienne, choć niektóre mogą nie być dostępne w pewnych kontekstach:

$(ROLL.NAME)               film roll of the input image
$(FILE.FOLDER)             folder containing the input image
$(FILE.NAME)               basename of the input image
$(FILE.EXTENSION)          extension of the input image
$(ID)                      the image id
$(VERSION)                 the duplicate version number
$(VERSION.IF_MULTI)        same as $(VERSION) but null string if only one version exists
$(VERSION.NAME)            version name from metadata
$(DARKTABLE.VERSION)       the version of the running darktable instance
$(DARKTABLE.NAME)          name of darktable
$(SEQUENCE[n,m])           a sequence number within an export job with n digits and starting with m
                           parameters are optional, default is [4,1]
$(WIDTH.SENSOR)            width of RAW data in pixels before RAW crop
$(HEIGHT.SENSOR)           height of RAW data in pixels before RAW crop
$(WIDTH.RAW)               width of RAW data in pixels after RAW crop
$(HEIGHT.RAW)              height of RAW data in pixels after RAW crop
$(WIDTH.CROP)              image width in pixels at the end of the pixelpipe, but before export resize
$(HEIGHT.CROP)             image height in pixels at the end of the pixelpipe, but before export resize
$(WIDTH.EXPORT)            image width in pixels at the end of the pixelpipe and after export resize
$(HEIGHT.EXPORT)           image height in pixels at the end of the pixelpipe and after export resize
$(WIDTH.MAX)               maximum width entered in export module
$(HEIGHT.MAX)              maximum height entered in export module
$(YEAR)                    year at date of import/export
$(YEAR.SHORT)              two-digit year at date of import/export
$(MONTH)                   numeric (1-12) month at date of import/export
$(MONTH.LONG)              full month name at date of import/export
$(MONTH.SHORT)             abbreviated month name at date of import/export
$(DAY)                     day at date of import/export
$(HOUR)                    hour at time of import/export
$(MINUTE)                  minute at time of import/export
$(SECOND)                  second at time of import/export
$(MSEC)                    millisecond at time of import/export
$(EXIF.YEAR)               Exif year
$(EXIF.YEAR.SHORT)         Exif year, two-digit version
$(EXIF.MONTH)              Exif month, numeric
$(EXIF.MONTH.LONG)         Exif month, full name
$(EXIF.MONTH.SHORT)        Exif month, abbreviated name
$(EXIF.DAY)                Exif day
$(EXIF.HOUR)               Exif hour
$(EXIF.MINUTE)             Exif minute
$(EXIF.SECOND)             Exif second
$(EXIF.MSEC)               Exif millisecond
$(EXIF.DATE.REGIONAL)      Exif date using user's preferred regional date format
$(EXIF.TIME.REGIONAL)      Exif time using user's preferred regional date format
$(EXIF.ISO)                Exif ISO value
$(EXIF.EXPOSURE)           Exif exposure
$(EXIF.EXPOSURE.BIAS)      Exif exposure bias
$(EXIF.EXPOSURE.PROGRAM)   Exif exposure program set in camera
$(EXIF.APERTURE)           Exif aperture
$(EXIF.CROP_FACTOR)        Exif crop factor
$(EXIF.FLASH)              Exif flash setting
$(EXIF.FLASH.ICON)         flash symbol if Exif information says flash was fired, empty string if not
$(EXIF.FOCAL.LENGTH)       Exif focal length
$(EXIF.FOCAL.LENGTH.EQUIV) Exif 35 mm equivalent focal length
$(EXIF.FOCUS.DISTANCE)     Exif focus distance
$(EXIF.LENS)               Exif lens name
$(EXIF.MAKER)              Exif camera maker
$(EXIF.METERING)           Exif metering mode
$(EXIF.MODEL)              Exif camera model
$(EXIF.WHITEBALANCE)       Exif white balance set in camera
$(IMAGE.EXIF)              basic exposure information from Exif data (aperture, exposure, ISO)
$(IMAGE.ID)                the image id (note that this will be 0 during copy&import)
$(IMAGE.ID[n])             the image id (note that this will be 0 during copy&import), zero-padded to n digits
$(IMAGE.ID.NEXT)           the next image id to be assigned (can be used during copy&import)
$(IMAGE.ID.NEXT[n])        the next image id to be assigned (can be used during copy&import), zero-padded to n digits
$(IMAGE.TAGS)              tags list (Xmp.dc.Subject), with any hierarchy flattened
$(IMAGE.TAGS.HIERARCHY)    tags list (Xmp.dc.Subject), preserving hierarchy
$(LONGITUDE)               longitude
$(LATITUDE)                latitude
$(ELEVATION)               elevation
$(GPS.ELEVATION)           elevation
$(GPS.LATITUDE)            latitude
$(GPS.LONGITUDE)           longitude
$(GPS.LOCATION)            latitude, longitude, and elevation (omitting any values which are not set)
$(GPS.LOCATION.ICON)       symbol to indicate that geolocation information is present, empty string if not
$(STARS)                   star rating (text only)
$(RATING.ICONS)            star rating (using star characters)
$(LABELS)                  colorlabels (color labels as text)
$(LABELS.ICONS)            colorlabels (color labels as icons)
$(MAKER)                   camera maker
$(MODEL)                   camera model
$(LENS)                    lens
$(TITLE)                   title from metadata
$(DESCRIPTION)             description from metadata
$(CREATOR)                 creator from metadata
$(PUBLISHER)               publisher from metadata
$(RIGHTS)                  rights from metadata
$(TAGS)                    tags list (Xmp.dc.Subject)
$(CATEGORY[n,category])    tag name of level n [0,9] of selected category (or tag)
$(SIDECAR_TXT)             content of the text sidecar file (if any)
$(FOLDER.PICTURES)         pictures folder
$(FOLDER.HOME)             home folder
$(FOLDER.DESKTOP)          desktop folder
$(OPENCL.ACTIVATED)        whether OpenCL is activated
$(USERNAME)                user name defined by OS
$(NL)                      newline character
$(JOBCODE)                 internal jobcode of current job

🔗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>

translations