You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the past I started a document with notes about tags and a collection of programs that focus specially on the tagging of multimedia and files with a goal of creating and improving my own QuoMediaView project. I decided to rewrite it and make it public so that it can be useful to other developers and possibly for Pop!_OS too since I do plan to migrate to the newest version with COSMIC DE. I'll try to make it short.
macOS Finder does indeed have a good tagging support which I think would be enough for now. Even the design may be "taken" since cosmic-files does have a sidebar and we could have a collapsible section there that would list all tags. I don't know if tag colors can be implemented. There are also more advanced tagging solutions than what Finder offers, but that is a deep rabbit hole.
There are 2 file managers on Linux that have tag support both use the same method of storing tags - user.xdg.tags. It is an extended attribute which most Linux file systems support. Tags themselves are stored in CSV format so that's why it may be tricky to implement tag colors.
Problem with tags made this way is that certain file operations such as copy may get rid of the tags if appropriate command flags are not used. ArchWiki page about Extended Attributes lists all such things.
Unfortunately I can only provide information and testing since I don't know Rust so no developing help from me, but here's the rewritten document I wrote about in the beginning: https://github.com/Qronikarz/TagsResearch.
Images and videos collection from QMV (21,8 MB size) may also be taken for testing the tag support since they're public domain.
It would be great to have an easy to use and properly working UI for tagging files, i.e. like it is implemented in MacOS Finder.
The text was updated successfully, but these errors were encountered: