.
Preset Templates in My Lightroom Plugins

My export plugins for Lightroom offer the ability to create template presets for constructing titles and captions used for the exported photos. They're designed to allow you to combine photo metadata with your custom text on a per-image basis.

The rest of this page documents the template notation as it exists for the latest versions of the plugins. If something doesn't seem to work as documented, please make sure you're using the latest version of your plugin by using the [check now] updates button in the last section of each plugin's export dialog.


A template is a combination of prose and special tokens wrapped in { ... } that insert photo-specific items.

For example, the template

     Copyright {YYYY} {Artist}

includes the text “Copyright”, a space, the token YYYY (which stands for the year that the photo was taken), a space, and the Artist token (which stands for the value of the “Artist” metadata item).

For one of my photos taken in 2006, this example would become

   Copyright 2006 Jeffrey Eric Francis Friedl

Here is the list of tokens that are currently supported:

Photo Date
YYYY The year the photo was taken, as a four-digit string
YY The year the photo was taken, as a two-digit string
MM The month the photo was taken, as a two-digit string
DD The day of the month the photo was taken, as a two-digit string
HH The hour value for the time the photo was taken, in 24-hour notation, as a two-digit string
MIN The minute value for the time the photo was taken, as a two-digit string
SS The seconds value for the time the photo was taken, as a two-digit string
Mon The month the photo was taken, as a localized three-character string
Month The month the photo was taken, as a localized string
Date The day of the month the photo was taken, as one- or two-digit string
D1 The full date of the photo, in the system-localized short format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “2010-03-24”. Available only in Lr3 or later.
D2 The full date of the photo, in the system-localized medium format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “Mar 24, 2010”. Available only in Lr3 or later.
D3 The full date of the photo, in the system-localized long format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “March 24, 2010”. Available only in Lr3 or later.
T1 The full time-of-day of the photo, in the system-localized short format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “3:38 PM”. Available only in Lr3 or later.
T2 The full time-of-day of the photo, in the system-localized long format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “3:38:02 PM”. Available only in Lr3 or later.
PhotoDaysSince=date The number of days from the given date and the date of the photo. This is intended for use along the lines of My 2010 In Photos: Day {PhotoDaysSince=2009-12-31}

The date argument is in the form “YYYY-MM-DD” but may also have an appended time, in HH:MM 24-hour notation, to delimit when dates start. If you're a night-owl who might want to include a photo taken late in the evening, after midnight, as being part of the previous day, you might want to use something like My 2010 In Photos: Day {PhotoDaysSince=2009-12-31 04:00} to have photo taken until 4am be considered part of the previous day.

One concern to watch out for with this date/time example is that photos taken during the first four hours of Jan 1 2010 would appear to still be part of the previous day, day “0”.

PhotoDaysUntil=date Like PhotoDaysSince, but in the counting-down-until sense.
Current Date
yyyy The current year as a four-digit string
yy The current year as a two-digit string
mm The current month as a two-digit string
dd The current day of the month as a two-digit string
hh The current hour value, as a two-digit string
min The current minute value, as a two-digit string
ss The current seconds value, as a two-digit string
mon The current month, as a localized three-character string
month The current month, as a localized string
date The current day of the month, as one- or two-digit string
d1 The current full date, in the system-localized short format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “2010-03-23”. Available only in Lr3 or later.
d2 The current full date, in the system-localized medium format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “Mar 23, 2010”. Available only in Lr3 or later.
d3 The current full date, in the system-localized long format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “March 23, 2010”. Available only in Lr3 or later.
t1 The current full time-of-day, in the system-localized short format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “3:38 PM”. Available only in Lr3 or later.
t2 The current full time-of-day, in the system-localized long format that you can set in your operating system's preferences dialog. On my system this is something along the lines of “3:38:02 PM”. Available only in Lr3 or later.
DaysSince=date Like PhotoDaysSince, but measures the current date to the date (or date/time) given in the argument, without regard to any photo date. You might want to use this along with something like My 2010 In Photos: Day {DaysSince=2009-12-31} if you want to have the Day counter refer to when you do the upload, not when you took the shot. With this token, you'd want to use the date/time form if you're a night owl and want an upload done late in the evening, after midnight, to be considered as having been done the previous day.
DaysUntil=date Like PhotoDaysUntil, but in the counting-down-until sense.
Filenames and Paths
Filename The filename – without path and without extension – of the exported copy
FILENAME Like Filename, but includes the extension
LibraryFilename The filename – without path and without extension – of the master file in the library (which is not necessarily the filename being generated for the exported copy)
LIBRARYFILENAME Like LibraryFilename, but includes the extension
Folder The name of the folder (without path) in which the master image in the catalog resides
Path The full path of the folder in which the master image in the catalog resides
Image
Filetype One of: “JPEG”, “PNG”, “TIFF”, “PSD”, “DNG”, or “Video”
OriginalWidth The width of the (possibly pre-crop) original master image (not the exported one), in pixels
OriginalHeight The height of the (possibly pre-crop) original master image (not the exported one), in pixels
Cropped Either “cropped” or “uncropped”.
CroppedWidth The width of the (possibly post-crop) library image (not the exported one), in pixels
CroppedHeight The height of the (possibly post-crop) library image (not the exported one), in pixels
AspectRatio This becomes “Portrait” if the cropped image is more tall than wide, “Square” if the cropped with and height are the same, and “Landscape” if wider than tall. You can substitute your own phrases for each by using the form {AspectRatio=X,Y,Z}, where X, Y, and Z are used for Portrait, Square, and Landscape, respectively.
Lens / Camera / Exposure
Aperture The photo's aperture value, formatted like “f/4.5”
ApertureNum The photo's aperture value, as a raw number
CameraMake The photo's “Make” metadata item in Lightroom's database.
CameraModel The photo's “Model” metadata item in Lightroom's database.
CameraName The Make and Model combined in a way that is natural to a reader. For example, if Make is “EASTMAN KODAK COMPANY” and Model is “KODAK XYZ123 ZOOM DIGITAL CAMERA”, CameraName is “Kodak XYZ123 Zoom”. I have a lot of camera-specific rules about how to combine the make and model sensibly, so if you find one for which I don't do a good job, please send me a sample image so that I can inspect its metadata.
CameraSerialNumber The photo's “Serial Number” metadata item in Lightroom's database.
Exposure The photo's exposure data, like “1/250 sec at f/5.0”.
ExposureBias The photo's exposure-bias setting, like “-1 EV”.
ExposureBiasNum The photo's exposure-bias setting, as a raw number.
ExposureProgram The photo's exposure-program setting, like “Aperture priority”.
Flash One of “no flash”, “flash fired”, or “unknown flash”.
FocalLength Focal Length, as a number
FocalLength35 Focal Length in 35mm format, as a number
FocalLength35MM Focal Length in 35mm format (with locale-specific “mm” appended)
FocalLengthMM Focal Length (with locale-specific “mm” appended)
ISO The photo's ISO (sensor sensitivity) number.
Lens The photo's lens information, like “24-70mm f/2.8”.
MeteringMode The photo's metering-mode setting, like “Pattern”.
ShutterSpeed The shutter speed, formatted like “1/60 sec”.
ShutterSpeedNum The shutter speed as a floating-point number of seconds; Use the “Places” filter to limit precision.
SubjectDistance The subject distance as reported by the lens, formatted like “1.2 m”. Often wildly inaccurate.
SubjectDistanceNum The subject distance as reported by the lens, as a floating-point number. Often wildly inaccurate.
Attributes
CopyName The name of the copy (master or virtual) being exported, if any
Rating The number of stars assigned to the image: “0” through “5”. You can also use with an argument, e.g. {Rating=*} or {Rating=great } to have, for example, a three-star photo result in “***” or “great great great”. In either case, a photo with a zero rating results in nothing, but you can combine tokens (as described below) along these lines: {Rating=*|"unrated"}.
ColorLabel The “Label” metadata item
EditCount A number that goes up each time a change is made in Lightroom to the image or its data.
UUID Lightroom's internal unique identifier for the photo, an essentially-random 36-character sequence of letters, numbers, and hyphens, such as “FB4D3F92-455F-47CA-8B7B-7C885F7244FD”.
Location
GPSCoordinates The photo's geoencoded coordinates, like “35°1'11.51" N 135°46'16.05" E”
Altitude The photo's geoencoded altitude, as a number, in meters. Use “Places”, e.g. {Altitude:Places=0}, to limit precision.
GPSAltitude The photo's geoencoded as a description, e.g. “27.3 m
Latitude Latitude, as a floating-point number. Use “Places”, e.g. {Latitude:Places=4}, to limit precision.
Longitude Longitude, as a floating-point number. Use “Places”, e.g. {Longitude:Places=4}, to limit precision.
IfGeoencoded If used in the form {IfGeoencoded=some text here}, the token is replaced by the text after the “=” if the photo is geoencoded, or replaced by nothing if not. If used in the form {IfGeoencoded=some text here;for non-geoencoded} with a semicolon, the text after the semicolon is used when the photo is not geoencoded.
Location The “Location” metadata item
City The “City” metadata item
State The “State” metadata item
Province The “State” metadata item
Country The “Country” metadata item
CountryCode The photo's “Image > ISO Country Code” metadata item in Lightroom's database.
Other Metadata
Artist The “Artist” metadata item
Caption The “Caption” metadata string
Category The photo's “IPTC > Category” metadata item in Lightroom's database.
Copyright The “Copyright” metadata item
CopyrightUrl The photo's “Copyright Info Url” metadata item in Lightroom's database.
Creator The photo's “Contact > Creator” metadata item in Lightroom's database.
CreatorAddress The photo's “Contact > Address” metadata item in Lightroom's database.
CreatorCity The photo's “Contact > City” metadata item in Lightroom's database.
CreatorCountry The photo's “Contact > Country” metadata item in Lightroom's database.
CreatorEmail The photo's “Contact > E-Mail” metadata item in Lightroom's database.
CreatorJobTitle The photo's “Contact > Job Title” metadata item in Lightroom's database.
CreatorPhone The photo's “Contact > Phone” metadata item in Lightroom's database.
CreatorState The photo's “Contact > State / Province” metadata item in Lightroom's database.
CreatorUrl The photo's “Contact > Website” metadata item in Lightroom's database.
CreatorZip The photo's “Contact > Postal Code” metadata item in Lightroom's database.
DescriptionWriter The photo's “IPTC > Description Writer” metadata item in Lightroom's database.
Genre The photo's “Image > Intellectual Genre” metadata item in Lightroom's database.
Headline The “Headline” metadata item
Instructions The photo's “Workflow > Instructions” metadata item in Lightroom's database.
JobIdentifier The photo's “Workflow > Job Identifier” metadata item in Lightroom's database.
Keywords The list of the photo's marked-for-export keywords, separated by commas. (Actually, there's a comma+space pair between each keyword, so it's “plant, rose, flower” and not “plant,rose,flower”.)
IfKeyword (for plugin versions released on or after March 21, 2010)
If used in the form {IfKeyword=keyword;some text here}, the token is replaced by the text after the “=” if the photo has been tagged with the named keyword (even if that keyword is not marked in Lightroom as one to be exported). If no text is given after the semicolon, the keyword itself is used: {IfKeyword=public;} becomes “public“ or nothing.

If used in the form {IfKeyword=keyword;some text here;the not-keyworded text}, with an extra semicolon-separated phrase, the token becomes the not-keyworded if the photo is not tagged with the named keyword.

IfExportedKeyword (for plugin versions released on or after March 21, 2010)
Like IfKeyword, but considers only keywords that have been marked in Lightroom for export.
OtherCategories The photo's “IPTC > Other Categories” metadata item in Lightroom's database.
Provider The photo's “Workflow > Provider” metadata item in Lightroom's database.
RightsUsageTerms The photo's “Workflow > Rights Usage Terms” metadata item in Lightroom's database.
Scene The “Scene” metadata item
Software The photo's “Software” metadata item in Lightroom's database.
Source The “Source” metadata item
SubjectCode The photo's “IPTC > IPTC Subject Code” metadata item in Lightroom's database.
Title The “Title” metadata item
Online Presence
ExposureManagerUrl The url of the image at ExposureManager (only if previously uploaded with my Upload-to-ExposureManager plugin)
FacebookUrl The url of the image at Facebook (only if previously uploaded with my Upload-to-Facebook plugin)
PhotobucketUrl The url of the image at Photobucket (only if previously uploaded with my Upload-to-Photobucket plugin)
PicasawebUrl The url of the image at PicasaWeb (only if previously uploaded with my Upload-to-PicasaWeb plugin)
SmugMugUrl The url of the image at SmugMug (only if previously uploaded with my Upload-to-SmugMug plugin)
ZenfolioUrl The url of the image at Zenfolio (only if previously uploaded with my Upload-to-Zenfolio plugin)
FlickrUrl The url of the image at Flickr (only if previously uploaded with my Upload-to-Flickr plugin)
OnlineID

Flickr plugin only. The Flickr ID of the image. This allows you to create a description preset along the lines of:

<a href="http://BigHugeLabs.com/flickr/onblack.php?id={OnlineID}">View on Black</a>

which creates a result at Flickr like this, which includes a link with this result.

Special
PluginProperty=field Allows you to access the per-image custom metadata kept by a plugin, where field is the plugin's id and the metadata field id, joined with a dot. For example,
{PluginProperty=info.regex.lightroom.export.flickr2.url}
refers to the url field of the plugin with id info.regex.lightroom.export.flickr2 (my Flickr plugin), and the result is the same as the {FlickrUrl} token mentioned above. However, with PluginProperty, you can reference any plugin data for which you know the plugin id and field name. You can get these from the plugin author, or try digging around the plugin's Info.lua for the plugin id and a reference to its LrMetadataProvider, where you can find field ids.
Empty An empty string, perhaps useful for testing
" text " The text as provided. It may not contain the following characters: {   |   }   "
- Inserts a hyphen that is never squelched; essentially the same as {"-"}
, Inserts a comma that is never squelched; essentially the same as {","}
LUA See the section below for details on this advanced, complex token.

Token Basics

As mentioned above, tokens are identified within a template by wrapping them with { ... }. The value generated by the token has leading and trailing spaces removed before being inserted into the result. For example, if the “Caption” metadata item is the string “My Vacation  ”, the value actually used for the Caption token (which appears as “{Caption}” in the template) is “My Vacation”.

Combining Tokens

You may list multiple tokens within { ... }, separated by | (a vertical bar). In such a case, the first token that results in non-empty text is used. Tokens may result in an empty value if the photo is missing the associated metadata. For example, if a photo is missing the “date taken” metadata, the YYYY token is empty. Thus, the previous copyright example may be better written as:

     Copyright {YYYY|yyyy} {Artist}

In this case, if the YYYY token is empty, the yyyy token (the current year, which can never be empty) is used.

Continuing with this example, because the Artist token results in an empty item if there is no artist metadata, this example might be written as:

     Copyright {YYYY|yyyy} {Artist|"by the photographer"}

to become

     Copyright 2008 by the photographer

when there is no artist metadata.

Token Filters

Filters allow you to modify the text that a token generates. For example, applying the S2U filter (“Space to Underscore”) to the “Caption” example given earlier results in a value of “My_Vacation”. To indicate that a filter should be applied to a token, append it to the token name with a colon. This example appears would appear in a template as “{Caption:S2U}”.

Token filters:

S2U Space to Underscore Any sequences of spaces (and/or underscores) are replaced by a single underscore
S2D Space to Dash Any sequences of spaces (and/or dashes) are replaced by a single dash
U2S Underscore to Space Any sequences of underscores (and/or spaces) are replaced by a single space
D2S Dash to Space Any sequences of dashes (and/or spaces) are replaced by a single space
DU2S Dash/Underscore to Space Any sequences of dashes, underscores, and/or spaces are replaced by a single space
Places=num specify numeric precision If the item is number, formats it to num decimal places. If the item is not a number, makes it empty.
Length=num specify max length If the item is longer than num characters long, it is truncated to the first num characters. Treats the text as UTF-8.
After=text Use value to the right of text

If the given text is found in the value that the token generates, strip it and all that appeared before (to the left), leaving only what appears to the right of text in the value. If the text is not found in the value, the result of the token is empty.

For example, if you tend to use captions like “My trip to Paris” and “My trip to the Canadian Rockies”, and you wanted shorter text, you might consider using {Caption:After=trip to} to result in values like “Paris” and “the Canadian Rockies”.

If you wanted to implement an idea such as “Strip the '...trip to' text from the caption if it's there, and use the unadulterated caption if not”, you would append an unadorned Caption token as described in the “Combining Tokens” section above, resulting in {Caption:After=trip to|Caption}.

UC Upper Case Capitalizes the item
UCFirst Upper Case (first character) Capitalizes the first character of the item.
UCWords Upper Case Words Capitalizes the first character of the item, and any character after a space or hyphen.
LC Lower Case Ensures the item is all lower case.
LCFirst Lower Case (first character) Lowers the case of the first character of the item.

Squelching Superfluous Joining Characters

Within a template, joining characters are special:

  • space
  • comma
  • hyphen/minus
  • colon
  • the <br> and <br/> sequences

After a photo-specific value has been computed from a template, all leading and trailing joining characters are removed, and embedded repetitions are replaced by a single item.

As an example of the first case, consider

     Copyright {YYYY|yyyy} {Artist}

when there is no artist metadata. Without these special rules, this would result in the derived value having trailing space, but the special squelching rules remove it.

As another example, consider the template:

     {Location}-{Country}-{State}-{City}-{Caption}

for a photo that has “Location” and “Caption”, but no “Country,” “City,” or “State.”. Assuming that location and caption are “Home” and “Having Fun” respectively, it becomes:

     Home-Having Fun

which is better than it would be without these special rules:

     Home----Having Fun

Note that space, comma, and hyphen/minus are only special when they're part of the template itself. When they are part of the value derived from a token (such as the space in “Having Fun” above), they are never considered for squelching.

As such, you can use either {-} or {"-"} to include a hyphen/minus that will never be squelched. Similarly, you can use {,} or {","} for a comma, and {" "} for a space.

The special {NOJOINERS} token

As mentioned above, leading and trailing joining characters are stripped, but sometimes you want them stripped whenever they appear in a certain context. For example, the template

     <span class='where'>{City}, {State}</span>

results in something like “<span class='where'>Paris, </span>” if City is “Paris” but State has no value. In this case you'd like to mark the start and end of the <span> as being places where no joining characters should accumulate, just as they shouldn't accumulate at the start and end of the whole specification.

To do this, put the special {NOJOINERS} token in these spots, e.g.

     <span class='where'>{NOJOINERS}{City}, {State}{NOJOINERS}</span>

The exact rules for how joining characters are squelched are complex, but they are designed to produce a common-sense result. If you run into one that doesn't work as you'd like, let me know.

The Special {LUA=...} Token

This advanced programming-like feature allows you to execute arbitrary Lua code, in an environment where the tokens above have been prepopulated into variables. For example,

   {LUA=CreatorPhone}

and

   {LUA=return CreatorPhone}

are exactly the same as the {CreatorPhone} token, but, for example

   {LUA=  if  CreatorPhone ~= ''  then    return sprintf("Contact: %s", CreatorPhone)  end  }

becomes the string “Contact: text-from-CreatorPhone” if the CreatorPhone token is not empty, nothing if it is.

In the special Lua environment, variables exist for almost all of the tokens (except DaysSince, IfGeoencoded, etc. — tokens that require an extra argument). Each one is a string; if the token has no value, its variable in the special Lua environment is the empty string ''.

Also available are the standard Lua functions tonumber(), tostring(), type(), unpack(), ipairs(), and pairs(), and the standard name spaces string, table, and math. Also available are Booleans WIN and MAC, which indicate the type of host operating system, and sprintf(), which is a synonym for string.format().

There is also a table KW that has keys for every keyword applied to the photo (the values are true), and a similar table KWE with keys for exported keywords. Thus, the code snippet KW.private is true if the keyword “private” has been applied to the photo, nil otherwise.

Here are some examples. Some have been broken into multiple lines for display, with pretty indenting, for easier reading one this page; when inputting into the plugin, you'll have to put it all on one big long (ugly) line....

  • {LUA=if Artist ~= “” then return sprintf(“Copyright %s”, Artist) end}
    Becomes “Copyright ....” with the name of the Artist if there is an Artist token.

  • {LUA=if Artist ~= “” and Copyright = “” then return sprintf(“Copyright %s”, Artist) end}
    Like the one above, but only if there is no Copyright token.

  • {LUA=if Artist ~= “” then return sprintf(“Copyright %s %s”, yyyy, Artist) end}
    Becomes “Copyright #### ....” with the current year and the name of the Artist, if there is an Artist token.

  • {LUA=if Artist ~= “” then
       if yyyy == YYYY or YYYY == “” then
          return sprintf(“Copyright %s %s”, yyyy, Artist)
       else
          return sprintf(“Copyright %s-%s %s”, YYYY, yyyy, Artist)
       end
    end}

    Like the one above, but the reference to the year in the copyright statement becomes a range if the photo has a date associated with it and that date is not the current year, e.g. “Copyright 2006-2010 Jeffrey Friedl” for a photo taken in 2006 and being processed in 2010.

  • {LUA=if Artist ~= “” then
       when = YYYY==yyyy or YYYY==“” and yyyy or YYYY..“-”..yyyy
       return sprintf(“Copyright %s %s”, when, Artist)
    end}

    Exactly like the one just above.

  • {LUA=if GPSCoordinates ~= “” then return sprintf(“geo:lat=%s;geo:lon=%s”, Latitude, Longitude) end}
    If the photo is geoencoded, becomes GPS machine tags.

  • {LUA=if KW.private and not KWE.private then return “private, but not reporting as such” end}
    Becomes “private, but not reporting as such” if marked with the keyword “private“, but that keyword is not marked for export.


Comments so far....

Would love the possibility of adding a line break :-)

— comment by Caroline on July 6th, 2008 at 2:10am JST (3 years, 7 months ago) comment permalink

I’m sorry for that question. Found out that I can use html in there. Very cute!

— comment by Caroline on July 6th, 2008 at 3:02pm JST (3 years, 7 months ago) comment permalink

Hi Jeffrey! Thanks for adding this great feature. A suggestion for an alternate syntax, perhaps better than the squelching–

{City “-”}{State|Province}

Right now the braces enclose a single token. Extending that to a sequence would allow for more general squelching, such as

{“©” YYYY “.” |”Image is in the public domain.”}

or using HTML for line breaks:

{Title “”}{Location “” City|City}

(If any token in the sequence were empty, then the whole sequence would fail for the alternative.)

On a practical level, I found some parsing bugs in version 46 (Lightroom 1.4.1):

– {Rating} doesn’t seem to work — it parses it as “{Rating” and complains of a missing closing brace
– Squelching multiple joiners is broken, such as in this case if there is no “State”:
{City}, {State}, {Country}

Hope that helps!

— comment by Peter Davis on July 8th, 2008 at 1:23pm JST (3 years, 7 months ago) comment permalink

Whoops, my second example should have been–

{Title “<br>}{Location “<br>” City|City}

— comment by Peter Davis on July 8th, 2008 at 1:24pm JST (3 years, 7 months ago) comment permalink

I’m like Caroline at her first comment: I’d love to be able to add a line break, but can’t figure it out, even by experimenting some HTML here and there… What is the correct syntax?

Whether you can send HTML depends on the destination (e.g. Flickr, Zenfolio, etc.). The ones that I know allow HTML have an option nearby the preset pulldown that lets you choose whether the text you write should be interpreted as html or as plain text. The others, as far as I know, allow only plain text. (Let me know if I’ve made a mistake with one.) —Jeffrey

— comment by Guillaume Lemoine on August 3rd, 2008 at 9:05pm JST (3 years, 6 months ago) comment permalink

Using LR2 with the latest Flickr plugin. I’m getting two problems:
- The indicated line break doesn’t work
- I lost field customization. Even I update the preset, data is lost after restarting LR

Regards

I’m not sure what you mean by “indicated line break”, but about the preset data being lost, I’ve heard of that in one other case, and have no idea why it does that. Do presets for the standard export-to-disk export also reset, or is it limited to my plugins? —Jeffrey

— comment by Jose-Miguel on August 14th, 2008 at 3:56am JST (3 years, 6 months ago) comment permalink

Jefrey, thanks for the reply.
By “indicated line break” I refer to the requested/commented possibility to include a line break in the title or description preset. I’ve not been able to add.

Regarding to preset data being lost, I just updated to your latest version plugin. Now the preset is working as expected (preset template is not lost, and available every time). Looks it’s solved.

— comment by Jose-Miguel on August 17th, 2008 at 4:38pm JST (3 years, 6 months ago) comment permalink

The tokens are a great aspect of your very useful Lightroom plugin. I would like to be able to use the same tokens in the tags for the photo, is that possible?

It’s on the to-do list…. —Jeffrey

— comment by Lars Plougmann on August 18th, 2008 at 3:18am JST (3 years, 6 months ago) comment permalink

Hello,

Thanks for your great plugins. I would like to know if there are/will be tokens for capture time and month of the year, I.E. Dec, December?

Thanks a bunch,

Gonzalo

Added in versions as of Aug 29. —Jeffrey

— comment by Gonzalo on August 30th, 2008 at 2:53am JST (3 years, 5 months ago) comment permalink

Hellow,

Awesome plugin. Many thanks. Not sure whether to post this here or in your Metadata Preset post…

Is it possible to include the plugin metadata from your Flicker plugin (‘Uploaded to Flickr’ and ‘At Flickr’) in a custom metadata preset panel? I would love to include those in my custom preset. I am comfortable editing the preset file, just not sure of the values to include.

Thanks again for some AWESOME tools.

It’s on my (long) to-do list to update the metadata-preset-builder to allow this, but if you want to edit by hand, try info.regex.lightroom.export.flickr2.uploaded and info.regex.lightroom.export.flickr2.url —Jeffrey

— comment by Brian Burns on September 1st, 2008 at 7:40am JST (3 years, 5 months ago) comment permalink

This is brilliant, almost reason enough to upgrade to LR 2 :)

However, I’m having a problem that I also had with previous versions – I simply can’t create empty titles! :)

Maybe this is a problem with the flickr api, but if a photo doesn’t have a suitable title, I like to use the empty string. I definitely don’t want the filename. I tried this template:

{Title|Headline|”"}

But according to the preview that seems to result in the filename. This one also:

{Title|Headline}

I found that the preview was correctly empty if I used

{Title|Headline|Empty}

but when the images were uploaded to flickr, they had the filename as their title. Is it possible to change this?

Thanks a bunch for giving out these great tools!

cheers,
Arnar

— comment by Arnar on September 3rd, 2008 at 4:02am JST (3 years, 5 months ago) comment permalink

Is there a way to use templates in Flickr:Upload Destination to create a New Set? For e.g., I would like to use {Folder} for the “New set name”.

Thanks.

Yes, click on the “auto dests” button (“automatic destinations”) and create a destination that uses {Folder}. —Jeffrey

— comment by Nitin on September 13th, 2008 at 5:06am JST (3 years, 5 months ago) comment permalink

Very nice to be able to go beyond title and caption. Are more tokens in the works to be added for other camera EXIF data beyond Focal Length? Only personally interested in Exposure (w/aperture) and ISO Speed Rating, but others might want more.

I added a bunch of these today (Sep 14). —Jeffrey

— comment by M.Rathmann on September 14th, 2008 at 12:25am JST (3 years, 5 months ago) comment permalink

Great plugin. I still cannot figure out however how to insert newline in Flickr caption. At the moment all I can do is enter one long string (BTW the ‘Description Presets’ popup window does try to resize to fit this long string and ends up being wider than my screen). What I would like to achieve is a nicely formatted block of text. My template is as follows

{City}, {Country} {Month} {YYYY} • {Copyright} • {CameraModel} • {Exposure}, ISO {ISO}, {ExposureBias}, {ExposureProgram}, {MeteringMode}, {Flash} • {Lens} @ {FocalLengthMM} • {Caption}

I would like to have a newline instead of • character. When I hit Enter key, the dialog window closes. Shif-Enter, Control-Enter does not work. Yet, when editing caption in Flickr, all I have to do is hit Enter key. Am I doing something wrong? Am I overlooking something simple? Please help.

— comment by yOOrek on September 19th, 2008 at 7:20am JST (3 years, 5 months ago) comment permalink

This is a really really great feature. Thank you!

— comment by me on September 20th, 2008 at 12:16am JST (3 years, 4 months ago) comment permalink

The new ability to use these tokens in the keyword tag section is brilliant.

I’d like to suggest two additional tokens:

1. Flag status (pick or reject)

2. Rating as a repeated sequence of characters, ideally user specified. E.g. if the rating is 3, the generated tag is •••
This would be useful in many contexts where search capabilities are limited, allowing the user to easily search for photos with n or more stars.

The flag status, unfortunately, is not available to the plugin, so I can’t add that. I’ve just pushed new versions with an enhanced Rating token that allows for what you want. —Jeffrey

— comment by David on September 20th, 2008 at 2:22am JST (3 years, 4 months ago) comment permalink

Whenever I attempt to upload photos to Flickr, it never shows the Album names. As I cant choose an album, the upload always fails. In uploads to Zenfolio, it always shows them, and uploads are successful.

— comment by Bob Johnston on October 4th, 2008 at 5:32am JST (3 years, 4 months ago) comment permalink

The DD token returns the day that the photo was pulled off the camera, not the actual day that the photo was taken. I confirmed this via the metadata information for the image.

— comment by cas on October 4th, 2008 at 7:34am JST (3 years, 4 months ago) comment permalink

Excellent plugin. The option to create sets dynamically based on folder name, exif data, etc and the ability to create tags from exif data are two things I’ve been searching for. As far as I know, you are the only person to have implemented such a feature, and I think you for adding it.

A couple small requests if you have time..
- At the moment YYYY MM DD SS are all possible, but no hours and minutes. Can this be added, along with JobCode?
- Fantastic to have ISO. For Aperture you currently have Aperture and ApertureNum. Could you do the same for ISO? Ie, so ISO would return ISO320, and ISONum would return just 320? I tried doing ISO{ISO} but in the case {ISO} is not available I am just left with the string ISO
- Fractions in ShutterSpeed do not display properly in flickr (at least for me), and ShutterSpeedNum has very long fractions in some cases – like 0.834289347289347. Could you perhaps add ShutterSpeedNum4 which would truncate to 4dp? or something similar
- Last but not least, Path seems to return a full path, etc “> Users > ABC > Dir1 > Dir2 ….” I tried to use the After option to remove the “> Users > ABC > ” part but it complains “Hierarchical structions not allowed with this plugin”. Can this be fixed?
- Finally, like many others I am trying to work out how to get a newline to appear in the flickr description. I tried the html for br, and backslash n, but to no joy.

Once again, thank you very much for your hard work on this plugin.

— comment by Alan on October 6th, 2008 at 2:32pm JST (3 years, 4 months ago) comment permalink

Are conditionals something that might be possible in a future version? For captioning on Flickr, I use the format Location | City, State in the Description field.

With this wonderfully, marvelous plugin, I can automate this by {Location} | {City}, {State} but the Location is somewhat optional for me so if the Location field isn’t filled out I get “| City, State” — note the meaningless pipe.

If I could do something like, oh, {if Location}{Location} |{/if}{City}, {State} that would be wonderful.

Thanks, so much, for this plugin.

— comment by Brooks on October 7th, 2008 at 11:48am JST (3 years, 4 months ago) comment permalink

Thank you very much. Fantastic plug-in. It would be awesome to have LR Collections. Is it anyway possible? Once again thank you!

— comment by Stepan Spinka on October 26th, 2008 at 7:03am JST (3 years, 3 months ago) comment permalink

Hi, love you plugins. Yet I miss one feature: parsing exif strings, since I don’t mind getting my hand dirty. For example, if you choose {CameraModel} I get NIKON D700. It would be nifty to just get D700.

While I’m at it, might is suggest a lowercase uppercase converter? You know, Nikon D700 instead of NIKON D700. If you ever make one, be sure to leave an option whether or not to leave the first letter of a word capital (eg. Canon Powershot 520).

Keep up the good work!

— comment by krome on November 6th, 2008 at 5:24am JST (3 years, 3 months ago) comment permalink

Hi Jeffrey, and thanx for the great tool. I have yet to upload my first pics to flickr though, because i’m still trying to figure out the newline thing. I’ve read all the posts, and like others I can’t get it to work.

Seems like we have to insert a somewhere, but where ? I tried differents things like
{CameraModel} {Lens}
{CameraModel } {Lens}
{CameraModel} “” {Lens}
… but none of those worked.

In one of your replies you’re mentionning an option to check, to interpret text as html, but I don’t know where to find that option. Is it on our flickr settings page ? In your plugin ?

Finally, if we manage to get it to work, will the preview display newlines (I tried exporting some pictures to double check that it wasn’t just a preview issue but same result) ?

Can somebody who know how to do this post a sample code ? And explain about the “interpret text as html” option ?

Thanx.

— comment by sebchang on November 12th, 2008 at 4:12am JST (3 years, 3 months ago) comment permalink

All:

For those seeking to add breaks (carriage returns, line feeds, etc) into your template comment text: I’ve had success on Windoze (flickr upload plugin) by creating a separate document with the instructions in it (including newlines) then pasting the entire thing into the template field. Adding or tags did not work, and the enter key gets trapped by the plugin to exit the field editing. So pasting is working well for me.

Nathan Siemers

— comment by Nathan Siemers on December 10th, 2008 at 12:38am JST (3 years, 2 months ago) comment permalink

Oops – some html got stripped above, it should be:

“Adding paragraph or break html tags did not work…”

N

— comment by Nathan Siemers on December 10th, 2008 at 12:39am JST (3 years, 2 months ago) comment permalink

Doh! I just upgraded to .60 from .57 and this trick no longer seems to work. Sigh.

— comment by Nathan Siemers on December 10th, 2008 at 2:06am JST (3 years, 2 months ago) comment permalink

Thanx for the tip Nathan, but I think I tried that and it didn’t work, even before I upgraded the plugin, but maybe it has to do with the fact that I’m running OSX.
Still nobody with some kind of clue to help us insert line breaks ?? Please !!

— comment by sebchang on December 12th, 2008 at 6:36am JST (3 years, 2 months ago) comment permalink

What little I messed around with it, it appears that Lightroom is the culprit and doesn’t like blank space or “empty” hard returns in it’s fields. What I’ve found works is to build the caption text in Notepad (Windows, sorry, no clue about Macs) and for every blank line make sure there’s a character of some sort at the beginning of the line like a period or a dash (ignore the quotes):

“This would be the caption text
.
.”

The template I then use is:
{Caption} {All my EXIF info}

When the above is uploaded, the caption section below the photo looks like this on flickr:

“This would be the caption text
.
.Canon 30D, EF800mm f/5.6L IS USM, f/5.6, 1/1000, ISO200″

Notice the second period to have a gap between lines, because Lightroom will ignore the hard return after the first period. I’ve just tried this with .60 successfuly.

(And no, I don’t have the 800mm lens, but I can dream…)

— comment by JasonP on December 12th, 2008 at 3:31pm JST (3 years, 2 months ago) comment permalink

Is there a way to get the “original number suffix” field?

— comment by Fabrizio on December 25th, 2008 at 2:47am JST (3 years, 1 month ago) comment permalink

I try everything but can’t create the page breaks, is there a solution?

— comment by luigi the photografer on January 21st, 2009 at 8:42am JST (3 years ago) comment permalink

As post above using version 63 to get page brakes do the following (windows only)

open up notepad type in info you want on each line when you need a carriage return hold down the alt key and type 013 on numeric keypad you should see a new line created once done copy back to lightroom and past should text on each line. Tested and used works fine

Heart_and_soul

— comment by Adrian on January 21st, 2009 at 9:03am JST (3 years ago) comment permalink

is there any way to get custom name {Custom Text}, this what lightroom calls it but it’s just I give each file a name in light room but when I use Description Preset it seems to not save the title.

Heart_and_soul

I don’t believe there is, no, sorry. —Jeffrey

— comment by Adrian on January 21st, 2009 at 9:48am JST (3 years ago) comment permalink

Thanks Adrian but i use Leopard.

The button “Token Examples” also didn’t work, I don’t know if that’s also a issue related to Leopard.

— comment by luigi the photografer on January 21st, 2009 at 8:46pm JST (3 years ago) comment permalink

Hi Jeffrey,

Thanks for creating this great tool! The ‘export to SmugMug’ plug-in is extremely useful, and has saved me a ton of time and work. I just have one question: have you thought of creating an export filter with the preset templates functionality? I would love to be able to export to disk or with any export plugin, and havethe ability to do things such as adding the location fields to the keywords.

Thanks.

— comment by FernandoK on February 7th, 2009 at 10:07am JST (3 years ago) comment permalink

Hi Jeffrey,
I just changed computer and would like to know where those settings are saved.
Thanks

Your Lightroom Preferences file. —Jeffrey

— comment by Marc on March 7th, 2009 at 10:37am JST (2 years, 11 months ago) comment permalink

Hi Jeffrey,

I’m using the Flickr plugin for some time now and like it a lot so I registered yesterday and upgraded to the latest version. It makes live so much easier. Thanks for that!

Over time I’m spending more and more time on getting the metadata tags right. Since I don’t have the time to dive into the SDK and define my own tags, I stick to what is available. So as a caption I often have the English, Latin and Dutch names for a particular animal. Like this: Meerkat – Suricata suricatta – Stokstaartje.
In Flickr I then add these seperately as tags. If you need an example: http://www.flickr.com/photos/edsteenhoek/2546275842/

So I was wondering if it is possible to add splitting as part of the preset templates? Something like this: {caption:split=”-”}.

Thanks,
Ed

Yeah, that should be easy enough to add… great idea. Look for it in a new version, soon. —Jeffrey

— comment by Ed Steenhoek on March 8th, 2009 at 9:58pm JST (2 years, 11 months ago) comment permalink

Jasonn here from Trinidad…

I accidentally updated the NONE preset – and now I cant get it to be well… none lol
If I delete the fields, it disables the update button…so i’m using caption to fake it for the moment.

Just a thought, just like you cant delete the none preset, you should not be able to edit/update it as well…

Thanks,
J

I didn’t think it was possible to delete the ‘none’ preset. I’ll look into it. —Jeffrey

— comment by Jasonn on April 11th, 2009 at 9:03pm JST (2 years, 10 months ago) comment permalink

Hey Jeffrey,

No, as it is right now, you *cannot* delete the NONE preset, but you *can* edit it.

The problem is, once you edit it, accidentally or otherwise, there no way to clear the fields to restore it to the original NONE preset.

Thus I was suggesting you make sure that you cannot *edit* as well as *delete* the NONE Preset.

Sorry for the mixup.

-J

— comment by Jasonn on April 11th, 2009 at 9:32pm JST (2 years, 10 months ago) comment permalink

Hi there, is it possible to recieve UserComment or other string so I can automatically pass some Tags via Token?

Thanks
luigi

I’m not sure what you mean, either about what you want or where you want to use it. Could you drop me an email with more info? —Jeffrey

— comment by luigi on June 15th, 2009 at 5:30am JST (2 years, 8 months ago) comment permalink

I really like the joining characters feature, but it isn’t working well for me. It seems to work only when the elements are joined by exactly one of the special characters, and only when all are the same character. I’d like to be able to separate some elements by the comma-space sequence and others by a space. I’d also like to be able to use the line break marker within the pattern.

I just pushed v116 that may work a bit better. Give it a try and let me know…. —Jeffrey

— comment by Peter Epstein on June 30th, 2009 at 3:24pm JST (2 years, 7 months ago) comment permalink

Yes indeed, the new version works perfectly. Now that’s awesome support!

— comment by Peter Epstein on July 4th, 2009 at 3:49am JST (2 years, 7 months ago) comment permalink

Hi Jeffrey,

I have two requests

1/ In some cases I need to do two line breaks. If I try the second is obviously squelched and {} doesn’t work.

2/ The token {CameraModel} gives me NIKON D200. How to get this result => Nikon D200 ?

Would it be possible to combine two token filters? LC and UCFirst

Thanks
Florent

— comment by Florent Bouckenooghe on July 23rd, 2009 at 4:23am JST (2 years, 6 months ago) comment permalink

Jeffrey,

Is there some way to use this technology for files exported to disk rather to Flickr/Blog/etc.? I am exporting a bunch of images for a gallery on my website. I’d love to be able to automatically combine caption + city + state as the caption for the exported photos.

Thanks,

Andrew

It’s not possible with any of my current plugins, but it’s something that the metadata wrangler could be updated to handle. I’ll give it some thought… —Jeffrey

— comment by Andrew Kelley on July 28th, 2009 at 12:22pm JST (2 years, 6 months ago) comment permalink


Andrew wrote:

Is there some way to use this technology for files exported to disk rather to Flickr/Blog/etc.?
I am exporting a bunch of images for a gallery on my website. I’d love to be able to
automatically combine caption + city + state as the caption for the exported photos.

This is exactly what I was looking for when I stumbled on this page, and for a second the templates made me think I was in metadata heaven. Then I bit from the evil apple, and came back down to Earth, of course. =(

Until I read this. :P


Jeffrey wrote:
It’s not possible with any of my current plugins, but it’s something that the metadata wrangler could be updated to handle. I’ll give it some thought… —Jeffrey

Seems to me you’ve most elements to fix a quick solution, and I’ll have a good tequila ready next time you’re around México if you do. ;-)

It would be nice if other fields besides Title and Caption could be filled, and that existing values could remain in place, which your current template system already allows, so we could do something like:

Title = {Title|Headline|Filename}
Headline = {Headline|Title}

Filling Title and Headline only if they are empty, making them equal if only one has a value, or setting them to Filename if both are empty. Note that this would require the program to be aware of the new value of Title, which though not really required here (we could just do Headline = {Headline|Title|Filename}), would be useful in other cases.

Now, if we could edit the metadata without exporting, say by using something like Metadata Presets, but actually useful, with templates, and regexps, and full fledged flow control, and… and… and I know, even tequila can’t buy everything. But I do want *two* problems! ;-)

On the meantime, perhaps someone can help with a little palliative: how do I get a filter to match *emtpy* fields? Say, show me pics without a Title. The closest solution I’ve found (create a “Smart” Collection in which the field doesn’t contains a, e, i, o nor u, tag all the pics, then go back to the subset I’m working using the tag to find the titleless pics) is rather lame, and I find hard to believe it’s not doable. Any suggestions will be appreciated.

Jeffrey, have a good one, and come back with lots of energy. ;-)

— comment by Chema on August 14th, 2009 at 7:17am JST (2 years, 6 months ago) comment permalink

I’ve been using your flickr plugin for some time, and today I’ve discovered this feature. I think it is great! Like all your plugins!

I would like to ask if it could be possible to add a link to Google maps using GPS position. Is it possible right, now? If not, could it be possible that you add this feature in a new release?

Thanks!

You can build up the link in a caption using the token templates that I’ve built into the plugin…. something along the lines of <a href=’http://maps.google.com/?q={Latitude},{Longitude}’>click for map</a> —Jeffrey

— comment by Otger on August 21st, 2009 at 9:46pm JST (2 years, 5 months ago) comment permalink

Maybe I’m just stupid, but is there a way with this to use Lightroom keywords to put photos in a particular Flickr set (and even better, into a certain set if a particular combination of keywords exists?)

Thanks,
Krys from Denver, CO

No, that’s not there yet, but it’s a good idea… added to the todo list. —Jeffrey

— comment by Krys on September 11th, 2009 at 7:21am JST (2 years, 5 months ago) comment permalink

I’m using LR3b and I’ve a question regarding the auto-destination. Is it possible to use the name of the collection (as set in the Publish Service) for the PicasaWeb album name?

I think this will be quite handy.

Thanks.

Don’t know yet. Will certainly look for that when I get docs. —Jeffrey

— comment by Pascal Obry on October 23rd, 2009 at 8:53pm JST (2 years, 3 months ago) comment permalink

from Santa Barbara, CA
I don’t have a question; I just wanted to say thanks for all your hard work. I’m FINALLY getting around to learning the various plugins’ capabilities and am amazed at what they can do. You do spectacular work.

— comment by Stuart Ponder on November 15th, 2009 at 7:11pm JST (2 years, 3 months ago) comment permalink

Great work and thanks for all of the plugins you offer that make our workflow as photographers better. cheers

— comment by Max Finger on November 16th, 2009 at 9:51pm JST (2 years, 3 months ago) comment permalink

Hi Jeffrey,

Another request: it would be great if we have a token that helps us name the flickr/facebook folder based on either the photoset or smart photoset’s name? Thanks much!

-Dev

— comment by Devender Narang on December 14th, 2009 at 1:20pm JST (2 years, 2 months ago) comment permalink

The matter of line breaks in the Caption Preset has been mentioned before but not being a programmer, I don’t quite understand the answer. I’m not sure if you were saying that it might not be possible for some programs. I want to have “Title” line break “Caption”. I have tried “{Title}{Caption}” in both plain and HTML but that didn’t do it. I’m exporting to SmugMug.

Add <br> where you want the line break, e.g. “{Title}<br>{Caption}”, and the line break will be inserted when you have both a Title and a Caption. —Jeffrey

— comment by Bob on December 23rd, 2009 at 3:46pm JST (2 years, 1 month ago) comment permalink

FOr some reason, I cannot get the Token for the “Date Created” to work.

If I use: “2010.{Date}”, it always comes out as “2010.31″ and the “31″ suffix makes no sense to me given the template instrucitons.

If I try “2010.{date}”, it comes out with “2010.10″ which is correct since today is January 10th. However, this doesn’t help me because the photo was taken on January 9th, which is why I’m trying to use “2010.{Date}”.

Is this just a bug or am I misunderstanding how this is supposed to work?

No misunderstanding…. it’s supposed to be how you describe you expect it. Could you check the ‘All’ metadata-viewer preset to see whether any of the dates have 31 for the day-of-month value? If not, try typing {Date} into the “extra keywords” box, see the example value is wrong, then visit the plugin manager and use the “send to Jeffrey” button to send me the log, and I’ll check it out. —Jeffrey

— comment by TC on January 10th, 2010 at 5:10pm JST (2 years ago) comment permalink

Jeffrey:

I figured out the mystery (sort of) and it’s not a bug with your plugin. It looks as though any of the iPhone apps that post-process photos aren’t setting the date correctly in the EXIF tags. The native iPhone camera app DOES do it correctly though.

Oddly, when I go into Lightroom and “Edit Capture Time” on one of the offending photos, it has the correct date and time that the photo was taken — it’s just not appearing in the “All Metadata” view. I think it’s because Lightroom is looking at the “File Creation” date when the EXIF Date is missing.

So I’m suspecting either there’s a bug in the iPhone overall that doesn’t let the apps write the EXIF data correctly, or all these 3rd party apps are just lazy and not carrying over the EXIF data.

— comment by TC on January 11th, 2010 at 4:33am JST (2 years ago) comment permalink

Hi Jeffrey,
I’m having issues with the “OnlineID” token. Instead of “View on Black” It’s simply showing off as text. And when I click on the description at Flickr, I see that a few extra characters have been added — seems flickr is converting the “<" into"&l".

"<a href="http://bighugelabs.com/onblack.php?id=4285385251&size=large">View on Black</a>"

Thanks for your help in advance.
-Dev

Are you sure you have the html/text selector set to html? —Jeffrey

— comment by Devender Narang on January 19th, 2010 at 6:46am JST (2 years ago) comment permalink

Sorry, very new at this.. How do I create the upload destination so that each folder I create in the PiCASAWEB published service appears? Currently I create each destination separately in the publishing manager? Thanks!

Publish is not really working in the Lr3 beta… best to wait for the real Lr3 to come out, using the normal export until then. —Jeffrey

— comment by John on April 27th, 2010 at 7:40pm JST (1 year, 9 months ago) comment permalink

I am not sure how to use the templates to automatically put the photos into particular(existing) flickr sets based on keywords.

Templates have nothing to do with sets… there’s a keyword/set mapper in the destination section of the dialog. —Jeffrey

— comment by Yash on May 9th, 2010 at 1:50am JST (1 year, 9 months ago) comment permalink

Gallery Destination Question:
On Zenfolio, I have a group called “Recital 2008 Saturday” which contains galleries of the structure “D 8 The Potter waltz” and “D 9 Steam heat” and so on. I have put the gallery names into the metadata filed Caption in Lightroom.
So, my hope was that I can upload using an Automatic-Destination Preset, like this one:
“Recital 2008, Saturday >”{Caption}
but it tells me: “?:14813: table index is nil”
I also tried:
Recital 2008, Saturday > {Caption}
“Recital 2008, Saturday” > {Caption}
which always results in the same error.
Can you give me the correct string? Also, will the use of the template create galleries if they do not exist yet?
Thanks a ton!
CU
Heiko

What you are trying to do should work… I’ll take a look at it, but unfortunately even if I fix it locally, I’ll not be able to push out a new version for a couple of weeks. I’ll let you know how it goes… —Jeffrey

— comment by Heiko on May 26th, 2010 at 6:47pm JST (1 year, 8 months ago) comment permalink

There is the token {Keywords} that returns all keywords marked for export. I have the problem that somehow a scattering of keywords in lightroom have been created or changed such that they are checked as do not export. Given the 1000′s of keywords, I’m not feeling up to going through and manually checking every single keyword.

Would it be possible to have a token {KeywordsAll} or some such thing that would return every keyword the photo is marked with. With this, I would place that token in the “Extra tags to register with image” and thus all my keywords would export (since I don’t have any keywords that I don’t export). I realize the best solution would be for me to go through and edit each keyword … slightly daunting. A nice solution would be if there was a utility for mass selection of all Lightroom keywords for organization, management and changing those kind of details.

I can add {KeywordsAll} easily enough, so it’ll be in the next versions of each plugin as it goes out, but it won’t help your situation because the whole list would be treated as one keyword (the result of the tokens are not subjected to another round of parsing). Tim Armes has a plugin called Keyword Master, so I’ve suggested to him that it offer some way to help in this situation…. —Jeffrey

— comment by Carl M Christensen on July 25th, 2010 at 8:15am JST (1 year, 6 months ago) comment permalink

Keyword filter question:

I have many keywords grouped into sets that don’t export, for example individual animal names, that are also assigned with “wildlife”.

Is there a way to filter and use just those keywords that are contained within the set “wildlife” as the caption for an image?

Thanks

Not that I can think of, sorry. —Jeffrey

— comment by James on August 30th, 2010 at 6:08pm JST (1 year, 5 months ago) comment permalink

More great work Jeff!

As others have asked in the above comments, any update on accessing Collection info in LR 3.2 (whether it be in your presets, text exports, etc.)?

For photo gallery websites that use databases (eg, Joomla, Drupal, etc.), it would be INCREDIBLY useful to be able to export text (csv, xml, whathave you) lists of the desired apps that would include collection(s) hierarchies, image name, path to thumbnail and full image, meta data, etc.

— comment by Chris Ogden on September 17th, 2010 at 11:52pm JST (1 year, 5 months ago) comment permalink

still wondering what values the OriginalWidth and OriginalHeight tokens return ? is it the original size of the picture or the cropped size ? i am talking about the cropped size after using the resize tool in lightroom not the cropped size that we give on export ?

Yes, that is ambiguous, isn’t it. They’re for the original (possibly pre-crop) of the master image on disk. I’ve pushed new versions that also include CroppedWidth and CroppedHeight to reference the post-crop size of the image in the library. —Jeffrey

— comment by frank on January 13th, 2011 at 10:49am JST (1 year ago) comment permalink

Wow using LUA for conditional text was uncommonly easy. Thank you very much.

— comment by Clay on April 14th, 2011 at 5:52am JST (9 months, 20 days ago) comment permalink

Thanks for the great plug-in. I’m hoping to use Lightroom + Zenfolio for a huge graduation portrait project at our college in Gainesville Florida, Friday April 29, 2011. The question I have is how to Publish each client image so that they are in their own client gallery? I’m using the Caption -FileNumber as a unique identifier and I would like that to also be the client access code. My students will be processing 300-600 portrait sessions with 3-5 images each. I’m trying to setup the publish process as simple and fast as possible. Any thoughts?

Thanks,

Wes

You can use the auto-destination feature to create galleries on the fly based upon metadata, and particularly using the LUA templat you can construct arbitrarily-complex ways of converting the metadata into a gallery name. But if you want more than one image in the same gallery, you’ll need to ensure that those images all share some bit of metadata (e.g. a caption with the subject’s name). There’s nothing in the plugin that will handle setting an access code for the gallery, so that’ll have to be handled separately. But since you can have the plugin open the gallery in the browser after the upload completes, it’s hopefully not too difficult to just use that page to set the access code. —Jeffrey

— comment by Wes Lindberg on April 28th, 2011 at 12:12pm JST (9 months, 6 days ago) comment permalink

I’ve been looking for a way to include a series/sequence number in the template the same way that the file renaming allows for (1 of 12) as part of the file name. Am I missing something really obvious?

No, you’re not missing anything… it’s not there. It’s not necessarily as straightforward as some of the other items, but I’ll give it some thought. —Jeffrey

— comment by Colin Johnson on August 8th, 2011 at 12:02am JST (5 months, 28 days ago) comment permalink

Hello Jeffrey,

any way to use PhotoDate with a function like “add 1 month”? When we publish to PicasaWeb, we’d like to name the album including a “online until” – date which is 1 months after pictures are created (pictures should be removed after one month) and the visitors should be informed by an appendix in the name of the album.

Of course a template like {Folder}_Album_online_until_{YYYY}/{MM+1}/{DD} is not working. Any way to do this?

Regards from Germany,

Well, it’s a bit kludgy, but you can use the LUA template, along the lines of

{LUA=mm=="12" and sprintf("%04d", tonumber(yyyy)+1) or yyyy}

for the year,

{LUA=mm=="12" and sprintf("%02d", tonumber(mm)+1) or mm}

for the month, and

{LUA=tonumber(dd) < 28 and dd or 28}

for the day.

That all makes it one month from the current date… replace each yyyy, mm, and dd with their upper-case equivalents for the photo date). —Jeffrey

— comment by Lucas Hummig on October 24th, 2011 at 8:25pm JST (3 months, 11 days ago) comment permalink

First, thanks for the wonderful work on this and your other plugins. I’ve found the ability to custom build captions (especially for flickr) to be very valuable. I shoot both digital and film and since I’m pretty anal about keeping my information in EXIF I’m wondering the following:

I know you use Phil Harvey’s EXIF tool for various things in your plugins. Is it possible to build a token that would allow the user to input the field to be read out of EXIF for use in the caption and/or title?

I’m thinking something like {EXIFtool:xmp.film} that would result in “Velvia 50″ or whatever happens to be in that field for that image.

In short, I’m looking for a way to exposure more EXIF data than what lightroom recognizes… inside your title/caption presents.

Thanks,

John

That’s a good idea, except that it then requires that I bundle a full ExifTool executable with each plugin, and fire off a separate process for each caption. Those are not brick walls, but at this point enough of a weight to keep it from bubbling up on my todo list… —Jeffrey

— comment by John on December 5th, 2011 at 11:26am JST (1 month, 30 days ago) comment permalink
Leave a comment...


All comments are invisible to others until Jeffrey approves them.

Please mention what part of the world you're writing from, if you don't mind. It's always interesting to see where people are visiting from.

More or less plain text — see below for allowed markup

You can use the following tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe without commenting