关于Obsidian文件排序逻辑问题

遇到的问题

版本环境

V1.5.8 in window11

前提条件:

本人使用Obsidian进行学习笔记,在使用双链和索引的情况下,希望使用左侧的文件列表作为辅助,因此将学习笔记按照"0A-数学分析-079-多元微分"的格式进行命名,希望能排序

遇到问题:

在制作同为第七章的"0A-数学分析-0710-隐函数"笔记时

我为了保持序号为3位数,选择"0A-数学分析-07A-"作为前缀,希望按照ASCII排序,以A代表11

本以为会要么在"0A-数学分析-071"之前,或者"0A-数学分析-079-"之后,

不曾想被排在了"0A-数学分析-011-"之前

虽然重新改变编码并不麻烦,但这事引起了我的好奇

提出问题

  1. 为什么OB会把它排在这里?(个人猜想按数字大小?)
  2. 我想在不改变"07"的情况下实现“079”的后继,该如何命名?

这个特性叫 “自然排序” (不严格按字典序, 而是把数字部分按照数字大小排序)

不仅 Ob 如此, 其他很多地方比如 Windows 文件管理器, 默认也这么干的

搜了下, 在 2020 年, Ob 也把自己的文件排序弄成了 “自然排序”

于是就变成这样了…

1 个赞

想在不改变"07"的情况下实现“079”的后继,该如何命名?

我理解在自然排序下, 做不到, 它必然按照十进制转换数字部分

所以只有这几个办法:

  • -079- => -07-9- 同时 -07A- => -07-A- 当然这已经改编码规则
  • obsidian-custom-sort 插件, 或者类似别的什么插件 见讨论 好多人都不喜欢这个自然排序

附: 利用 obsidian-custom-sort 改回字典排序, 应该是类似这样子配置:

---
sorting-spec: |
  order-asc: true a-z
---
1 个赞