As I discussed in a previous post, Adobe's new photo-workflow application, Lightroom, has the sometimes-unpolished feature set one might expect in a “1.0” product. The main core functionality is great, more than I think one could expect from a “1.0” product, but it lacks a lot of user-customization abilities that you know will be added eventually, once the “to do” list of must-have features gets down to terrestrial levels.
(Update: this still works fine for Lightroom 2)
Nevertheless, as one might expect from a mature software house like Adobe, they designed Lightroom's internal framework with the future in mind, and as such, it holds hidden configuration hooks and parameters not (yet) refined, and not (yet) exposed to the user.
Taking advantage of one such hidden “hook,” two weeks ago I released the lengthly-named Jeffrey's Lightroom Metadata-Viewer Preset Builder, which allows you to create your own sets of metadata items that you want to see while in the Library Module.
For those who are a bit adventurous and wish to diddle a different set of hidden parameters, today I present the somewhat ambitiously-named “Jeffrey's Lightroom Configuration Manager.”
The views above and to the right show a few of the changes you can use it to make (mouseover the “Original” and “My Config” buttons to change between views). The changes are not really very apparent in the reduced-size full-screen capture shown above, but the utility becomes apparent in looking at the full-resolution portion at right.
In the view at right, you can see these changes:
I reduced the size of the font used for metadata labels.
I changed some of the metadata labels, e.g. “Job Identifier” became “Blog URL,” among others. (Note: see this comment for a caution before repurposing standardized fields for your own use.)
Taking advantage of the extra space created by #1 and #2, I then increased the size of the font used for the metadata values.
I changed the “cropped to” in the combined-dimensions item to the much shorter “«,” and swapped the order of the sizes so that the cropped size shows up before the original size.
As a nice consequence of the space savings afforded by #1, #2, and #4, I could go ahead and update my main customized metadata view preset to use the more informative (which shows the size of the image, and if cropped, the cropped size as well). Without the space savings, that element .
How it Works
This taps into the internationalization framework Adobe built into Lightroom, which exists mostly to allow the user interface to be presented in another language, such as having the phrase “Enter Impromptu Slideshow mode” appear as “Modus “Frei gestaltete Diashow” aufrufen” in the German version, and “Passer en mode Diaporama impromptu” in the French.
Using this simple interface, we can have “ISO Speed Rating” appear as “ISO” (or whatever we like), which is how #2 above is achieved.
Along the same lines, they have entries for how to construct composite items like the cropped + original image size. The default (English) value for this item is “^1 cropped to ^2,” where the ^1 and ^2 are placeholders for the per-image original and cropped sizes, respectively. In comparison, the German version is “^1 freigestellt auf ^2” and the French one is “^1 recadrée à ^2.”
So, to effect #4 above, I changed my version to “^2 ^U+00AB ^1.” Here, ^U+00AB is one way to refer to the Unicode character at code point 0x00AB (which is ‘«’, the same as via the HTML entity “«”). I chose that character for my configuration because it's visually distinctive and short, although I could have just as easily kept the original-then-cropped order found in the default by using something like “^1 @ ^2,” or changed it to something verbose like “Originally ^1, cropped down to ^2.”
Finally, they have a small set of entries used for adjusting other parameters — I used some of the entries for configuring font selections and sizes to round out the changes seen above.
Not Intended for Human Consumption
Before going further, I need to be very clear about one point: Adobe did not design these internationalization hooks to be exposed to the user. Yes, the door is not locked and so we can enter and rummage around, but it's at our own risk. We might find ourselves shocked at how messy the back closet is, and we might hurt ourselves by tripping over something, but in entering uninvited, we take full responsibility for any mishaps.
To the best of my knowledge, the worst that can happen in changing some of these parameters on our own is that Lightroom refuses to work until we undo the change, but for all I know, it may be possible to accidentally delete every file on your computer. I don't know. Consider yourself warned.
The Configuration App
Jeffrey's Lightroom Configuration Manager is a web application that helps you identify the changes you wish to make, then produces a configuration file for you to install into one of Lightroom's system directories (described later). As of this initial “Version 1” release, the configuration parameters are grouped into four sections:
- Metadata Viewer Labels
- Metadata Viewer Value Formats
- Screen Space
- Fonts and Text Sizes
In the Screen Space section, you can change the maximum width of the module panels, which can be a great help for those of you with long folder names that otherwise always get cut off. Here's a view of the application with that “Screen Space” grouping opened up:
If you make a change to a parameter, it's highlighted, and a “reset” button appears. You can mouseover the reset button to see the original value as a tool tip, and, of course, revert back to the original value by clicking on it.
Entries in the Screen and Font sections are in Mac/Windows pairs; be sure to change the value appropriate for your needs (or both, if you intend to install the configuration file on both OSs.
Before you can generate your first configuration file, you must answer a short gauntlet of simple questions designed ostensibly to ensure you understand the “not supported by Adobe, or anyone else” nature of this. My main hope, though, is that the questions appeases any grumblings at Adobe about this app.
Once you've made whatever changes you'd like, and have gotten the gauntlet of questions out of the way, a “generate configuration file” form appears. All the form fields are optional; the first three are used as documentation for the configuration file, while the last, your email address, is if you wish to be contacted by me in case I discover a bug in the files that have been generated, or something. As I said, they're all optional.
Once you submit the (possibly empty) form, you'll arrive at a page for your specific configuration that can be bookmarked and shared with friends. (Here's my configuration, by the way.) Use the “save this link” link on the page to download the configuration file; name it “TranslatedStrings.txt” and place it here:
- Mac OS X:
- /Applications/Adobe Lightroom.app/Contents/Resources/TranslatedStrings.txt
With Finder, control-click on “Adobe Lightroom.app” in the Applications folder, select “Show Package Contents,” and continue navigating from there.
- Windows XP/Vista:
- C:\Program Files\Adobe\Adobe Photoshop Lightroom\Resources\en\TranslatedStrings.txt
The configuration takes effect the next time Lightroom starts.
If something seems amiss, such as the metadata panel not appearing, that's a good indication that something's wrong with the file or one of the settings you've chosen, so it's best to shut down Lightroom and remove the file you just installed.
The file itself is just a UTF-8-encoded text file that can be edited locally. (On Windows, use Wordpad, not Notepad. With OSX, TextEdit is fine.) Editing locally is convenient if you want to simply try a new font size, or the like.
In case you've missed the links leading to the configuration application itself, here's one more:
A few extra notes...
The per-config page (the one that can be bookmarked and shared) contains a “View or Edit” link, which brings you to the application with all its configurations pre-filled-in. In this way, you can use someone else's configuration as a starting basis for your own. (Any changes result in a new configuration url.)
If you'd like to use my config as a starting basis for your own, follow this link. Because it's unlikely that you also use the “Job Identifier” field to encode blog URLs, one of the first things you'll probably want to do is reset that change.
In the metadata panel, the labels take up as much room as they need, leaving whatever is left for the per-image values. Because of this, it's desirable to make the labels as short as possible, which is one reason to change something long like “ISO Speed Rating” to “ISO”, or even “Focal Length” to “FL”. Realize that you'll see these labels only in the specific context of the metadata panel, so for the most part you don't really need labels at all. That's why I made all the ones I use really short.
Within text fields, it seems that you can use the pattern ^U+#### (where the #### is a four-digit hexadecimal number) to refer to Unicode characters by their code point. This works only for characters actually contained in the font used to display the text, of course. It's quite dependent on the font, but most fonts contain only a small fraction of the full Unicode character set. For your reference, here are links to lists of Unicode letters and symbols.
If you set the Panel Default Width (in the “Screen Space” section) too small, you'll not be able to change the size of the panel.
The items in the “Fonts and Text Sizes” grouping may seem somewhat haphazard, but that's only because they are. This is one of those “messy back closets” I mentioned before, and I spent considerable hours just trying to sort out the meanings of the various parameters. Adobe didn't intend this to be public, so I certainly can't blame them for not making it intuitive to me.
In any case, some items apply depending on the current state of Lightroom's font-size setting, which you can change in the Lightroom's Preferences dialog.
For font selections, various MyriadWebPro fonts are listed in the dropdowns because they are included with Lightroom, and are the fonts that Lightroom uses by default. If you'd like to use a different font, be sure it's installed on your system, then pull up Lightroom's Identity Plate Setup (via the Edit menu) and see the list of fonts available there. You can then copy the name of the font you want into Configuration Manager.
When I finally finished creating Jeffrey's Lightroom Metadata-Viewer Preset Builder, I thought it had been tough, but this Configuration Manager turned out to be much more difficult because of the nature of the subject matter.
Just figuring out what could be configured and how took most of the time and effort, with much of the remainder going to crafting a presentation that made it easy to understand and configure. (I use the word “crafting” loosely here, because I'm not particularly happy with the result, but it'll have to do because I'm about ready to shoot myself to save myself having to look at this for another moment 🙂
In any case, I hope this little app is useful to someone.