-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for Tags #1161
Comments
But how would we store it? We could store the tags in local settings however the user will lose the tags when the app is reinstalled. We can use roaming settings however that only works for Microsoft account and not local accounts. A better alternative would be to embed the tag in the file's metadata however that may cause some incompatibility with other apps. In macOS, the tag is stored by the file system not by finder. We can't do that since NTFS doesn't support tags. If you really want tags in Windows, give feedback to Microsoft. |
By roaming, you probably mean %appdata%, right? Afaik, this is available to local users as well - idk. If not just use a C:/Program Files/Files UWP/Data/ folder or something like that. |
In Windows 10, there’s a feature that syncs the roaming folder to the cloud. It’s intended for apps that need to sync data between Windows devices. We don’t really need to use it since the files and folders are probably local however the roaming folder can also be used to restore data if the app has been reinstalled since we can download the data from the cloud. Users probably want the tags to stay even if the app is reinstalled and I don’t really know a good way to do that. Using Program Files might be a better option however, what if the user reinstalled Windows? Also, all of these methods for storing tags aren’t portable. Imagine a file on a USB Thumb Drive. When I apply a tag using Files UWP on my current PC, Files UWP will show the tag on this PC only. If I plug the drive on another PC, the tag won’t be shown since the list of tags in this PC doesn’t contain that file. The only way for this to portable across devices is to embed the data in the file itself however, I don’t know how that would work. It's not impossible however we need to do a lot of work since Windows doesn't natively support tags. I really like your idea though.
|
Just looked it up, Windows actually supports tags - they are kind of crappy tho. Check this out: https://www.howtogeek.com/344543/how-to-tag-any-windows-file-for-easy-organization/ |
Thanks for that link. Do you want to store tags as colors or strings? If you want to store colors like macOS, we could store them as a string and interpret it as a color and show it on the screen. Using this method will also be portable and will work even with File Explorer (as a string, I guess!)
|
I would rather say strings for easier use with win explorer. Then you could set a color in the settings of FilesUWP. By default, just a random color, which can then be changed. |
@duke7553 Could you assign me to this issue? |
@Jaiganeshkumaran I'm thinking we DO NOT want to keep a temporary file with JSON for the flags. Rationale: It is far more efficient to use the BasicProperties.SavePropertiesAsync() method to associate a color value with the filesystem property of the storage items themselves. This won't persist across reinstalls of Windows, but MIGHT stay around if Files (UWP) is reinstalled. I still have to research this part. Side note: This is already built-in to Windows for use in Outlook, we just have to create a UI for it |
You could also set the tags to "identifier#RRGGBB with RGB being the color set in the settings. |
@duke7553 Most file properties do persist as long as you have the file in an NTFS volume. |
@thetek42 The main issue is that the built-in tags feature only works with some files instead of all files. Windows does offer other properties were we could store it instead. |
Comments property works with most files but for others I'm searching for another property |
It's much harder than I originally thought. Although tags are there in Windows, it's for a few file types and it doesn't work with others. Microsoft doesn't provide a good documentation about this so it's not reliable. They are other properties however we shouldn't modify them because it may contain other information and even then they are only available for a few files. To make matters even worse, some files have property locks and Explorer doesn't allow you to change any property of the file so I get an exception. |
@yaichenbaum @gave92 Any idea on which property to use for storing tags? I don't get why some properties are only available for some file types although they are generic. |
@Jaiganeshkumaran I was looking to alternatives to Alternate streams as you'd need to use the fulltrust process to get them (possibly slow to load) and they do not persists if copied outside NTFS. Not sure if there's another way though. |
@gave92 It's just colour so perfomance might not be an issue. For other file systems the solution is simple: AppData |
I'd love to see this feature implemented :)
What do you all think? Do you see any other options? |
@gave92 We can use ADS and also it doesn't need to be indexed because Windows Search only supports properties. |
@Jaiganeshkumaran you can actually store properties in ADS. E.g. you can add the standard "comments" property to any kind of file. Unfortunately as I said this does not help us as those properties will not be indexed :( So don't you find being unable to search for files matching a tag to be a severe limitation? |
@Jaiganeshkumaran Are you still planning on working on this issue? |
@yaichenbaum Yes |
@Jaiganeshkumaran That's great! Keep us posted. |
Maybe we would have to implement them manually however how would you search for colors? |
The issue is that for finding all files matching a tag you'd have to scan the entire HDD, load the ADS for each file and check if it has a matching tag ---> tooo slow to make any sense
|
I am also really looking forward for your implementation of tags/colors I think it's of major importance to Files and user experience in Windows. |
I think that using a database along with an audit policy can be helpful. The apparent problem with the database approach is that we won't know when a file is renamed/moved to a different location by using file explorer. To address this problem we can use an audit policy, which tells Windows to keep track of file changes. So whenever we tag a file, auditing would be switched on for that file only. Even if Files is closed, any operations on the tagged file would be logged and made available to Files. Thus Files can update its database the next time it is opened. And after all tags are removed from file, auditing can be switched off for the untagged file. This can help to persist a tag. References:
|
@yaichenbaum sorry, I am not a developer. |
You can try out this branch for a working implementation of Tags for Files v1.9. UI is unfinished but:
|
This issue should be resolved with #5629. |
I've just been following this looking for this one feature and not sure if anyone is working on it. I'm a web designer/developer not sure if I can help but would love to see this feature along with an easier implementation of tags in general. |
@e11world it's already been added, you can find the latest version of Files on our website https://files.community/download |
I did see it but only 4 of them and no way to add or edit any. Seems merged with tags but they should be different things since tags can be the detailed way of finding items but colors are another quicker way to organize and scan items. I guess needs modifications of how it functions. |
You can edit anything about them in Files settings > Tags |
Thanks I see it now. Pretty amazing!! |
Is your feature request related to a problem? Please describe.
I really like the Tag feature in the Apple Finder. It would improve my workflow quite a bit, and the default Windows Explorer doesn't have it. Image below:
Describe the solution you'd like
Describe alternatives you've considered
There's not many good alternatives to tags... E.g., I could make a Tag for ToDo so that I don't have to write everything in a text file which is pretty annoying.
Additional context


Image from the Mac Finder:
The text was updated successfully, but these errors were encountered: