希望取消闪卡的卡包,因为文档树就是天然的卡包

本贴最后更新于 644 天前,其中的信息可能已经时移俗易

目前 2.6.3 的制卡逻辑是这样的:

Step 1. 在文档中选中文字并标记(挖空);

Step 2. 点击左侧的段落图标 -> 闪卡;

Step3. 将该段落加入某一卡包;

以上流程有这样几个缺点:① 分散用户精力,本来用户只需要专注于制卡本身,而上述机制会让用户纠结把卡放入哪个卡包。② 制卡过程繁琐,选中文字并标记(挖空)其实就已经完成制卡了,没必要再多一个选择卡包的过程。③ 上述机制中一旦用户想变更整篇文章的卡包,就要手动地一个一个修改。④ 无法直观地看出某张卡片属于哪个卡包,必须通过上述的第二个步骤才能看出。

而取消卡包后,一切将变得很自然。比如某用户的文档树结构如下:

  • 数学
    • 分析
      • 数学分析
      • 实分析
      • 复分析
      • 泛函分析
    • 代数
      • 高等代数
      • 抽象代数
    • 几何
      • 解析几何
      • 微分几何
  • 历史
    • 中国史
      • 唐史
      • 宋史
      • 元史
      • 明史
    • 世界史
      • 欧洲史
      • 阿拉伯史
      • 美国史
      • 日本史

而上述结构就是天然的卡包,用户完成挖空后,不需要再去选择该卡片属于哪一个卡包。现代化的间隔重复笔记软件 RemNote 就是这样的使用逻辑。

举个例子,比如在《高等代数》这篇文档里面有一个段落是行列式的定义,在此处完成选中文字并标记后,这张卡片很自然地属于 高等代数代数数学 这 3 个卡包,无需用户再去选择,并且在复习卡片时,不管用户想复习所有数学知识,还是只想复习高等代数的知识,都会复习到这张卡片。


为了方便描述,我将用 RemNote 进行视频( BV1VW4y1378n )演示,来看看 RemNote 是如何解决卡片多分类问题以及 DailyNote 卡片分类问题的。

视频演示:RemNote 之 DailyNote 制卡

RemNote 这款软件也是支持 DailyNote 功能的。从视频中可以看出,针对 DailyNote 爱好者,RemNote 也是提供了很优雅的卡片(多)分类解决方案。


为什么我坚持采用文档树即卡包的分类方案?因为对于文件夹爱好者,同一篇文章的卡片很自然地就应该属于同一分类,而重复进行前文中提到的 Step2 和 Step3 是毫无意义的,这一过程让人抓狂。

关于纯粹的 DailyNote 用户,我提几点疑问。既然纯粹的 DailyNote 用户在记笔记时不喜欢分类,为什么到了制卡的时候,突然就要分类了?既然最终还是有分类的需求,为什么不能在制卡之前就完成分类呢?我理解,为了减轻记录的压力,所以不分类,但知识总是需要消化吸收的,早晚还是要对部分有价值的知识进行分类整理。我提出的“文档树即卡包”的方案只不过是让你们把对卡片的分类换种方式提前一步进行而已,并没有给你们添堵。


我又考虑了一下,可以采用一种妥协的方案,使 DailyNote 用户和文件夹用户都满意,从而避免争论。

那就是提供 2 个不同的闪卡复习入口。

第一个入口就是现有方案,通过左上角闪卡图标进入。

第二个入口就是,像 RemNote 一样,在文档树的位置右键。

这样一来,DailyNote 用户无需改变现有的习惯(虽然我不是很赞同这一习惯);而文件夹用户也能实现无感分类了。


借着这个机会,我顺便把 RemNote 的优势介绍了,供开发者参考,也给大家做一个科普。

在 RemNote 中,一篇文档就是一个卡包。当然,这里并不是真正的为这篇文档创建了一个卡包,而是通过类似于查询语句的方式得到了这篇文档(及其子文档)中的所有卡片,在用户看来感觉就像是一个卡包一样。一张卡片,不仅属于当前文档的卡包,同时属于它的父文档的卡包以及祖先文档的卡包。比如“行列式的定义”这张卡片不仅属于“高等代数”卡包,同时属于“代数”、“数学”这两个卡包。思源笔记比起 obsidian、logseq 来说拥有完美的文档树,如果这一优势不被闪卡功能好好利用的话,其实是相当可惜的。

有了一篇文档就是一个卡包这一基础,进一步 RemNote 就可以实现一个标签就是一个卡包,可以简单理解为 RemNote 自动为每个标签都创建了一个页面,所有打上了这个标签的块都嵌入到了这个页面内。思源笔记的标签系统还能形成标签树,如果利用好的话也能成为独特的优势。在早些时候的讨论中我就提到过,标签是实现 DailyNote 卡片分类的一种解决方案,具体操作可以看这个视频( BV13A411o7yK):

视频:RemNote 标签制卡展示

更进一步,RemNote 甚至可以实现自由组合卡包。RemNote 提供了一个功能叫做 Search Portal,可以在文档中插入一个搜索块,将带有某一标签、某一关键字的块嵌入进来。借助 Search Portal,用户可以实现自由组合卡包,比如可以将不同标签的块、含有特定关键字的块、嵌入块放进同一篇文档中,这样就得到了一个组合卡包。思源笔记中也有类似的功能,那就是 sql 语句查询,如果利用起来的话,也可以实现类似效果,甚至更个性化的效果。具体操作看下面这个视频( BV1X84y1h7bK):

视频:RemNote 自由组合卡包演示

是否支持取消卡包,改用文档树即卡包的形式?

单选 公开 永不结束 40 票
支持
67% 27 票
不支持
32% 13 票

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    22746 引用 • 91306 回帖 • 2 关注

相关帖子

优质回帖
  • zxhd86 2 赞同

    看了楼上 @pipa 的发言,我才意识到思源的用法确实不是只有使用文件夹的方式,而我在日常生活中明明没有怎么建立分类的文件夹,在讨论问题时却忘了,这确实挺好笑的。

    那么最大的问题就是:思源不是 RemNote,思源的使用者并不会像 RemNote 的使用者一样使用思源,照搬 RemNote 的闪卡机制对思源是没有意义的。

    之前体验过一段 RemNote 的我不得不承认,RemNote 的制卡效果在各个方面都优于思源,但是考虑到思源的用户实际上分别实践着 daily note 和文件夹分类以及其他奇奇怪怪的笔记用法,照搬 RemNote 的效果只能方便到文件夹分类的用户,这实际上是不公平的。

    而思源的魅力之一不就是不限制你记笔记的方式吗?大纲笔记可以,daily 可以,用文件夹分类也可以……考虑到不限制用户的目的,我收回前言,认为还是目前的制卡方式最合适,只不过需要稍微改进一下,如可以设置个快捷键和默认制卡卡包之类的。

  • openAI 1 赞同

    改进效果是巨大的,因为当前的制卡体验真的很不好,就像我上面总结的,需要 3 个步骤。这么说吧,我是建议思源引入间隔重复功能的用户之一,但如果是现在这样的制卡逻辑的话,我是不想使用的;换句话说就是,真正需要这个功能的用户不太想使用当前这一功能。

  • i1356 1 赞同

    应该是自动生成跟文档树一样结构的卡包吧

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • teacherQ 2 评论

    看了老哥给的视频演示,如果存在标签制卡的可能,那么我觉得 dailynote 用户按文件树来分,影响也不大,主要一个问题,思源得为我们这此 dailynote 用户提供一个闪卡入口,让我们用标签来进行分类的复习,毕竟 dailynote 用户是不会去大量的点击文档树这个东西的。最后还是提醒下思源的开发,如果做,就早点下决心,我已经习惯的操作又给我改是真的想骂人的。

    看我最新的回复,又更新了一个视频。RemNote 甚至可以做到自由组合卡包。
    openAI
    是的,要早点下决心。因为现在闪卡这个功能还没出来多久,所以有什么建议我想着赶紧提了,越拖到后面越难改进。
    openAI
  • 其他回帖
  • Bard 1 评论

    这个没什么好纠结的,用户已经主动在文档树中给出分类了。如果在文档树中把 数学史 归为 数学 一类是可接受的,那为什么在卡包中把 数学史 归为 数学 一类就是不可接受的了呢?

    如果一定要把 数学史 同时归为 数学历史,也不是没有办法,我简单提几个方案。

    方案一,给 数学史 这篇文档加上 历史 标签,同时引入标签树即卡包的机制。

    方案二,在 历史 笔记本的某篇文档里,粘贴 数学史 为嵌入块。

    作者:openAI
    链接: 希望取消闪卡的卡包,因为文档树就是天然的卡包 - openAI 的回帖
    来源:链滴
    协议:CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/

    这两个方案依旧是没有明白

    在思源中的“标签”和“双链”是没有统一的

    方案二也难以经得起细致的思考和推敲,比如以下我认为不是“抬杠”的思考

    1. 在 历史 笔记本的哪篇文档呢
    2. 这篇文档应该叫什么名字呢
    3. 要不要跟原文档重名呢
    4. 不重名的话如何命名区分呢
    5. 以后还有别的卡要用这样的方式放到 历史 笔记本中,是继续新建文档,还是放这个文档呢
    6. 还是统一叫类似“历史 - 其他卡片”
    7. 就算确定了解决的统一方案,会比原来的添加卡包更加优雅吗
    8. 思考创建分类的时间成本合算吗
    看你楼下的视频哈,看看 RemNote 是如何优雅地进行卡片多分类以及 DailyNote 卡片分类的
    openAI
  • Bard

    方案三:如果用户甚至只有一个笔记本,连一级分类都没有,所有的笔记都是未分类的日记,那么可以采用标签机制来对卡片分类。比如,2023.01.12 这篇文章是关于中日战争的,那么可对里面的段落打上 历史/中国史历史/日本史 两个二级标签,自然地,相关的卡片就属于 中国史日本史历史 这 3 个卡包。这样同时也就克服了我上面提到的第 ④ 个缺点,可以直观地看出卡片属于哪个卡包。(文档树即卡包、标签树即卡包这两种机制是可以同时存在的,是兼容的)

    作者:openAI
    链接: 希望取消闪卡的卡包,因为文档树就是天然的卡包 - openAI 的回帖
    来源:链滴
    协议:CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/

    这个方案是不符合现有思源的理念的,现在实现不了,或者要实现是很难的

    因为思源的标签和文档(也就是双链)是还没有统一的

    我盲猜这是常用 RN 的思维惯性,因为我也听闻“RN 的统一性是十分好的”(对本句持谨慎观点)

  • zxhd86 5 评论

    关于闪卡机制的进一步思考

    在之前对于闪卡机制的讨论中,我总结到我不支持文档树卡包的原因是,这样不公平。文档树卡包的机制对于习惯于使用文档树管理笔记的用户来说可谓得心应手,但却相当于牺牲使用其他管理笔记方式的用户,因为他们将不得不使用文档树才能管理卡包。

    经过进一步的思考,我认为论点还能在加一个,那就是不值得。

    首先是不公平。

    • 楼主后来举出了很多例子来论证文档树卡包对 daily note 的支持程度,但是就楼主举的例子而言,这只能说 RemNote 对于 daily note 支持尚可,与思源的卡包机制不相上下。
    • 但 daily note 只是众多记笔记方式中的一种,过去的、未来的笔记方式数不胜数。
    • RemNote 是内置对 daily note 的支持的,但在这种情况下,RemNote 对 daily note 的支持尚不能胜过卡包机制,又怎么能让人对于这种明显特化于结构化知识库的机制保有信心?
    • 也许对于大多数的记笔记方式方式而言,卡包机制并不是最好的制卡方式,但它绝对是一视同仁、最不坏的方式。哪怕是文档树的形式,卡包机制配合多选也是差强人意的。

    接着是不值得。

    • RemNote 的文档树卡包与思源的卡包机制,其实两边的制卡这一步流程的总体繁琐程度都差不多。

      • RemNote 需要预先建立层层的文档树,才能找到录入卡片的位置。以后每次录入知识,都要经历一遍找位置的过程。
      • 思源需要每一次都选择卡片,经过 3 步后将卡片录入卡包。
    • RemNote 前期累一点,后期简单一点,思源的卡包机制则是从头到尾都很平稳,一样的压力。你可以崇尚一劳永逸,也可以赞同平稳无压记录。但是,在这一步,是很难辨出胜负的。

    • RemNote 的最大优势,在我看来,就是在制成卡片后,能实现卡包的继承机制,也就是

      一张卡片,不仅属于当前文档的卡包,同时属于它的父文档的卡包以及祖先文档的卡包

      但是,有没有可能,这种特性,只需要对于思源现在的卡包机制进行改进,让它能支持嵌套卡包就能实现呢?

      • 同样是改进,嵌套卡包只需要对相当于官方插件的卡包机制进行少许改造,就能实现同样的功能,而且这种改进完全是帕累托最优的,不会有人因这个改进而体验改变甚至变差。

      • 而如果是实现文档树卡包,那就相当于:

        • 废掉目前的卡包机制
        • 同时还需要对思源的本体动手脚,实现类似于 RemNote 的一堆特性,如多选嵌入
        • 还要实现因为软件差异、不知道 RemNote 有没有实现的特性,如页面克隆

        否则不要说其他笔记方式了,连 daily note 都要深受影响。这过程必然伴随一大堆的 bug,漫长的升级过程,长期对于其他笔记用户相当于废掉的闪卡机制,而换来的只是对他们而言并不太可能显著优于目前机制的文档树卡包。

    综上所述,基于不公平和不值得两个点,我认为不应该废除目前的卡包机制,有一定精力的情况下,建议开发者加入快捷键制卡和默认卡包机制。在精力足够的情况下,建议开发者可以尝试加入嵌套卡包特性。而在目前卡包改进走到尽头后,再考虑文档树卡包机制。

    看我这个视频,RN 甚至提供了标签制卡的功能,更加优雅: https://www.bilibili.com/video/BV13A411o7yK
    openAI
    你如果看完我录的 RN 如何通过标签制卡的视频的话,你不会觉得不公平的,甚至会觉得 RN 的方式更好。
    openAI
    不赞同你所说的嵌套卡包方式,那样只会在不正确的方向上越走越远,尾大不掉。尽早面向更先进、更现代化的制卡方式才是正道。
    openAI
    我再说简单一点,标签是可以替代卡包的,效果一样,并且更加直观。
    openAI
    反驳你关于“不值得”的观点,思源的闪卡开发期也不过一个月,上线也不过才三个星期,现在正处于船小好调头的阶段。
    openAI
  • 查看全部回帖

推荐标签 标签

  • 笔记

    好记性不如烂笔头。

    308 引用 • 793 回帖
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用
  • 996
    13 引用 • 200 回帖 • 10 关注
  • FFmpeg

    FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

    23 引用 • 32 回帖
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 63 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖
  • 资讯

    资讯是用户因为及时地获得它并利用它而能够在相对短的时间内给自己带来价值的信息,资讯有时效性和地域性。

    55 引用 • 85 回帖
  • 又拍云

    又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。

    21 引用 • 37 回帖 • 546 关注
  • VirtualBox

    VirtualBox 是一款开源虚拟机软件,最早由德国 Innotek 公司开发,由 Sun Microsystems 公司出品的软件,使用 Qt 编写,在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox。

    10 引用 • 2 回帖 • 1 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 28 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    98 引用 • 344 回帖
  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    209 引用 • 2031 回帖
  • JVM

    JVM(Java Virtual Machine)Java 虚拟机是一个微型操作系统,有自己的硬件构架体系,还有相应的指令系统。能够识别 Java 独特的 .class 文件(字节码),能够将这些文件中的信息读取出来,使得 Java 程序只需要生成 Java 虚拟机上的字节码后就能在不同操作系统平台上进行运行。

    180 引用 • 120 回帖 • 1 关注
  • RESTful

    一种软件架构设计风格而不是标准,提供了一组设计原则和约束条件,主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

    30 引用 • 114 回帖 • 1 关注
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    154 引用 • 3789 回帖
  • JWT

    JWT(JSON Web Token)是一种用于双方之间传递信息的简洁的、安全的表述性声明规范。JWT 作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以 JSON 的形式安全的传递信息。

    20 引用 • 15 回帖 • 5 关注
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    41 引用 • 130 回帖 • 260 关注
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    76 引用 • 1737 回帖 • 2 关注
  • NetBeans

    NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。

    78 引用 • 102 回帖 • 686 关注
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    142 引用 • 442 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 4 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    4 引用 • 16 回帖 • 2 关注
  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    117 引用 • 99 回帖 • 211 关注
  • Laravel

    Laravel 是一套简洁、优雅的 PHP Web 开发框架。它采用 MVC 设计,是一款崇尚开发效率的全栈框架。

    20 引用 • 23 回帖 • 725 关注
  • 代码片段

    代码片段分为 CSS 与 JS 两种代码,添加在 [设置 - 外观 - 代码片段] 中,这些代码会在思源笔记加载时自动执行,用于改善笔记的样式或功能。

    用户在该标签下分享代码片段时需在帖子标题前添加 [css] [js] 用于区分代码片段类型。

    78 引用 • 424 回帖
  • IBM

    IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。

    17 引用 • 53 回帖 • 142 关注
  • IDEA

    IDEA 全称 IntelliJ IDEA,是一款 Java 语言开发的集成环境,在业界被公认为最好的 Java 开发工具之一。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。

    181 引用 • 400 回帖 • 1 关注