Bug 426733

Summary: Renaming with tags in subtree fails
Product: [Applications] digikam Reporter: Jo <jo.y.venn>
Component: AdvancedRename-dialogAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: caulier.gilles, metzpinguin
Priority: NOR    
Version: 7.0.0   
Target Milestone: ---   
Platform: macOS (DMG)   
OS: macOS   
Latest Commit: Version Fixed In: 7.2.0
Sentry Crash Report:

Description Jo 2020-09-19 15:17:56 UTC
SUMMARY
I've seen this bug also in previous versions. 

STEPS TO REPRODUCE
1. Rename files with the subtag of a tagtree (i only use subtags, never the main tag containing the subtags) 
2. In the rename window I enter [meta:Exif.Photo.InteroperabilityTag], the preview keeps empty 
3. There's nothing to rename, try to move the subtag outside in the tags folder. Now renaming works. 

OBSERVED RESULT
I can't rename files with nested tags. If tags are inside the Digikam's tag folder, renaming works 

EXPECTED RESULT
Whether tags are nested or not, Digikam must be able to see what tags are applied to a file 

SOFTWARE/OS VERSIONS

macOS: 10.14.6
Comment 1 Maik Qualmann 2020-09-20 08:22:51 UTC
I do not understand the problem. What does "meta:Exif.Photo.InteroperabilityTag]" have to do with digiKam tags? This is a purely technical entry in the Exif metadata of images. The renaming tool currently has no database support for tags. You could use "[meta:Xmp.digiKam.TagsList]" and append a range command to cut out subtags.

Maik
Comment 2 Jo 2020-09-21 08:33:49 UTC
Digikam allows renaming of files in  many different ways, one of this strategies is, to rename files using tags. 

You can rename files to look like this :
Main-tag|subtree-tag|subtree-tag.jpg

I love it. Now I found out that  tags are applied only after restarting Digikam 

I hoped Digikam could rename files also without writing Metadata tags to files
Comment 3 Maik Qualmann 2020-09-21 11:18:38 UTC
The "|" character is a prohibited character in file names under Windows. We allow it if no FAT, NTFS or FUSE file system is used. Is your image collection on one of these file systems? In this case, you cannot use it as a separator for your tag names. It is replaced by "_" characters.

And I just checked. The "|" character is also prohibited for MacOS. So we will generally block it.

Maik
Comment 4 Jo 2020-09-21 12:08:37 UTC
I'm on macOS 10.14.6, Digikam 7.0 and renaming works just fine with the pipe character.
Prohibited characters are usually

 / \ :

Underscore is a great alternative. Anyway, Digikam adds pipes on its own (by using [meta:Exif.Photo.InteroperabilityTag]) . I didn't choose that delimiter character as placeholder to divide tags
Comment 5 Maik Qualmann 2020-09-22 07:25:11 UTC
The digiKam with the metadata tag "meta:Exif.Photo.InteroperabilityTag" added the "|" character was more of a coincidence and not on purpose. We have no control over it, this is decoded by Exiv2. There will be no way back here either. Why can't you enter the "|" character directly on your keyboard?

Maik
Comment 6 Jo 2020-09-22 08:16:21 UTC
The first time I hear that pipe '|' is a forbidden character on macOS 
Even in applescript I've no problems at all with it.
I don't know about the pipe character on Linux or windows systems
Comment 7 Maik Qualmann 2020-09-22 08:34:41 UTC
It is only recommended not to use the pipe character in file names under MacOS. Unfortunately, I only find German websites that deal with the topic. Anyway, we talk past each other. You can't enter a pipe directly with ALT + 7?

Maik
Comment 8 Jo 2020-09-25 16:38:33 UTC
I can, alt+7 works everywhere on macOS. Also in Digikam
Comment 9 caulier.gilles 2020-12-18 11:54:43 UTC
Hi,

digiKam 7.2.0-beta2 pre-release PKG installer now support BigSur and is compiled with last stable Qt 5.15.2.

https://files.kde.org/digikam/

Problem still reproducible with this version.

Thanks and happy Christmas in advance

Best Regards

Gilles Caulier
Comment 10 Maik Qualmann 2021-02-06 22:13:10 UTC
We have added database support for renaming with tags and tags paths, I'm closing the bug.

Maik