(更新)org-supertag 实现嵌套标签

PixPin_2025-02-05_09-12-24

由于 org-mode 规定了标签里不能使用 / 作为嵌套分隔符,所以使用了 _ 作为分隔符。

子标签可以复用父标签的 properties,也可以自定义属于自己的 properties。

2 个赞

我觉得这个嵌套标签应该好好规划一下,用“_”感觉容易和其它地方冲突, 后续想改会出现很麻烦的兼容性问题。用两个字符的一个标记可能更好一点。

1 个赞

两个字符的一个标记是指?

主要是 org-mode 的标签,除了 英文数字@#_ 这几种字符之外,其它的都不认

比如##,@@,@_ 之类的,两个字符比一个字符更不容易冲突

可以展开讲讲潜在的冲突情形吗?我想象不到…

其实我暂时也想象不到,只是觉得 “_” 太常见了,总觉得不太保险 :rofl:

应该还好,因为 org-mode 的标签是用两个冒号包裹了(:tag:),所以首先是识别冒号,然后再识别下划线,不会一开始就马上识别下划线,应该能避免冲突问题

好奇请问一下,是什么原因不考虑org mode自己的hierarchical tag syntax呢?

因为不同笔记,会位于不同的位置,而 org mode 自己的 hierarchical tag 必须要要求 heading 在同一个一级标题之下,非常不灵活…

org mode 设计的这套标签一开始不是为笔记服务的, 是为类似 GTD 这种任务管理服务的,以及当初的假设是,将所有的任务放在一个文件里管理,因此没有考虑 heading 在不同文件里的情况。

整体而言,正因为 org-supertag 是希望令 org-mode 的标签的使用体验,变得现代化,所以我考虑了之后,认为这是必要的增强。

因为,这并不影响 org mode 原有的 hierarchical tag 机制。

感谢解释!这么说感觉假如不计开发成本,完美方案还得是设计一套独立于org-mode tag的标签系统才能从根本上解决理念出发点不同的问题了😂

1 个赞

没必要啊,org-supertag 就是解决这个问题的,已经从根本上解决这个问题了,而且不影响传统 org 的标签的使用

理解了,有空研究下您的插件,感谢回复!