[Digikam-users] New Tool: Tags Manager

Jean-François Rabasse jf at e-artefact.eu
Wed Jun 26 09:15:45 BST 2013

On Tue, 25 Jun 2013, Elle Stone wrote:

> On 6/25/13, Andrew Goodbody <elfringham at gmail.com> wrote:
> > While this may be true in an ideal world unfortunately there
> > are scenarios that are somewhat reasonable for having them
> > out of sync. eg I have some photos sent to me by a friend
> > that has some tags applied to it. I do not want to remove
> > those tags nor do I wish to import them into my database but
> > I do wish to add my own tags.
> That's an excellent example of when and why you'd want the
> database tags and image tags out of sync. In an ideal world
> digiKam would be able to handle "always in sync" and and also
> "not always in sync". Has anyone ever used a photo-management
> software that had this kind of functionality implemented?
> If so, how did the user interface work? How were the options
> phrased?

I agree, Andrew's example makes sense. Well, this issue « sync
or not sync » has been evoked many times on this list and my
impression is that there's a vocabulary ambiguity. We talk
about « sync » , or « out of sync » and the Digikam user
interface talks about « Read (metadata) from image » or « Write
to image » . (Be it image or sidecar.)

The ambiguity is that terms like read or write indicate a data
direction, from source to target, but doesn't state about the
way data is used on the target.

One can read in two ways :
- Read tags from image and add them to existing tags in the DB,
for that image. This is the current way Digikam works, and this
is a kind of append mode.
- Read tags from image and set them in the DB, removing from DB
all previous tags associated to that image. This is a mirror

Same, one can write in two ways :
- Write tags from DB to image, appending them to existing tags
(in the image). This connects to Andrew's example.
- Write tags from DB to image, mirror mode. All previously
existing tags in the image are forgotten. This is the current
way Digikam works.

It seems impossible to define a priori a definitive strategy,
suited to all possible use cases, so perhaps a good solution
could be that the UI provides four commands, instead of the
current two « Read » and « Write » . Could be something like
« Append read » , « Mirror read » , « Append write » ,
« Mirror write ».

NB: it could be four buttons, or two buttons « Read » ,
« Write » , plus two options checkboxes, « Read mode: mirror vs.
append » , « Write mode: mirror vs. append » .
(With this second solution, the default options should probably
be mirror mode, which seems the best suited for standard usage.)

At least, a great thing would be to have the two exchange
functions, read and write, be symmetrical. Current Digikam writes
tags in mirror mode but reads in append mode, and this happens
to be very perturbing for users doing tags reorganisation because
the effects are not intuitive.


More information about the Digikam-users mailing list