simon_crosland's profile

5 Messages

 • 

330 Points

Sun, Jun 5, 2011 4:47 PM

20

Lightroom: Add more flexible import naming/structure options

The one part of Lightroom that I have never got on with is the import module. The file and directory naming options are simply not sufficient to allow for the existing directory structure that and naming conventions that I use. My style is "P:\photos\2011\2011-06\Name of Job\d5100_1234.jpg" which I cannot create with LR3. Instead I use Downloader Pro from BreezeSys which allows me to automatically create this structure, and even prompts me for the "job name" before downloading the images.

Responses

Champion

 • 

221 Messages

 • 

4.1K Points

10 y ago

Which part can't be done in Lightroom? i.e. where does the folder naming stop and the file naming begin??

4.5K Messages

 • 

76.3K Points

10 y ago

Simon - I understand your Idea is for native functionality in Lightroom, but I'm curious what is the short-coming of your present "workaround"? (PS - I bypass the import dialog altogether, due to some shortcomings I was having too, but now I have no import issues anymore).

Also, you may be interested in a related Idea: Import Actions which may solve your problem in a more general way, and then some...

4.5K Messages

 • 

76.3K Points

Simon,

To accomplish your import subfolder naming scheme in OttoImporter, you would need to change the import settings in the lua text configuration file to this:

foldernameSpec = {
{ field = { 'dateTimeOriginal', 'year' }, format = '4-digit' },
{ literal = app:pathSep() }, -- literal backslash on Windows
{ field = { 'dateTimeOriginal', 'year' }, format = '4-digit' },
{ literal = '-' },
{ field = { 'dateTimeOriginal', 'month' }, format = '2-digit' },
{ literal = app:pathSep() }, -- literal backslash (forward slash on Mac).
}

promptForCustomDirText = true

"custom dir text" would be "Name of Job".

That's lua script text format, but as you can see, it's fairly intuitive to customize by example/analogy. - about the same level of difficulty as editing preset .lrtemplate files - more stuff to wade through, but also more instructions/examples ;-}.

Rob

5 Messages

 • 

330 Points

10 y ago

I'm not near the relevant computer at the moment, but from memory there are two parts that I definitely cannot do in LR3:

a) The custom file name using only part of the full camera model name. I.e. I want files called "d5100_1234.nef", not "Nikon D5100_1234.nef", can "s95_1234.cr2" not "Canon Powershot S95_1234.cr2".

b) The "job" code which goes to form the last directory name in the path. That changes on *every* import. So using static custom text doesn't work, it needs to be a free text field that I can fill in every time and which the system will prompt me to complete if I forget.

I'm also not sure that I can do the month date in "2011-06" format, but I expect I can with the necessary date format code.

Rob, what's wrong with my workaround? Solely that it requires a separate program* which makes it clunky. A purely LR flow would increase ease of use. The suggestion you link to might be useful depending on how it is implemented. I think I would need a pre-import action here to prompt for the job code and then take the list of files to be imported and massage them into the naming convention that I want. But that's kind of complicated compared to Adobe just extending the current import naming options with a few more!

* I should perhaps note that the other obvious alternative to Downloader is ImageIngester.

Cheers,
Simon

4.5K Messages

 • 

76.3K Points

Simon - for your filenaming scheme (in OttoImporter) you'd need this in your initFile function:

local model = getToken( 'exif', 'Model' ) -- all exif metadata is available as tokens (aka "fields" ).
model = LrStringUtils.lower( model ) -- convert to lower case
if model:find( "nikon " ) then
model = model:sub( 7 ) -- strip "nikon ".
elseif model:find( " s95" ) then
model = model:sub( string.len( "Canon PowerShot " ) + 1 ) -- skip to the s95 part.
end
putToken( 'custom', 'model', model ) -- make custom model token available to filename spec.

Starting to look more like lua programming, but still not too bad - I'll help if you need. And your filename spec would be:

filenameSpec = {
{ type = 'custom', field = { 'model' } }, -- custom model token
{ literal = '_' }, -- literal underscore character
{ field = { 'fileNum' }, format = '4-digits' }, -- pre-defined image-number token
}

I realize this may be over the head of non-programmers, but again: I can help...

Anyway, if you also put this in your import settings:

extCase = "Lower Case"

then you'd have these filenames:

d5100_1234.nef
s95_1234.cr2

Note: these names will not be unique, catalog-wide, since the image number rolls over. So, consider this filename spec instead:

filenameSpec = {
{ type = 'custom', field = { 'model' } }, -- custom model token
{ literal = '_' }, -- literal underscore character
{ field = { 'folderNum' }, format = '3-digits' }, -- pre-defined folder-number token
{ literal = '-' }, -- hyphen
{ field = { 'fileNum' }, format = '4-digits' }, -- pre-defined image-number token
}

which would give

d5100_103-1234.nef
s95_103-1234.cr2

(folder number = 103)

*this* filenaming scheme guarantees catalog-wide uniqueness, *unless* you buy another camera of the same model, or import photos from a like-modeled friend, in which case you'd need photograher's initials too, or something.

In case you're interested, my current filenaming scheme is:

filenameSpec = {
{ field={'dateTimeOriginal','year'}, format='4-digit' },
{ field={'dateTimeOriginal','month'}, format='2-digit' },
{ field={'dateTimeOriginal','day'}, format='2-digit' },
{ type='custom', field={'photogId'} },
{ field={'dateTimeOriginal','hour'}, format='2-digit' },
{ field={'dateTimeOriginal','minute'}, format='2-digit' },
{ field={'dateTimeOriginal','second'}, format='2-digit' },
{ type='custom', field={'cameraId'} },
{ field={'fileNum'}, format = '4-digit' },
}

which assures alphabetic order is same as capture-time order, and groups photos each day by photographer, e.g.

20121123RC095234NB1234.NEF

(photographers initials: RC; camera-id: NB - my second Nikon)

Note: photos taken by same photographer each day with different cameras are interleaved.

Admittedly long and hard to read (especially at first), but works perfectly for what I need.

Unique catalog-wide (even if the day's shoot involved another photographer shooting with same model simultaneously with overlapping image numbers...): I could export all my photos to a single flat folder (without renaming), and they would be ordered alphabetically just how I want, with no name conflicts.

Rob

Champion

 • 

221 Messages

 • 

4.1K Points

10 y ago

I'm not sure why you want the camera name in the file though?? It is a metadata sortable field - I use that often. Curious.......
I agree more flexible options would be useful.

5 Messages

 • 

330 Points

10 y ago

Having the camera name in the file name is useful for quick reference when not in Lightroom and handily prevents name clashes when multiple cameras (of different types) have been used on the same job. But my reason is mainly about having clear observability when looking at files in the file system.

1.3K Messages

 • 

22.5K Points

10 y ago

Simon, did you use LR1 or 2 where it was possible to double click the folder name and add text? Would restoring that meet your need?

4.5K Messages

 • 

76.3K Points

10 y ago

Simon, I have the exact same naming convention as you.

{camera-designation}-{camera-specific-image-number}. Guarantees unique names catalog-wide, and I can see at a glance the camera used. Everything else is done using metadata.

While I agree that more flexible import naming would be good, I think you can do what you want now just by using a different import preset for each camera (with different filenaming specified in each preset), no?

5 Messages

 • 

330 Points

10 y ago

John, I did use LR1 and 2, but never knew about the ability to click on the folder name and add text! I'll dig out an old help file and see what it says, but it does sound useful, though perhaps not as convenient as actively being prompted for the free text to insert.

Rob, I could probably do the file naming with different presets, but I don't think I can do the variable folder name with free text in it. Though given I've already missed on related feature (pointed out by John) it's possible I'm missing another!

4.5K Messages

 • 

76.3K Points

Hi Simon, it looks like the job-name (shoot-name) can only be applied to the file name, not the folder name, I guess that's the missing link. PM me if you want to entertain the method I use which does support custom folder naming text.

5 Messages

 • 

112 Points

10 y ago

why can't lighroom work like photo mechanics, import into, dated folder, then named sub folder, i know it can import into sub folder then dated folder but why not the other way around.

This reply was created from a merged topic originally titled
Lightroom improving import.

12 Messages

 • 

404 Points

10 y ago

I name mine: C:\Photos\2011\2011-07-17_Job Description

I always have to go in and add the Job Description after importing by date. It would be nice to be able to do this on import in one step.

4.5K Messages

 • 

76.3K Points

Good choice. - and it's the default import subfolder naming in OttoImporter.

10 Messages

 • 

176 Points

9 y ago

I agree wholeheartedly with the comments in the OP. I have used LR since the beginning as my primary tool (raw shooter before this even), and the import dialog has always been a bit of a disappointment due to lack of customization which would support my folder structure requirements. In my job, I shoot maybe 10 sets of images of one model in a day. My folder structure follows the format:
D:\Working\2012-02-20 model_name\set1
thru..
D:\Working\2012-02-20 model_name\set10

I too use BreezeSys Downloader Pro to copy images, as it allows me to setup the folder path using a huge list of meta data variables. I use the 'job code' option mentioned in an earlier post to specify the 'model_name\set10' part of the path (as it allows folder breaks to be included in that job code) - it allows me to change the job code for every file copy , where I would increment just the set number part. Therefore a new set folder is created for each copy - perfect! Unfortunately, the 'Into subfolder' option on LR3 import dialog puts the sub-folder as a parent folder of the date folder structure which can also be selected in tandem. I'm not exactly sure why it puts this sub-folder above the date folders but if we had the option to put this below the date folders I would be half way to a solution. Having the ability to better customise the date structures would be a saviour also!

I didn't spot any major enhancements in the LR4 beta, so hopefully we get something sorted for a more flexible import dialog for LR5 or 6 - here's hoping!

2 Messages

 • 

74 Points

9 y ago

Hi to all. I posted this in a similar thread, but I have a similar naming convention.. and as far as I can tell, I cannot rename like this in LR..

F:\Download\20-Luminale\20120420_Luminale_D300_5154.nef

From download I move the folders to their correct months.. so duplicates are not really an issue.

For the moment, the best I can manage with LR4 is:
20120420_Luminale_NIKON D300_5183.nef, in a folder named "2012-04-20".

Close enough, but a change in my workflow.. and it has worked well enough in 100.000 cases (images..)

4 Messages

 • 

214 Points

9 y ago

Lightroom is a great program, but there's one aspect of the program where I'm unwilling to give up my prior workflow, and that's copying files from a memory card to my hard disk. The directory naming and file naming options are extremely limited compared to my preferred tool, Download Pro (from Breeze Systems). DL Pro is capable of pulling a ton of data from the EXIF and using it in either the folder or file names. For example, I can import into folders based on shooting date, not current computer date. I can incorporate the camera model, and even serial number if desired, into folder or file names. I can mix dates and custom text in a folder name, where Lightroom forces me to choose one of the other. Here's a list of elements that can be incorporated into file and folder names:

http://www.breezesys.com/Downloader/h...

It includes multiple, customizable date formats based on SHOOTING INFO, not import date, multiple time formats, camera folder, file-name and file number data, ISO, camera model, free text, and more.

For example, I can upload images into a folder named 2011\Grand_Canyon\2011-10-04-7D\, which I don't believe I can do in LR at all, and certainly not by pulling info out of the EXIF. And I can rename files into that directory as, for example, Grand_Canyon_1301_400.CR2 (where 1301 is the original camera sequence number and 400 is the ISO) or Grand_Canyon_0001_7D_111004_111532.CR2 (showing date and time shot, as well as a unique sequence number).

About the only thing DL Pro lacks is the ability to have multiple custom text strings and the ability to save a copy on import.

If LR3.6, or LR4 added full featured naming capability similar to DL Pro, I could do 99.9% of my processing in LR and PS, and be a happy camper.

This reply was created from a merged topic originally titled
Lightroom: More naming options on import.

10 Messages

 • 

176 Points

9 y ago

I just moved from PC to Mac for my location work. Unfortunately BreezeSys Downloader Pro is not available for Mac and according to Chris Breeze (the author) is not financially viable for him to produce a Mac version of the product. So I am forced to use LR4 for copying images off card - I must say, this has put a huge dent in my workflow as LR4's import options are extremely lacking in functionality. The comments/ideas in this forum topic need to be given serious consideration by Adobe to fill the void in the current Import feature set.

26 Messages

 • 

340 Points

9 y ago

you may try ImageIngester, or the cheaper Ingestamatic programs, both run on Mac and PC. For the Mac, you could also use "A Better Finder Rename", after ingesting photos via TdI.
As for myself, I've been using for many years now, the free program "ExifRenamer".