自打入坑黑曜石后,给我最大的困扰之一就是这个排序问题。为了实现自定义排序,我不知道用了多少个插件,而最终,基本都放弃了。
Custom File Explorer sorting
太原始了,而且添加文件非常麻烦,要一个文件夹一个文件夹的添加,还不能实时更新新文件,完全不是一个现代的处理方式
Manual Sorting
有非常奇怪的BUG,会导致左侧文件夹内出现奇怪的空白,而且纯手动排序也不是个很好的方案,太累了
Bartender新版
不像Manual Sorting有那个奇怪的BUG,但这个插件已被放弃,作者推荐改用Manual Sorting。而且这个插件本身也有问题,就是经常莫名其妙就不管用了,必须重启插件。延迟加载也没用。
其他解决方案
我尝试过用DataviewJS,虽然能实现按照笔记内的某个YAML属性进行排序,但问题是,它不能改变左侧文件夹内的排序,只能是手动在文件夹里创建一个索引文件,相当于用索引文件代替左侧的文件管理器,同样的问题,太原始了
还尝试了一个叫Front Matter Title的插件,老实说这个插件原本是让我眼前一亮的,他的两个功能,一是可以提取笔记YAML中的某个属性作为标题,实现自动的标题替换(但不修改实际的文件名,方便还原),二是可以根据这个属性来做排序。也就是说,完全可以利用YAML中的日期属性,让它进行排序。但这个插件也有问题,就是无法使用复杂模板,一用就失效。只能用简单模板,但因为它的排序强制捆绑标题属性,也就是说,你想让笔记按照日期排序的话,笔记标题只能强制变成日期了。那用纯日期作为标题的话,实际使用也是非常麻烦的,所以这个方案也作罢了。
现在我跟个无头苍蝇一样在插件社区乱找,实在是太难了,发个帖子问问大家。
我的诉求就非常简单:
让左侧文件管理器中的文件夹,可以手动排序(因为文件夹本身没有YAML属性可供调用,加上文件夹数量有限,手动排序的工作量不大,完全能够接受),文件夹中的笔记文件,可以按照一定的规律排序,这个规律最好是能够按照笔记中共有的某个YAML属性字段,比如日期来进行正序或者倒序排列,并且这个属性名得支持中文属性。
如果大家知道什么插件能实现这个的话,希望能提供一下线索,非常感谢!
对了,我为什么不愿意用数字来排序,因为文件夹这样还凑活,数量少,轻易不变,但笔记本身的话,数量太多,而且你手动加数字这种方式,原始落后还不方便维护,试想回头你想改顺序的时候怎么改,改了一个数字,后面数字全要改,真是爆炸的工作量。