warren_young's profile

32 Messages


570 Points

Sat, Oct 10, 2015 4:38 AM


Lightroom misbehaves when a given keyword appears multiple times within the hierarchy

It is not always possible to fully normalize a keyword hierarchy. That is, a given word may appear multiple times even in the most well-organized keyword hierarchy.

For example, you may have the word "bow" at several different places in the hierarchy:

bow < gift < object
bow < hair restraint < hair < person
bow < archery < sports
bow < weapon < object

You can't reduce all of these to a single use of the word "bow" because the keyword means something different in all four cases. In the latter two cases, the same object may be tagged with either keyword depending on its context within the photograph.

(You can find such cases in your own catalog on OS X by saying Metadata > Export Keywords... in Lightroom, saving the keywords to keywords.txt on your Desktop, then typing sed -Ee 's/^[[:space:]]+//' < ~/Desktop/keywords.txt | sort | uniq -d in the Terminal. A similar command should also work under Cygwin on Windows, since GNU sed appears to support the -E option, even though it isn't documented.)

Lightroom exhibits a broad class of misbehaviors when you use such keywords.


1. If you just type "bow" into the Keywording panel, ignoring the suggestions it gives for parent keywords, it will choose one of the options for you, again seemingly at random. It should insist that you make an explicit choice.

2. If you type "compound bow < bow" into the Keywording panel, Lightroom will choose — seemingly at random — one of the four existing "bow" keywords as a parent. It should instead report that there are four choices and make the user pick one.

3. You might think that the core problem with the previous two items is that the user input is ambiguous, but sometimes Lightroom will do something wrong even when given unambiguous input. For example, if you had bowstring < compound bow < bow < archery < sports in the keyword hierarchy already, then you type nock < bowstring into the Keywording panel, Lightroom may well create nock < bowstring < bow < hair restraint instead of placing it under archery. I know this sounds implausible, but I've seen this sort of thing happen many times over the years.

4. If you are tagging many photos in a session that all need one of these repeated keywords, Lightroom offers the keywords in an unstable order. In a fresh Lightroom session, it seems to offer them in some kind of database order, possibly based on which one was added to the catalog first. As you reuse that keyword in the session, it seems to learn, but imperfectly, sometimes offering choices you've used more recently in the past, but not always. I would prefer that it offered the keywords in popularity order, always, so that I could build up some muscle memory.
No Responses!