.
Jeffrey’s “Snapshot on Export” Lightroom Plugin
Quick Links
· Latest Download:
     snapshot-on-export-20130501.33.zip
· FAQ
· Version History
· Update Log via RSS
· Installation instructions
· “Donationware” Registration Info
· More Lightroom Goodies
· All-Plugin Update Log via RSS
· My Photo-Tech Posts
· My Blog

This plugin allows you to have Develop snapshots created automatically upon image export.

This plugin works in Lightroom 5, Lightroom 4 and Lightroom 3.

The same download works for both Windows and Mac. See the box to the upper right for the download link link (in orange) and installation instructions.

Creating snapshots on export can be useful so that even if you later make develop/cropping changes to an image — on purpose or by accident — you'll be able to inspect (or even revert to) the as-exported state.

For example, I incorporate this plugin into the Export Preset that I use to generate photos I intend to include on my personal blog. This ensures that I can always return to the settings used to create the images that I show publicly, either to regenerate them, or to use them as a starting point for further adjustments.

Essentially, it's a form of data backup, and like other kinds of backups, it can provide a bit of piece of mind.

Note that this functionality is already included in modern versions of my export plugins (for Flickr, SmugMug, Facebook, Zenfolio, PicasaWeb, ExposureManager, Twitter, Photobucket, and Expono), so you do not need this plugin when exporting via those plugins (though adding this plugin won't hurt anything). This plugin is useful for exports to local disk, or those using any of the many other export plugins available for Lightroom, most of which can be found on Adobe's Lightroom Exchange web site.

Overview

If you're not familiar with Lightroom's Develop snapshots, they're available via a section in the left side of the Develop Module. This screenshot highlights the Snapshots section, with one snapshot named ”Exported for blog 2010-01-24 23:20:13“ already created...

If you don't see the panels in your Develop module, tap the tab key. If you don't see the “Snapshots” section, right-click on any of the section titles and be sure “Snapshots” is enabled.

When you create a Develop snapshot — with a plugin, or by hand by clicking on the “+” in the section header just above the purple arrow in the screenshot above — you are creating a named record of all the various settings used by Lightroom to convert from your original master “negative” image to the version you have in the Develop module now, including any crop, white-balance settings, sharpening and grain, locally-painted corrections, exposure adjustments, etc. etc. etc.

Note that a Develop snapshot does not include Library-module metadata, such as the caption, keywords, a geoencoded location, etc. To save those as well, you'll want to create a virtual copy (which at the moment can not be done by a plugin).


Lower-left corner of
the Export Dialog

Installation

First, download the plugin using the link in the upper-right corner of this page, and unzip it to a location on disk where you'll keep it.

Then follow the normal Lightroom plugin install instructions to install and enable the plugin in your copy of Lightroom.

Then, start an export to bring up the Export Dialog, and note the “Post-Process Actions” section in the lower-right of the dialog, as highlighted by the red arrow in the image at right. “Post-Process Actions” are Adobe's name for what normal users might call “Export Filters”... the most popular of which are likely my Metadata Wrangler (for selectively stripping embedded metadata from exported images, for privacy) and Tim Armes' LR2/Mogrify watermarking-and-more plugin.

Highlight the lower “Snapshot on Export” (the red arrow) and click the “Insert” button (the yellow arrow) to add the plugin to your export. The export dialog will now contain a “Snapshot on Export” section.

Configuring Automatic Snapshots

After installing and enabling the plugin, then adding the plugin's “Post-Process Action” as described above, your export dialog will contain a section like this:

The green arrow highlights where to enter the title you want for automatic snapshots. You can use the many template tokens supported by my plugins to make a snapshot-name pattern for use in computing the title as each snapshot is created, as I did in the screenshot above, but you can also just enter a name, such as “Latest Export”.

If it turns out that there's already a Develop snapshot with that name, it will normally be updated in place (that is, overwritten), but you can have the plugin come up with a unique name if you like; the plugin will append the date and time to the name you've chosen.

When a photo has multiple Develop snapshots, they are listed in alphabetical order (which surprised me; I would have thought they would be listed in chronological order), so the default snapshot-name pattern,

        Export at {yyyy}-{mm}-{dd} {hh}:{min}:{ss}

includes the date and time in such a way that an alphabetical sort is the same as a chronological sort. You're free, of course, to choose any naming pattern you like.

Two Important Warnings

  1. Develop snapshots are shared among a master image and all its virtual copies
    (See this presentation if you're not familiar with Lightroom's virtual-copy feature.)

    A great feature of virtual copies is that they are mutually independent, but they do share one common Develop-preset list. It's important to remember this when naming snapshots because unless the name somehow indicates which copy it's from, you have only your memory to rely on... something that is, at least in my case, unreliable.

    Personally, I tend to create a virtual copy when I need two different crops of the same picture for my blog (such as the first two photos on this post about my nephew), or when I want to do some extreme processing (such as this, these, this, or these).

    To ensure that each Develop snapshot is named such that I can tell which copy it belongs to, I enable the copy-name prefix option, as highlighted by the blue arrow in the Export-Dialog screenshot above. “Copy name” is a bit of metadata about each image in Lightroom's library: it's originally empty for master images, and “Copy 1”, “Copy 2”, etc., for virtual images, but you can change any of them as you like (I tend to use short descriptive phrases like “original”, “crop”, “edgy”, “B&W”,....). Prepending the copy name to the Develop snapshot helps one keep things straight.

  2. Develop snapshots created automatically are made after an image has exported

    The develop settings used in rendering the images in any one export session are locked in at the moment the export is launched, but develop settings recorded in each snapshot are not locked in for a particular image until after it has actually rendered.

    This means that if you launch a big export with many photos, then continue editing the same photos as the export progresses in the background, develop changes you make to an image before it's exported will be encapsulated in the automatic Develop preset this plugin creates, but will not actually be reflected in the exported copy. So, to avoid this kind of develop-setting skew, avoid editing images as they export.

As Part of an Export Preset

Export Presets are a great way to make common exports easy, allowing you to encapsulate all the settings for a particular need into one simple preset that can be selected in the Export Dialog (see its upper-left area), or launched directly via the File > Export with Preset menu. If you have export presets that you'd like to update to include this snapshot-on-export functionality, follow these steps:

  1. Bring up the Export Dialog.

  2. Click on the name of the Export Preset in question (in the upper-left of the Export Dialog).

  3. Add the plugin's Post-Process Action to the export, as illustrated with the red and yellow arrows earlier in this post.

  4. Configure the snapshot-on-export settings as you like.

  5. Right-click on the name of the Export Preset, to bring up a context menu, then select “Update with Current Settings”.

  6. (Now that the Export Preset has been updated, you can dismiss the Export Dialog.)

Availability

This plugin is distributed as “donationware”. I have chosen to make it available for free — everyone can use it forever, without cost of any kind — but unless registered, its functionality is somewhat reduced after six weeks. Registration is done via PayPal, and if you choose to register, it costs the minimum 1-cent PayPal fee; any amount you'd like to add beyond PayPal's sliding fees as a gift to me is completely optional, and completely appreciated. For details, see my blog post titled Lightroom Plugin Development: Now With Added Encouragement. If you're interested in how I picked up a plugin-development hobby like this, see My Long Path To Lightroom Plugin Development.

Version History
( Update Log via RSS )

20130501.33 Update for Lr5
20130412.32 Keyword filter to help with huge keyword lists.
20130328.31 Fix for the registration system.
20130220.30

Added support for some new template tokens: FlagStatus (requires Lr4.1 or later), and for Lr3 and later, a bunch of IPTC extended metadata: AdditionalModelInfo, CodeOfOrgShown, DigImageGUID, Event, ImageSupplierImageId, MinorModelAge, ModelAge, ModelReleaseID, ModelReleaseStatus, NameOfOrgShown, PersonShown, PlusVersion, PropertyReleaseID, PropertyReleaseStatus, and SourceType.

20130210.29 Fix translations related to label colors.
20130210.28 Add the ability to set the color/keyword for the master image of an exported virtual copy.
20130209.27 More build-system maintenance
20130206.26 Tweak for my registration system
20121029.24

Added some debug logging to track down a problem with keywords.

Enhance the {EMPTY} template token so that it interrupts the squelching of superfluous joining characters.

20121003.23

Added the ability for the plugin to set a color label and keywords when creating a snapshot.

Updates to the environment in the {LUA} token (in the template tokens in my plugins) to include photoTime() and currentTime(), and other changes to match the updated docs at that link.

.
20120608.22 Fix an "attempt to perform arithmetic on field" error.
20120526.21

Update to handle the Mac App Store version of Lightroom.

Tweak for Lr4.1RC2.

Enhanced the send-log dialog to hopefully make reports more meaningful to me, yielding, I hope, the ability to respond more sensibly to more reports.

Added to the template tokens supported by the plugin: {FullMasterFile}, {FullMasterFolder}, {FullExportedFile}, and {FullExportedFolder}.

20120330.20 Update to handle 4.1RC
20120309.19 Update to the debug logging to better track down timing issues that might arise.
20120304.18

More on the march toward Lr4, including upheaval in the code to handle Lightroom APIs being discontinued in Lr4.

Added the {AspectRatio} token to the token templates understood by the plugin, and added the Length=num filter.

20120114.17 More tweaks for Lr4b
20120112.16

Update for Lr4 beta: explain in the plugin manager that the plugin can't be registered in the beta.

20111210.15

When doing a plugin upgrade, offer the ability to flush all the old copies of the plugin.

Added a system-clock check and reports to the user if the system clock is more than a minute out of date. An incorrect system clock can cause problems with various kinds of communication and authentication with some of my plugins, so I've just gone ahead and added this to every plugin.

20110703.14 It seems there's a bug with Lightroom that causes this plugin to crash under certain multi-export circumstances. This build includes something to reduce the chance of hitting the problem.
20110113.13 Added {CroppedWidth} and {CroppedHeight} to the template tokens used by my plugins.
20100829.12 Made the revalidation process much simpler, doing away with the silly need for a revalidation file.
20100820.11

Discovered a bug in my plugin build system that caused horribly difficult-to-track-down errors in one plugin, so am pushing out rebuilt versions of all plugins just in case.

20100817.10

Added code to allow plugin revalidation after having been locked due to a bad Lightroom serial number.

20100707.9 Oops, left in the plugin expiration that was supposed to be only for the Lr3 beta. Sorry about that... this has no expiration.
20100625.8 Yikes, shaking out some more build issues.
20100624.7 Discovered a nasty build bug; pushing a new version in case it affects this plugin.
20100608.6

This version can be registered in Lightroom 3. It can run in Lightroom 2 or Lightroom 3; it does not work in the Lr3 betas.

It uses my new registration system when run on Lightroom 3, which avoids some of the silly issues of the old one. Please take care to note the details on the registration page: use of this version (or later) of the plugin in Lightroom 3 requires a new registration code, even if you had registered some older version of the plugin.

20100516.5 Update for the Lr3 beta.
20100411.4 Yikes, turns out that unchecking the "enabled" checkbox in the export dialog actually caused the whole export to become disabled, not just this plugin. Fixed.
20100327.3 Hahahaha, I'd gone to so much trouble to create the "prepend copy name" stuff (it was a lot more work to implement in the export dialog than you might imagine, given how little a thing it seems), but I forgot to actually *use* it during the actual export when creating the snapshot name. Doh!
20100323.1 Initial release

Comments so far....

This is THE feature I’ve been wishing LR had for years. Jeffrey, you’re a genius! Can’t wait to start getting my chops round LR3 now.

— comment by Mark on March 24th, 2010 at 4:01pm JST (3 years, 2 months ago) comment permalink

Hi Jeffrey – Thanks for your excellent plugins! I’ve tried searching for an answer to this question, but no luck.

When I used the LR Export-To-SmugMug plugin, it does not seem to properly handle the Virtual Copies created in lightroom. If I have one original and say, one or two virtual copies, upon export the plugin will not rename them with the “-1″ or “-2″ at the end of the filename. This causes the last virtual copy to replace the previous file on smugmug (assuming I have the replace option enabled) even if its not the same file. If I use LR’s export to file feature, it will rename each virtual upon export with the appropriate “-1″ “-2″ etc.

Am I doing something wrong, or is this a known issue?

Thanks!

I’m a little confused about whether you’re referring to a problem with snapshots in the local Lr catalog, filenames created during the export, or with uploads to SmugMug? As for snapshots, they are shared among all virtual copies and their master, so they will indeed overwrite each other if not named separately (e.g. by using the copy name). As for the file names, the Export-to-SumgMug export dialog has the same File Naming and Export Location settings as the standard export dialog, so check your settings to ensure that “overwrite” is off. But whether the filenames are the same or different doesn’t matter to SmugMug or the plugin, and each upload is treated as its own image at SM. —Jeffrey

— comment by Chris Del Grande on May 7th, 2010 at 8:32am JST (3 years ago) comment permalink

This feature is genius! IMO this – and a lot of your creations – should be included in LR by default, this especially so.

I’m still on 2.7 as 3B1/2 are dog slow for me sadly. Still, if it’s up to 2.7 speed upon final launch I’ll be using this a lot!

Thanks for your hard work on these extensions, they really make LR what it is – or should be!

— comment by Dan on June 4th, 2010 at 4:44am JST (3 years ago) comment permalink

Is there a possibility that this same plugin could add to some searchable metadata field the export preset name or some keywords? This way i could track back these images.

It took a while, but I’ve finally added this as of version .23. —Jeffrey

— comment by Jere on January 17th, 2012 at 10:36pm JST (1 year, 4 months ago) comment permalink

Hi Jeffrey! Is there a way to get the same functionality in printing a photo? ie, ‘Snapshot on Print’

No, as far as I know there’s no plugin access to anything in Print. —Jeffrey

— comment by Anonymous on March 19th, 2012 at 5:47am JST (1 year, 2 months ago) comment permalink

Hi Jeffrey, wonderful plugin, thanks very much!

But there’s one more thing I’d really love to see: The ability for this plugin to add a keyword to an image upon export. Say I export an image for my blog, then it’d be great for the plugin to add “exported_to_blog” as keyword to the image. That way, I can later on conveniently search for all images that I have exported to my blog at some stage…

Thanks again,

Florian

It took a while, but I’ve finally added this as of version .23. —Jeffrey

— comment by Florian on June 4th, 2012 at 8:52pm JST (11 months, 18 days ago) comment permalink

Hi, greetings from Finland.

Just installed your plug-in to export photos from LR to photo bucket. I keep getting a error message: Debug:1205: networkConnectionLost.
After exporting some 15-20 frames, the message appears. Any idea what I can do?

Best Regards,

Timo

Sounds like your network connection is flaky… not much the plugin can do but report errors when it encounters them. —Jeffrey

— comment by Timo Tammisto on October 28th, 2012 at 5:09pm JST (6 months, 25 days ago) comment permalink

Hi Jeffrey,

I’ve been a user of your plugin for quite a while! Just recently, however, I keep encountering an error when uploading my photographs to facebook. It will upload like 4 photos then get an error message.

The error specifically says: “Debug:1205: Error reply from Facebook: Unsupported get request”

Any ideas on how to fix it? I don’t believe it’s a network issue because my internet works great at home. But then again, you’re the expert. Hope to hear from you soon!

This is a bug at FB that tickles only a few people. Welcome to the club! )-: I’ve reported it with details, so they should have enough info to fix it if they want. We’ll see. —Jeffrey

— comment by Bryan M. on November 4th, 2012 at 4:09am JST (6 months, 19 days ago) comment permalink

hey Jeffrey,

Thanks for the plugin.

Is there a way to auto export. I.e i have the LR watch a folder and auto import the images, apply a preset grade and then i want LR to auto export any new images without a user having to click. a fully automated lightroom export function.

The use is to be on site taking photo’s, these images get sent to the pc through a few different option, tethers, wireless whatever. Then LR imports the watched folder (or directly if using lightroom tethered shooting) applies preset and exports to a folder to be printed or watched by another software.

Would love some help, cant seem to find much info on the web.

thanks ,
stu

You can definitely do this if you write your own plugin, but I don’t know of any plugin that does the export part. —Jeffrey

— comment by stu shapiro on November 6th, 2012 at 5:27pm JST (6 months, 16 days ago) comment permalink

Thanks again (from French Riviera) for the recent addition of the keyword set in this plug-in.
I’ve been using this plug-in (with many of your other magic plug-in) for a while as it is a great way to keep track of export.
Now, I wanted to set a keyword to be able on some key export, to use your Safe plug-in to detect automatically (smart collec) that these picture need to be protected.
I’m using it for the feature to set it on a virtual copy (for which I do not see other mean to do it)

However, I’m completing it by a use of run any command plug-in as I want in that case to tag with the same keyword, not only the worked picture (could be a tif from PS) but also my original NEF stored in the same folder (stacked with it) hence the command
“F:\_exiftool_for run-any-command\exiftool.exe” -overwrite_original -keywords+=”Portfolio” “{Path}\{LIBRARYFILENAME:Length=14}*.tif” “{Path}\{LIBRARYFILENAME:Length=14}*.xmp” “{Path}\{LIBRARYFILENAME:Length=14}*.jpg”

It could be useful (even though it makes thing more complex) to be able to set a filename filter with tokens that would allow to set the keyword not only to the virtual copy but optionally on all copy of the same original and even some file with other extension

Updating the metadata for the master image files outside of Lightroom puts it in conflict with Lightroom, so this seems dangerous…. a good way to lose data, I’d think. Anyway, I just pushed a new version with this new featured added. ;-) —Jeffrey

— comment by Marc Pelissier on February 3rd, 2013 at 7:21am JST (3 months, 20 days ago) comment permalink

I also noticed a small display bug (using release 20130201.25) on the Set Image Color label.
All radio button have the same label. Which seems to be using the localized version of LR as it shows in French in my version (all label says Red in French)
Maybe because I defined a text for all these label in LR ?
Not a big deal anyhow :-)

Thanks for the heads up… I’ve pushed a version that fixes it. —Jeffrey

— comment by Marc Pelissier on February 3rd, 2013 at 7:30am JST (3 months, 20 days ago) comment permalink

Hi Jeffrey,
Writing to you from just outside of Rochester, NY. Just wanted to say thanks for the great plugin! It was something I was looking for a couple of years ago when I found this plugin. Now its a critical part of my workflow and I use it in ways that I hadn’t originally intended. I really appreciate your hard work on this and your other plugins (I purchased Metadata Wrangler too)!
Tom

— comment by Tom Culligan on April 3rd, 2013 at 11:14pm JST (1 month, 19 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