Hi I use digikam to work and tag my photos. The default way of doing hierachical tags is to go “fauna/bird/pacific black duck”, with bird being part of fauna and so on.
I want to make it so that if I search for for the tag I get all items with that tag, e.g. search “bird” get all birds.
However the tag format doesn’t seem to translate to searchable keywords in photostructure, the only recognised keyword is “fauna”, searching for keyword:bird or keyword:pacific black duck yeilds no results.
I check the docs and renaming the tag to “fauna > bird > pacific black duck” works I can search fauna and get all sorts of animals in the search results, and “bird” to get only birds etc.
Problem is I want the tag to be “fauna/bird/pacific black duck” it makes things easier to work with in DigiKam and it translates nicely to Immich tags feature.
My plan is to use Immich for all photos, and keep Photostructure as a smaller collection to showcase my more professional photos so I want tags to work for both platforms.
Is there something I can do on my end to get it working how I want on photostructure?
keywordDelimiters: new OptionalStringSetting({
category: SettingCategories.Tagging,
description: `PhotoStructure splits apart keywords, by default, when they are delimited by a comma or semicolon. For example, "car, blue, tree" will be interpreted as having the keywords "car", "blue", and "tree".\nNote that some software doesn't encode lists of keywords properly, so we have to include the comma and semicolon by default to handle these cases: but this makes keywords that contain a comma be split incorrectly. If the files in your library don't have this encoding issue, you can replace this setting with just an empty string to disable splitting.\nSee https://forum.photostructure.com/t/incorrect-handling-of-keywords-with-comma/992 for more discussion.\nAfter changing this value, you must force-resync your library for the changes to take affect.`,
defaultValue: ",;"
}),
keywordPathSeparators: new StringSetting({
category: SettingCategories.Tagging,
description: `PhotoStructure interprets keywords as hierarchical if a path separator character is found in a keyword. This allows for tags like "Family/Einstein/Albert", "Flora|Fruit|Orange", "Objects⊃Tools⊃Hammer", or "Fauna>Oceanic>Pelican". By default, these separators are the forward-slash, vertical-bar, and greater-than characters. If you don't want to interpret keywords as hierarchical, change this value to an empty string (""). After changing this value, you must force-resync your entire library for the changes to take affect.`,
defaultValue: "/|>⊃"
}),
By default, PhotoStructure should detect that any keyword with a keywordPathSeparators character is a hierarchical tag/keyword – so your fauna/bird/pacific black duck should work correctly out of the box.
Can you email me a zipfile of the image in question, and I can see what PhotoStructure is doing to it? (support@photostructure.com)
Well this is weird. I loaded up Photostructure tonight to get you some debug data and everything is working as expected.
I search “reptile” and it looks like it brings up all my photos tagged reptile, if I look at the info it correcly identifies the photo as fauna/reptile/species.
The “keyword” tab is still pretty barren, it only lists level 1 tags. If I actually want to see all kind of birds I’d have to search bird, drill into a pic tagged bird and explore the tag from the info section and it shows me all the bird pictures and every single subtag.
I’m okay with this as all I really wanted to do was search bird and get all birds which I can seem to do.
So it looks like the problem solved itself overnight? Perhaps there was some daily process that needed to run, like tag cleanup. Appreciate the help nonetheless =)