关于笔记编码的建立,以及如何方便后续的检索、组合的一些问题

各位大佬,就是我想对OB中的笔记进行个分类编码,根据不同的大类建立不同的编码,为了方便计算机检索,因为我不是计算机专业的,想先建立编码规则,以后再学一门语言,进行高阶操作。举个例子,我设置了这样一个编码(引号里的内容)

“TH122-62_a_同步带尺寸选择_20230422174954 ”

对于此编码,“_”是作为不同层级编码的分隔号。

“TH122-62”是一级编码,采用中图法,TH122是机械设计,-62是总论复分表中代表的手册、名录、指南、一览表,年表分类号的意思,分配一文件夹。

“a”是二级编码,代表机械设计此大类下的分类,即同步带相关内容,且是卢曼编码,会有b作为a的同济分类,以及a1作为a的分支分类。

“同步带尺寸选择”是三级编码,是此篇笔记的名称,采用汉字,介绍这篇笔记讲的是什么,每篇笔记的名称字数长短都会不同。

“20230422174954”是四级编码,是创建笔记的时间戳,作为此篇笔记的唯一编码,如果发生了主题名称改变,失去的相关的链接关系,或者时间戳统计不同时间内,所做的哪些事情,比如汇总2月份的学习情况,进行总结反思,以及根据创立时间、艾宾浩斯曲线,创建复习计划。

这个是我根据@Shao Sen写的这篇文章,确立的编码。https://c94n0azlfu.feishu.cn/docs/doccnjKu95LMGcjN7ikEsGgosDe#

对于以上,我有以下疑问

1.对于编码的分隔号使用。

我本来是用的-,中图法中用-作为复分表连接符,因此我不能使用“TH122-62-a-同步带尺寸选择-20230422174954 ”这样子全是-连接的编码,是不利于计算机进行检索等功能,且容易发生混淆。中图法使用的标点有这些,


再加上win中文件名不能使用的字符有“\ / : * ? " < > | ”。
所以我打算采用非中图法所用的符号如“_”、“~”。
对于此点,我的问题有两个。

(1)对于“_”、“~”这两个符号,是否有利于编程进行检索等功能,在一些编程语言中,是否有其他特殊的功能?采取哪个更优?

(2)考虑到键盘输入的问题,“”、“~”、“-”三者中,还是“-”输入最方便,因此我想在我的知识库里,交换“-”和“~”的功能?也就是“~”作为中图法中的代表复分表连接符号的功能、“-”取代“”作为不同层级编码的分隔号?但之后想我的知识库和一些图书馆的数据库进行一些数据交互操作,两者的编码含义不同,是否会影响一些数据交互?

2.关于每级编码的位数问题,是否要统一长度?

由于中图法中,每种分类的所占字符数不同,由于长度不同,对于后续编程,如进行MOC汇总,数据统计是否有影响?
因为我知道每级编码的位数相同,是有利于编程的,我是否要建立位数的统一对齐,比如两个一级编码,一个是“TH122-62”,代表“机械设计手册”大类内容,“S123”,代表“光在农学上的应用”,当然还有更长的分类号,为了利于检索,我将一级编码扩充为10位,“TH122-62”变为“TH122-62@@”,“S123”变为“S123@@@@@@”,@只是起补位作用,也可以用其他符号代替,是否有这个补位必要呢?

3.关于时间戳的位置

由第二点提及到的问题延伸,也就是每级编码位数要保持一致,那么时间戳的位置必须要放在主题名的前面。像这样子排序,“TH122-62_a_20230422174954_同步带尺寸选择”,但因为我不想主题名称太放后面,编码实在长,后续不利于文件夹中阅读查找。

还有你可能会问,为什么不这样子排序“同步带尺寸选择_TH122-62_a_20230422174954”,这样给更好阅读,当然因为依照卢曼编码发挥文件加中文件排序的功能的缘故,“TH122-62_a_主题名1-20230422174954”、“TH122-62_a1_主题名2-20230422174954”、“TH122-62_b_主题名3-20230422174954”,比如,这三个文件夹放在文件夹中,这样子的话会依次排序,同类相近的笔记会摆放在一起。

整那么多的花里胡哨做什么, yaml区加个tag搞定的事情.

yaml不行,很多md编辑器不支持yaml,如果哪天OB不能用了就完蛋了,而且后续要编程检索很费劲

即便不支持yaml又不代表yaml区的数据不可读,又不妨碍你搜索到它。甚至你不用yaml也一样能加tag,你要不要说很多markdown编辑器也不支持tag啊?

我觉得你没弄懂我说的话,我都说了,如果以后OB不更新了,建立的标签全都完蛋。你说的这些,我都考虑过了,后续编程,要生成moc、进行总结汇总都不方便,还要读取文件内容,增加搜索时间,后续等笔记数量上万的时候,生成个MOC都要半天。

就算ob的开发者挂了,ob的本地文件又不会消失,ob这个应用又不会失效打不开,你安装的插件该用用,甚至转移到logseq也可以,要是还担心logseq挂了,logseq开源的,你自己接着开发都行。不要还没开始就担心结束。

1 个赞

下划线 _ 作为文件名称的一部分在常见的操作系统上都没问题,
iOS 安卓 windows Linux等;

搜索时也没什么影响,
可直接搜索 _ ,_ 符号在正则表达式中也并不会引起冲突。

兼容性好得很,请放心使用。

我也有个疑问:

为什么不直接使用

机械设计_62_a类_同步带尺寸选择_20230422174954
这样的文字明文编码,

而要使用

TH122-62_a

这样的咋一看根本看不懂的编码方式呢?

这个是中图法,T是工业类,TH是工业下的机械类,TH12是机械类下的,机械设计、计算与制图类,TH122是机械设计,-62是总论复分表,代表手册、名录之类的。

看不太懂的原因是因为这玩意一般图书管理员用得上,需要把那本厚厚的指南读一遍。

我不是所有的笔记都要这么干的,是对于我目前研究的一些重要课题,进行分类,建立层级结构,所以不必担心花时间,而且是后期笔记累计到一定程度,需要建立关系才开始建立编码分类。

采用中图法的原因,国外的杜威法也行,是要规范自己的命名,以及参考前人的分类方式。
因为我的话就存在一个问题,就是同一个东西,我隔一天起名就不一样了,拿TH126举例,我写机械制图,隔天工程制图,隔天我就写了工图,虽然这三个对我来说是一个东西,但对于计算机不是。方便计算机识别,因为是代码的关系,中图法本身就有层级关系。并且我自己建立的分类就存在分类不合理的情况,倒不如拾人牙慧,且对一门新的学科,我完全不了解,不如用前人的经验。


20230423203235206
20230422123701494

1 个赞

谢谢,请问您对2.关于每级编码的位数问题,是否要统一长度?3.关于时间戳的位置,有什么高见吗

所以我打算采用非中图法所用的符号如“_”、“~

同意楼上说的, 下划线对搜索良好,
但注意, 不少markdown工具对 aa_bbb_ccbbb 的解释是不一样的, 这段文本贴在正文里, 楼主需要试试 Ob编辑/Ob预览/其他常见软件 呈现效果能否接受, 有些软件会把中间变斜体


每级编码的位数问题,是否要统一长度

我理解没必要, 非等宽字体下, 其实对齐位数了也会显示成一坨, 中英混排更乱
另外这个 @ 会阻碍检索


关于时间戳的位置

首先时间戳该不该搁文件名里是需要讨论的,
这里先认为该搁文件名里, 那么通常是放最后吧, 顺便当笔记版本用


最后, 一些我目前的理解:

做笔记首先对人优化, 先要看起来直观, 其次才是对机器和搜索优化

文件名承载的信息有限, 不可能把我们关心的 “所有重要信息” 全编码进去
替代方案: YAML FrontMatter 是存元数据的好位置, 直接写相关段落里也行, 对段落标 tag 自然也属于笔记, 这蕴含了更具体的信息

管图书和管知识其实很不一样
中图法 / 杜威法都是图书分类方案, 维基可能是比较好的知识记录方案
但我也尊重楼主的选择

简单说下好了。

首先中图分类号没必要非得在标题中,使用文件夹或者在yaml中一样可以起到汇总知识的作用。另外也不影响通过编程统计数据。这样也就不会有特殊符号的限制问题了。在这种情况下,补不补位问题也就不大了,因为其已经成为了独立的信息,不再需要拆分。

其次,“卢曼编号”在这种情境下价值可能不会很大,其实完全可以使用更细的中图类目来替代。如果中图没有更细的类目,此时你的“卢曼编号”也就是在建立一个更细分的类目。这又可以通过上面说的方法进行管理。

第三,时间戳也可以放在yaml中。你对时间戳本质就两个需求。一是方便统计,二是防止链接丢失。在第一个需求上,放在yaml中现在直接就会有现成的插件(dataview)帮你统计,记忆曲线插件也不会用你标题中的时间。哪怕自己写程序,放在yaml里也不是什么问题。在第二个需求,其实现在obsidian会自动全局更新链接,完全不用担心链接丢失。再退一步,假设ob不更新了,这种也是凭借全局正则替换就能轻松做到的事情。再再退一步,其实用文字也能简单做到不重名。不过这点凭你自己喜好吧,我个人不太推荐把时间戳放入标题,降低可读性。

最后建议一句吧,既然都研究中图法了,其实可以多研究一点点。多研究一些你就会发现,其实很多“管理方法”是没必要做的,直接照抄前人结果就好了。

1 个赞

请问您说的维基具体指的是什么,能否指个详细介绍的链接,是指的wiki链接吗?
还有就是您不用下划线_作为分隔符,该用空格是否可以呢?

您说的多研究一点,指的是不采用中图法,改用yaml等管理吗,yaml我也有用,用于添加一些副标题,交叉分类号之类的

中图法实际是信息组织学中的一种方法。其他的方法还有主题法等等。对信息组织学有更深入的了解以后,其实你就很容易根据现有的功能设计出一个自己的简单高效的组织方法。

请问能否推荐关于信息组织学的教材、教程?我在读秀找到了这几本书,能否推荐下



信息组织,周宁,2017。

分类法主题法导论,曹树金,2000

看这个吧

好的,非常感谢您

就是各种维基百科啊, 哪都有

我自己用空格, 但我不是你这种编号标题

我遇见的空格标题的坑:

  • 转出网页时, 空格不是合法的 url 字符, 会被转为 %20
  • 中英混排时两侧加不加空格的人都有, 对精确搜索有一点干扰
  • 如果附件存放路径跟标题有关, 则附件路径会传染这个空格, 有时会麻烦 (能解决但毕竟麻烦点)

其他没啥大问题, 楼主可以批判参考