支持多标签的文件管理 UWP TagFile

2019-11-11 10:40:20 +08:00
 ankazen
关于文件管理应用
1、这类的应用不应该使用 Electron 等方式开发。
2、现有的文件管理应用,不支持多标签。但是一个文件,可能属于多个标签:日本,未看完,美腿等等,让人纠结。
3、文件夹这样的树形结构,效率低下。

综上,试着做个多标签的文件管理应用 TagFile,现已上线 Windows store,欢迎去试用、提意见。
由于 Windows store 限制多,如果有需求的话,会做 WPF 这样更强大的版本。
5296 次点击
所在节点    分享创造
37 条回复
TrembleBeforeMe
2019-11-11 11:25:40 +08:00
精神支持一下,说实话不太想用 uwp 的软件,总感觉不如传统 exe 好用。
loveour
2019-11-11 11:28:54 +08:00
举例的这个几个标签有点意思。。
支持做这类应用。
ksc010
2019-11-11 12:08:48 +08:00
不支持按照文件夹导入吗?
ankazen
2019-11-11 12:18:31 +08:00
@ksc010 把文件夹拖拽上去就可以
ksc010
2019-11-11 12:32:54 +08:00
@ankazen 好的 谢谢
还有一个建议是 给文件夹批量打标签
或者是想下怎么优化下这种场景
我原来已经按照文件夹分类了一些文件了 怎么把这些文件批量导入进来
同时又能方便快捷的设置上标签
ankazen
2019-11-11 12:33:28 +08:00
@TrembleBeforeMe 是的。。uwp 限制挺多的
ankazen
2019-11-11 12:35:06 +08:00
@ksc010 右侧标签选中的情况下,所有拖拽进去的文件,对会打上选中的标签。
可以先建立标签,选中,然后把文件都拖进来。
ungrown
2019-11-11 12:47:07 +08:00
现阶段不要妄想标签能解决你的问题。
我就问你,这类软件给文件打的标签能不能存在原文件本身的数据里?显然不能,因为这样做 IO 负担大,还有可能出错损坏原数据。那么存在 NTFS 的附加数据流里怎么样?或者 ext4 这类文件系统的扩展属性里?可是这意味着经过这样处理的文件一旦要跨文件系统转移就很麻烦,别的不说,从本地 win 系统拷贝到 nas 就要面临这样的困境。
那么这类标签文件管理器往往会怎么做呢?你应该想到了,自维护一个数据库,比如 sqlite。那么问题来了,这个软件自行维护的小数据库一旦重装怎么办呢?导入导出方便吗?源文件路径变化了它能自己监控自动适应吗?
其实标签文件系统一直有人在研究开发,有不少已经使用很方便的 fuse 实现的标签文件系统,然而终究乏人问津,为什么?
ankazen
2019-11-11 13:23:36 +08:00
@ungrown 任何解决方案都有问题的。
首先得承认目录这种树形结构繁琐。
然后有了 everything 这样的基于搜索的文件管理。
但是,搜索是基于文件名的,而文件名本身是目录结构的一部分。我看很多人试图在文件名上添加很多标签,来方便搜索。这种也太繁琐。
去目录化,标签化,是没有问题的。

至于现有的标签系统,用的人不多。我觉得是标签的生成和管理,本身就需要很多精力。
文件迁移怎么办?系统重装怎么办?文件监控怎么弄?
一个工具嘛,不能解决所有的问题。而且这些问题肯定都有办法解决,就看需不需要。
比如说:如果文件是经常变换的,你可能不会去打标签的,而那些影音文件,位置和内容都不怎么变化的,不就没问题了吗?
ungrown
2019-11-11 13:43:41 +08:00
@ankazen 目录缺点再多也是一切的基础,数据存放不可能不依赖目录。所以目录只是为了提供一个路径,我们需要的也仅仅是一个路径。
你需要的,其实不是标签,而是一个数据库。
其实如果能有跨文件系统且统一实现的文件原数据存储方式的话,这一切都迎刃而解。
奈何大家没这个硬需求。
如果我需要给文件或者目录打标签,我在它旁边放个相同名字的原数据文本文件,里面写上标签,就行了。支持文本文件内容索引的工具,很多。
我为什么不用标签管理器,因为用过,而且是集中时间把当时所有做得够好的全部用一遍。我得出一个结论,这和标签管理器这个软件写的好不好,用起来方便不方便其实没有一毛钱关系。真正的问题在于,当我设计标签、编辑标签、维护标签所花的时间,远远超过了我通过标签搜索所节省下来的时间时,我 tm 是不是傻…
所以,大多数文件应当分类放好,它们在选择存放位置的时候就应当确保,其路径能符合其主要属性,这也是 URL 的核心价值。
至于那些确实不好分类、需要额外属性标记的路径,我只要写一个同名文本文件就好了。
ungrown
2019-11-11 13:44:54 +08:00
@ankazen 其实如果能有跨文件系统且统一实现的文件附加数据存储方式的话,这一切都迎刃而解。
奈何大家没这个硬需求。
ankazen
2019-11-11 14:36:15 +08:00
@ungrown 跨文件系统啥的,我觉得现在就不用想了。云端提供便利没错,但也很危险。还是本地好。
tag 本身就是要在文件之外多做些工作,这没错。但是我之所以觉得这个可能有用,因为我自己做了类似的多标签管理自己的笔记,用了好几年了,我觉得很方便。所以要把本地文件也标签化了。
ungrown
2019-11-11 14:39:14 +08:00
@ankazen 你试试吧,最后不尽如人意也不用灰心,正常的,这事不是加个标签系统就幸福快乐了。
标签多了,找标签本身就成了麻烦。标签少了,整个标签系统又有点多余。
其实我们平常整理文件的过程就是一个贴标签的行为,只不过那个标签数据库在我们脑子里。
ungrown
2019-11-11 14:45:10 +08:00
@ankazen 我的笔记用的为知,也有标签功能,但我发现我用不到。它本身支持多级目录,再配合文本搜索,不存在搜不到的情况。
ankazen
2019-11-11 14:54:18 +08:00
@ungrown 现有的标签也是单标签,现有的笔记都是基于文件的,粒度不够小。
如果你有几行代码,既属于 nginx,也属于部署,也属于 shell,而你有三个笔记,叫 nginx,部署和 shell,那么这段代码应该放在哪里?如果你想查找除了搜索关键词,是不是能从目录方式找到?
现在的笔记当然可以打多个标签,但它的检索方式是单标签的。
对于笔记来说,检索比写入要重要的多。除非你写了就不再查询。
ungrown
2019-11-11 15:02:56 +08:00
@ankazen 你这就是思路走进死胡同了呀。想这么特征明显的笔记,根本都不需要分类,直接搜三个关键词,排最上的那几个里面肯定有它(当然还是会放一个地方的,毕竟总得放一个地方,看我最初找它或者写它是围绕哪个点来分类)
ungrown
2019-11-11 15:04:04 +08:00
@ankazen 内容本身就是最好的标签啊,只有当某个标签偏偏不在内容中的时候,我们才需要添加上去以备将来搜索
ungrown
2019-11-11 15:06:15 +08:00
@ankazen 就像你说的小姐姐,毕竟无法基于自然语言对视频内容进行搜索,所以才要加标签嘛。不过我来加的话,也就是写个同名的文本文件,甚至可以在那个文本文件的文件名里面直接 append 标签
ankazen
2019-11-11 15:09:37 +08:00
@ungrown 关键词和标签有很大区别,我自己记得标签可能有二三十个,包括类别,也包括,像待办,已完成,这样不会出现在内容中的词。内容里的词就多了去了。
标签就是把大量的内容或词映射到那么常用的二三十个关键词上。
ungrown
2019-11-11 15:21:09 +08:00
@ankazen 然而待办完成这样的标签,偏偏是典型的目录,完全可以用目录替代,而从一个目录拖到相邻目录所需要的操作和时间,搞不好比点击标签切换成另一个标签,还要少。
其实你不能过分拘泥于这种形式上的标签目录的区别,太多软件就是拘泥于此才没设计好。
要抓住本质,然后在符合本质的前提下,提升效率,而不是为了某个形式去设计。
笔记这个场景下,标签是个很好的工具,你看我哪怕不用,我也能理解标签存在的必要性,在笔记应用上。
但是到了文件系统或者文件管理,就不一样了,不是说这种情况下标签没有立足之地,而是它几乎无法设计成高效的体系。
你看,文本文件几乎不需要标签,可能会加少量标签。而真正必须要加标签的,恰恰是多媒体这类非文本非线性的文件。而给这类文件加标签,绝不是仅仅二三十个就能满足的。视个人需求,有的人只需要几个标签,当然这类人用目录分类就够了。有人则需要上百甚至更多的标签,这不奇怪,尤其是那些搞多媒体创作的,对音频、视频片段、图片都需要从多个维度同时进行标记,实际上这类人确实正在忍受着缺乏标签的痛苦,尽管他们平时使用的软件肯定都或多或少提供了贴标签或者加注释以及搜索的功能。
所以我说,标签系统,不是加上去了就能让大家开心了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/618320

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX