variáveis

O darktable suporta a substituição de variáveis em diversos módulos e configurações de preferências. Por exemplo:

🔗variáveis disponíveis

As seguintes variáveis estão disponíveis, ainda que nem todas sejam aplicáveis em todos os contextos:

$(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
$(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 import/export
$(MONTH)                   month 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_MONTH)              Exif month
$(EXIF_DAY)                Exif day
$(EXIF_HOUR)               Exif hour
$(EXIF_MINUTE)             Exif minute
$(EXIF_SECOND)             Exif second
$(EXIF_MSEC)               Exif millisecond
$(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

🔗substituição de texto

Todas as variáveis suportam a substituição de texto básica inspirada pelo bash, ainda que alguns detalhes sejam diferentes.

Todos os padrões são tratados como simples comparações de cadeias de texto. Não há nenhum suporte a expressões regulares.

As seguintes funções de substituição de texto são fornecidas, onde var é uma das variáveis listadas acima:

$(var-default)			Se var está vazio, devolve "default"

$(var+alt_value)		Se var foi fixada, devolve "alt_value" caso contrário, devolve cadeia vazia

$(var:offset)			Devolve o valor de var começando pelo caractere de número "offset" 
				Se offset é negativo, conta a partir do final da cadeia de caracteres

$(var:offset:comprimento)	A partir da posição de "offset", devolve como máximo "comprimento"caracteres de var
				Se offset é negativo o comprimento se conta a partir do final de var
				Se comprimento é negativo, isto indica o final do resultado, 
				contando a partir do final de var, e não o comprimento real

$(var#padronagem)		Elimina "padronagem" do início de var 

$(var%padronagem)		Elimina "padronagem" do final de var 

$(var/padronagem/substituicao)	Sustitui a primeira ocorrência de "padronagem" em var com "substituicao"
				Se "substituicao" está vazio, "padronagem" é eliminado

$(var//padronagem/substituicao)	Sustitui todas as ocorrências de "padronagem" em var com "substituicao"
				Se "substituicao" está vazio, "padronagem" é eliminado

$(var/#padronagem/substituicao)	Se var começa por "padronagem" então "padronagem" é substituído com "substituicao" 

$(var/%padronagem/substituicao)	Se var termina com "padronagem" então "padronagem" é substituído com "substituicao" 

$(var^)				Converte o primeiro caractere de var em maiúscula

$(var^^)			Converte todos os caracteres de var em maiúsculas

$(var,)				Converte o primeiro caractere de var em minúscula

$(var,,)			Converte todos os caracteres de var em minúsculas

translations