Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

标签支持绑定文档、创建标签文档,带有该标签的块汇总在该文档的反链面板 #11025

Open
TCOTC opened this issue Apr 13, 2024 · 33 comments

Comments

@TCOTC
Copy link
Contributor

TCOTC commented Apr 13, 2024

In what scenarios do you need this feature?

daily note 用的传递型双链需要引用一个独立的文档,这意味着每个主题都要新建一个文档。

这种工作用标签来实现更好,打标签不需要先有一个文档,更加灵活。

让标签随时可以变成一个文档/绑定一个文档

Describe the candidate solution 方案二(TL;DR ?)

把标签树变成文档树那样有点复杂

如果退而求其次,只需要先实现三点就基本够用了:

  • 标签支持手动绑定文档(称为标签文档)

    • 单个标签可以绑定单个文档,单个文档可以绑定多个标签

  • 点击标签(包括标签树和编辑器中的标签)会打开标签文档(而不是搜索)

  • 带有该标签的块/文档汇总在标签文档的反链面板

Describe the optimal solution 方案一

将标签升级为标签文档,所有标签都作为对标签文档的引用,使得在标签文档中能通过反链汇总内容。


  • 创建标签时不自动创建标签文档,可以在标签树上手动创建标签文档(在标签树创建的标签文档仅能在标签树上点击打开)
  • 标签还是标签(#标签/子标签#),但如果该标签绑定了文档,点击标签后的行为就从搜索标签变成打开标签文档 (仍然可以切换为搜索)
  • 标签文档和普通文档一样可以编辑内容
  • 标签文档的反链面板会汇总所有被打了标签的内容块

  • 在标签树中创建的文档不显示在文档树中
  • 标签文档可以「移动」到文档树,该文档自动绑定该标签,点击标签时会打开该文档
  • 未绑定文档的标签可以绑定文档树上的某一个文档
  • 单个标签可以绑定单个文档,单个文档可以绑定多个标签
  • 标签文档可以解绑标签,但必须先移动到文档树上
  • 标签文档被删除后标签自动解绑,之后可以重新创建或绑定

  • 删除标签时,如果该标签绑定了标签文档:
    • 如果标签文档在文档树上 → 删除标签、标签文档解绑该标签
    • 如果标签文档在标签树上 → 删除标签时可以指定将标签文档移动到某个路径,也可以同时删除标签和标签文档

Other information

作为 #10919 的后继

双向链接时代的快速无压记录 - 语雀

@TCOTC TCOTC changed the title 将标签升级为标签文档,所有标签都作为对标签文档的引用,使得在标签文档中能通过反链汇总内容 标签支持绑定文档、创建标签文档,带有该标签的块汇总在该文档的反链面板 Apr 13, 2024
@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

打标签不需要先创建文档,可以之后再创建文档绑定标签,这是最重要的

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

#11026 至少实现一个

@LoneFireBlossom
Copy link

我是觉得传递型双链必须要建一个文档非常麻烦,要是能用标签来传递就好了。
我个人是希望标签能用来汇总,而不只是搜索。

换个思路。让反链面板(思源增强插件)支持通过标签筛选呢?
image

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

让反链面板(思源增强插件)支持通过标签筛选

这个还是要先有块引。某种程度上我是要用标签代替块引

@LoneFireBlossom
Copy link

让反链面板(思源增强插件)支持通过标签筛选

这个还是要先有块引。某种程度上我是要用标签代替块引

那你要不举个实际使用场景帮忙理解?

@UFDXD
Copy link

UFDXD commented Apr 13, 2024

感觉 麻烦了。

@LoneFireBlossom
Copy link

LoneFireBlossom commented Apr 13, 2024

#10919 (comment)

那你这个用sql筛选能解决吗?我对obsidian比较熟悉,用标签筛选这个dataview完全能做到。sql应该也能做到吧,筛选出含某些双链&标签的块。

SQL 做不了,只能通过文档的反链面板实现(反链可以直接编辑块、拖拽块)

我觉得你说的这个,实际需求是让嵌入块可以直接编辑啊,解决了这个你的问题就彻底解决了。这个在之前的issue里D大有提过,我有印象,就是我记得艾特了V姐,说“再试试看看嵌入块直接编辑能不能实现”, #9874

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

#10919 (comment)

那你这个用sql筛选能解决吗?我对obsidian比较熟悉,用标签筛选这个dataview完全能做到。sql应该也能做到吧,筛选出含某些双链&标签的块。

SQL 做不了,只能通过文档的反链面板实现(反链可以直接编辑块、拖拽块)

我觉得你说的这个,实际需求是让嵌入块可以直接编辑啊,解决了这个你的问题就彻底解决了。这个在之前的issue里D大有提过,我有印象,就是我记得艾特了V姐,说“再试试看看嵌入块直接编辑能不能实现”, #9874

因为实现不了才需要用其他方式。

而且直接用反链面板的话也方便,不用写 SQL

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

让反链面板(思源增强插件)支持通过标签筛选

这个还是要先有块引。某种程度上我是要用标签代替块引

那你要不举个实际使用场景帮忙理解?

这样:

image

@LoneFireBlossom
Copy link

LoneFireBlossom commented Apr 13, 2024

让反链面板(思源增强插件)支持通过标签筛选

这个还是要先有块引。某种程度上我是要用标签代替块引

那你要不举个实际使用场景帮忙理解?

这样:

image

我理解的意思是,双链块引可以实现你需要的功能,但是你不喜欢块引必须指向一个存在的文档,如果不存在就得新建?嫌弃文档树整理起来麻烦?
为什么不想给心理学新建一个文档呢……

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

我理解的意思是,双链块引可以实现你需要的功能,但是你不喜欢块引必须指向一个存在的文档,如果不存在就得新建?嫌弃文档树整理起来麻烦?

就是每次传递的时候都要先找找看有没有刚好对上主题的文档,搜索半天没找到合适的文档就要新建一个,如果用标签的话就可以直接打标签。不用在意标签起什么名,因为合并标签比转移引用方便得多。

找块引和打标签的效率差太多了。

为什么不想给心理学新建一个文档呢……

这只是个例子,实际情况要复杂得多(比如:#心理学/某领域/某研究# 这种)

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

双链块引可以实现你需要的功能

而且是因为只有双链块引能实现传递才不得不用这么麻烦的方式,所以我想让标签也能实现传递。

@LoneFireBlossom
Copy link

LoneFireBlossom commented Apr 13, 2024

为什么不想给心理学新建一个文档呢……

这只是个例子,实际情况要复杂得多

所以我说的就是“举一个实际使用场景啊”😂 #11025 (comment)

就是每次传递的时候都要先找找看有没有刚好对上主题的文档,搜索半天没找到合适的文档就要新建一个,如果用标签的话就可以直接打标签。不用在意标签起什么名,因为合并标签比转移引用方便得多。

比如你说的这个痛点,我基于你的举的例子就想象不出来到底为啥会很难找到合适的文档。心理学有啥难找的呢
如果标签很多很多的话,不也很难找到么。
如果降低转移引用的麻烦程度是不是也能解决你的问题?

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

所以我说的就是“举一个实际使用场景啊”

等我想一下有没有能一看就懂的例子

如果降低转移引用的麻烦程度是不是也能解决你的问题?

应该不行,标签的话我看标签树就能知道我打了哪些标签,块引的话根本不知道哪些文档有用于传递的块引(因为块引不是专用于 daily note 传递的)

如果标签很多很多的话,不也很难找到么。

不需要找,直接打标签,后期再合并表示同一概念的标签(但表示同一概念的文档就很难找到了,毕竟散落在文档树里的各种地方。文档的量级比标签大得多)

而且整理标签是很容易的,只用重命名;整理文档就很麻烦了,要转移引用、移动位置、重命名、删除不需要的文档,很繁琐

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

@LoneFireBlossom 想到两个例子:

  • 想把笔记传递到「行业」这个专题,但不记得有没有专门的文档用来记录「行业」这个专题,就要搜索看看有没有(有这时间已经能打好几个标签了),没有的话就要创建一个文档。用标签的话就可以直接打上去,等有空的时候再到标签树上合并标签
    image

  • 突然想起了「捉主要矛盾的主要方面」,但想不起来是在哪里出现的,用块引的话要么引用到「临时」这个文档,要么新建一个叫「捉主要矛盾的主要方面」的文档,之后想起来了还要找到文档编辑;如果使用标签的话就可以创建一个 #临时/捉主要矛盾的主要方面# 的标签,之后整理标签树的时候想起来了就直接在标签树上重命名为 #毛选/矛盾论/捉主要矛盾的主要方面#,不需要找到那个块去编辑
    image

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

还有个问题是,标签是显示多级的,可以一级级筛选,而文档只能显示文档名

比如想关联到某个人,但名字想不起来了,就可以直接筛选人名:

image

@LoneFireBlossom
Copy link

@LoneFireBlossom 想到两个例子:

  • 想把笔记传递到「行业」这个专题,但不记得有没有专门的文档用来记录「行业」这个专题,就要搜索看看有没有(有这时间已经能打好几个标签了),没有的话就要创建一个文档。用标签的话就可以直接打上去,等有空的时候再到标签树上合并标签
    image
  • 突然想起了「捉主要矛盾的主要方面」,但想不起来是在哪里出现的,用块引的话要么引用到「临时」这个文档,要么新建一个叫「捉主要矛盾的主要方面」的文档,之后想起来了还要找到文档编辑;如果使用标签的话就可以创建一个 #临时/捉主要矛盾的主要方面# 的标签,之后整理标签树的时候想起来了就直接在标签树上重命名为 #毛选/矛盾论/捉主要矛盾的主要方面#,不需要找到那个块去编辑
    image

第一个例子里面“想把笔记传递到「行业」这个专题”是什么意思,按我的理解不就是直接链接到[[行业]]吗

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 13, 2024

第一个例子里面“想把笔记传递到「行业」这个专题”是什么意思,按我的理解不就是直接链接到[[行业]]吗

用来记录「行业」这个专题的文档名称可能叫:

  • 如何研究一个行业?
  • 【专题】行业研究
  • 调研行业的方式
  • 行业与就业选择

块引搜素的时候必须要认真分辨才行

并不一定就只有「行业」两个字,因为文档名太短是不利于平时搜索的

标签的话就不需要这样了

@hdg8087
Copy link

hdg8087 commented Apr 13, 2024

可以参考印象笔记的标签。印象笔记的标签十几年来,一直是最好的。虽然印象笔记本身已经跟不上时代了。

@Reader2024
Copy link

Reader2024 commented Apr 15, 2024

这个提议我支持。而且我觉得这些难做的话都可以延后,至少先把标签树上的搜索做出来。否则标签一多定位都是难题。

但是标签嵌套的用法,也是有一点问题的。

  • 比如“梅西”
  • 可以写成足球/俱乐部/西班牙足球甲级联赛-西甲/巴塞罗那-巴萨/梅西
  • 也可以写成足球/荣誉/金球奖/梅西
  • 又可以写成体坛/荣誉/劳伦斯世界体育奖/梅西
  • 还可以写成足球/国家队/阿根廷/梅西
    • 同时阿根廷又能写成地球村/旅游计划/阿根廷Steam账号/阿根廷
  • 而上面的所有标签,和#梅西#,#阿根廷#又是不同的。

当我们在引用的时候,要引用哪个,只怕也会头秃。从我在多个笔记群的观察来看,其实都不推荐用嵌套的方式,而是组合式的方式

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 15, 2024

针对嵌套的标签用法,issue 补充一条:

  • 单个标签可以绑定单个文档,单个文档可以绑定多个标签

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 15, 2024

至少先把标签树上的搜索做出来。否则标签一多定位都是难题。

确实标签一多起来就是灾难

@5kyfkr
Copy link

5kyfkr commented Apr 15, 2024

方案二挺好的,改动不大实现的效果也够用,方案二+支持标签搜索我觉得就能解决大部分需求了

@LoneFireBlossom
Copy link

LoneFireBlossom commented Apr 15, 2024

使用场景是这样描述的。

In what scenarios do you need this feature?

daily note 用的传递型双链需要引用一个独立的文档,这意味着每个主题都要新建一个文档。

这种工作用标签来实现更好,打标签不需要先有一个文档,更加灵活。

让标签随时可以变成一个文档/绑定一个文档

提议:
实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?
并且:

  1. 通过搜索、关系图等方式是否能查看这种页面可以作为开关选项
  2. 可以选择将这种新建的空白页面自动作为双链添加到一个指定页面中,如果页面里有内容了则自动删除该行,解决汇总查看的问题。

之所以回溯到原点是因为上面的例子我之前看的太久还是没看懂,好像想说点什么又想不出要说什么,无从下手,所以先写了一个提案。

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 15, 2024

实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?

我还是想直接用标签,靠文档树实现多级标签很困难,而且文档很不好整理

@LoneFireBlossom
Copy link

实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?

我还是想直接用标签,靠文档树实现多级标签很困难,而且很不好整理

我同意楼上的观点,标签尽量别分多级,真的很头疼,还是用组合吧。“组合优于继承”,前几天还和VV又讨论了一次。
最好是能有“快速输入常用组合”的功能,VV说打算做

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 15, 2024

实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?

我还是想直接用标签,靠文档树实现多级标签很困难,而且很不好整理

我同意楼上的观点,标签尽量别分多级,真的很头疼,还是用组合吧。“组合优于继承”,前几天还和VV又讨论了一次。 最好是能有“快速输入常用组合”的功能,VV说打算做

我是用多级标签来管理标签的。以前几百个标签平铺在那里是根本找不到(刚看了一下,我 flomo 里有 550 个标签),然后才重构成多级的标签(跟文档树的多级文档是一个道理)

比如,打标签的时候输入 #知识管理 就可以筛选出 #知识管理 的所有下级标签,输入 #via 就可以筛选出所有的人物

@LoneFireBlossom
Copy link

实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?

我还是想直接用标签,靠文档树实现多级标签很困难,而且很不好整理

我同意楼上的观点,标签尽量别分多级,真的很头疼,还是用组合吧。“组合优于继承”,前几天还和VV又讨论了一次。 最好是能有“快速输入常用组合”的功能,VV说打算做

我是用多级标签来管理标签的。以前几百个标签平铺在那里是根本找不到(刚看了一下,我 flomo 里有 550 个标签),然后才重构成多级的标签(跟文档树的多级文档是一个道理)

比如,打标签的时候输入 #知识管理 就可以筛选出 #知识管理 的所有下级标签,输入 #via 就可以筛选出所有的人物

那分类带来的问题你是怎么处理的呢(也就是楼上的举的例子)

@LoneFireBlossom
Copy link

实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?

我还是想直接用标签,靠文档树实现多级标签很困难,而且很不好整理

我同意楼上的观点,标签尽量别分多级,真的很头疼,还是用组合吧。“组合优于继承”,前几天还和VV又讨论了一次。 最好是能有“快速输入常用组合”的功能,VV说打算做

我是用多级标签来管理标签的。以前几百个标签平铺在那里是根本找不到(刚看了一下,我 flomo 里有 550 个标签),然后才重构成多级的标签(跟文档树的多级文档是一个道理)

比如,打标签的时候输入 #知识管理 就可以筛选出 #知识管理 的所有下级标签,输入 #via 就可以筛选出所有的人物

不需要非得是属于下级,只要能记住输入组合,让输入#知识管理 的时候能有相应输入提示即可满足需求,也就是让软件记住有哪些组合

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 15, 2024

那分类带来的问题你是怎么处理的呢(也就是楼上的举的例子)

但是标签嵌套的用法,也是有一点问题的。

  • 比如“梅西”

  • 可以写成足球/俱乐部/西班牙足球甲级联赛-西甲/巴塞罗那-巴萨/梅西

  • 也可以写成足球/荣誉/金球奖/梅西

  • 又可以写成体坛/荣誉/劳伦斯世界体育奖/梅西

  • 还可以写成足球/国家队/阿根廷/梅西

    • 同时阿根廷又能写成地球村/旅游计划/阿根廷Steam账号/阿根廷
  • 而上面的所有标签,和#梅西#,#阿根廷#又是不同的。

说实话我感觉应该没人会这样打标签...如果是我的话,标签大概率只是:#via/梅西# #体育/足球/阿根廷#

我只打我关心的标签,不会什么都创建一个标签

@TCOTC
Copy link
Contributor Author

TCOTC commented Apr 15, 2024

实现一个插件,在文档树上隐藏所有完全空白的页面,如果页面里有内容了就显示出来,是否可以满足需求?

我还是想直接用标签,靠文档树实现多级标签很困难,而且很不好整理

我同意楼上的观点,标签尽量别分多级,真的很头疼,还是用组合吧。“组合优于继承”,前几天还和VV又讨论了一次。 最好是能有“快速输入常用组合”的功能,VV说打算做

我是用多级标签来管理标签的。以前几百个标签平铺在那里是根本找不到(刚看了一下,我 flomo 里有 550 个标签),然后才重构成多级的标签(跟文档树的多级文档是一个道理)
比如,打标签的时候输入 #知识管理 就可以筛选出 #知识管理 的所有下级标签,输入 #via 就可以筛选出所有的人物

不需要非得是属于下级,只要能记住输入组合,让输入#知识管理 的时候能有相应输入提示即可满足需求,也就是让软件记住有哪些组合

所以用标签就刚刚好,多级标签只是辅助打标签时筛选,并且让找标签方便一点

@hualr
Copy link

hualr commented Apr 17, 2024

是啊 我没感觉块链的优点 说实话我都不怎么用双链!

@zongqir
Copy link

zongqir commented Apr 20, 2024

标签功能和书签功能感觉就没完全开发出来
其实书签也是一个非常好的功能!!!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants