Variables

darktable prend en charge la substitution de variables dans un certain nombre de modules et dans les préférences. Par exemple :

🔗Variables disponibles

Les variables suivantes sont disponibles, bien qu’elles ne soient pas toutes applicables dans tous les contextes :

$(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.APERTURE)           Exif aperture
$(EXIF.CROP_FACTOR)        Exif crop factor
$(EXIF.FOCAL.LENGTH)       Exif focal length
$(EXIF.FOCAL.LENGTH.EQUIV) Exif 35 mm equivalent focal length
$(EXIF.FOCUS.DISTANCE)     Exif focus distance
$(IMAGE.EXIF)              basic exposure information from Exif data (aperture, exposure, ISO)
$(LONGITUDE)               longitude
$(LATITUDE)                latitude
$(ELEVATION)               elevation
$(GPS.LOCATION)            latitude, longitude, and elevation (omitting any values which are not set)
$(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

🔗Substitution de variable

Toutes les variables supportent la substitution de chaîne de base inspirée de l’interpréteur en ligne de commande Bash, bien que certains détails diffèrent.

Tous les modèles sont traités comme de simples comparaisons de chaînes de caractères. Il n’y a pas de support des expressions régulières.

Les fonctions suivantes de remplacement de chaînes sont fournies, où var est l’une des variables répertoriées ci-dessus :

$(var-default)
                   Si var est vide, renvoie default
                   Il est possible de renvoyer une autre variable
                   par exemple $(WIDTH.CROP-$(WIDTH.RAW))

$(var+alt_value)
                   Si var est défini, renvoie alt_value 
                   sinon renvoie une chaîne vide

$(var:offset)
                   Renvoie la partie de var commençant à offset 
                   Si offset est négatif on compte à partir de la fin de la chaîne

$(var:offset:length)
                   À partir de offset, renvoie au plus length caractères de var
                   Si offset est négatif length est compté à partir de la fin de var
                   Si length est négatif, il indique la fin du résultat, 
                   compté à partir de la fin de var et non une longueur réelle

$(var#pattern)
                   Supprime pattern au début de var 

$(var%pattern)
                    Supprime pattern à la fin de var 

$(var/pattern/replacement)
                    Remplace par replacement, la première occurrence de pattern dans var
                    Si replacement est vide alors pattern sera supprimé. 

$(var//pattern/replacement)
                   Remplace par replacement, toutes les occurrences de pattern dans var
                   Si replacement est vide alors pattern sera supprimé

$(var/#pattern/replacement)
                    Si var commence par pattern alors pattern est remplacé par replacement

$(var/%pattern/replacement)
                   Si var se termine par pattern alors pattern est remplacé par replacement

$(var^)
                   Met en majuscule le premier caractère de var

$(var^^)
                   Met en majuscule tous les caractères de var

$(var,)
                  Met en minuscule le premier caractère de var

$(var,,)
                  Met en minuscule tous les caractères de var

🔗Formatage

Les motifs d’information de l’image prennent en charge Pango markup. Par exemple, l’ajout de ce qui suit fournira un avertissement clair (texte grand, rouge et gras) lorsque OpenCL n’a pas réussi à s’initialiser :

<span alpha='1%'>$(OPENCL_ACTIVATED/no/<span foreground='red' weight='heavy' size='xx-large' alpha='100%'>ACTIVATION OPENCL ÉCHOUÉE</span>$(NL))</span>

translations