змінні

darktable підтримує заміщення змінних у ряді модулів та налаштуваннях. Наприклад:

🔗доступні змінні

Доступні такі змінні, хоча не всі вони можуть бути застосовні в кожному контексті:

$(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
$(SEQUENCE)                a sequence number within an export job
$(SENSOR_WIDTH)            width of RAW data in pixels before RAW crop
$(SENSOR_HEIGHT)           height of RAW data in pixels before RAW crop
$(RAW_WIDTH)               width of RAW data in pixels after RAW crop
$(RAW_HEIGHT)              height of RAW data in pixels after RAW crop
$(CROP_WIDTH)              image width in pixels at the end of the pixelpipe, but before export resize
$(CROP_HEIGHT)             image height in pixels at the end of the pixelpipe, but before export resize
$(EXPORT_WIDTH)            image width in pixels at the end of the pixelpipe and after export resize
$(EXPORT_HEIGHT)           image height in pixels at the end of the pixelpipe and after export resize
$(MAX_WIDTH)               maximum width entered in export module
$(MAX_HEIGHT)              maximum height entered in export module
$(YEAR)                    year at date of export
$(MONTH)                   month at date of export
$(DAY)                     day at date of export
$(HOUR)                    hour at time of export
$(MINUTE)                  minute at time of export
$(SECOND)                  second at time of export
$(EXIF_YEAR)               Exif year
$(EXIF_MONTH)              Exif month
$(EXIF_DAY)                Exif day
$(EXIF_HOUR)               Exif hour
$(EXIF_MINUTE)             Exif minute
$(EXIF_SECOND)             Exif second
$(EXIF_ISO)                ISO value
$(EXIF_EXPOSURE)           Exif exposure
$(EXIF_EXPOSURE_BIAS)      Exif exposure bias
$(EXIF_APERTURE)           Exif aperture
$(EXIF_FOCAL_LENGTH)       Exif focal length
$(EXIF_FOCUS_DISTANCE)     Exif focus distance
$(LONGITUDE)               longitude
$(LATITUDE)                latitude
$(ELEVATION)               elevation
$(STARS)                   star rating (text only)
$(RATING_ICONS)            star rating (using star characters)
$(LABELS)                  colorlabels (text only)
$(LABELS_ICONS)            colorlabels (using colored bullet characters)
$(LABELS_COLORICONS)       colorlabels (using colored 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)
$(CATEGORYn(category))     tag name of level n [0,9] of selected category (or tag)
$(SIDECAR_TXT)             content of the text sidecar file (if any)
$(PICTURES_FOLDER)         pictures folder
$(HOME)                    home 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

🔗підстановка рядків

Всі змінні підтримують базову заміну рядків, натхненну bash (командним процесором Unix-подібних систем), хоча деякі деталі відрізняються.

Усі шаблони розглядаються як прості порівняння рядків. Підтримка регулярних виразів відсутня.

Надаються такі функції заміни рядків, де var є однією із перелічених вище змінних:

$(var-default)                   Якщо var порожня, поверніть "default"

$(var+alt_value)                 Якщо var встановлено, повернути "alt_value", інакше повернути порожній рядок

$(var:offset)                    Повернути var, починаючи зі зміщення offset 
                                 Якщо зміщення від'ємне, відлік йде від кінця рядка

$(var:offset:length)             Починаючи зі зміщення offset, повернути як максимум length символів var
                                 Якщо зміщення від’ємне, довжина відлічується від кінця змінної var
                                 Якщо довжина від’ємна, це означає кінець результату, 
                                  відлічується від кінця var, а не фактичної довжини

$(var#pattern)                   Видалити "pattern" з початку var 

$(var%pattern)                   Видалити "pattern" з кінця var 

$(var/pattern/replacement)       Замінити перше входження "pattern" у var на "replacement"
                                 Якщо "replacement" є порожнім, тоді "pattern" буде видалено

$(var//pattern/replacement)      Замінити всі входження "pattern" у var на "replacement"
                                 Якщо "replacement" є порожнім, тоді "pattern" буде видалено

$(var/#pattern/replacement)      Якщо var починається з "pattern", тоді "pattern" замінюється на "replacement" 

$(var/%pattern/replacement)      Якщо var закінчується на "pattern", тоді "pattern" замінюється на "replacement" 

$(var^)                          Перевести перший символ var у верхній регістр

$(var^^)                         Перевести всі символи var у верхній регістр

$(var,)                          Перевести перший символ var у нижній регістр

$(var,,)                         Перевести всі символи var у нижній регістр

Translations