怎么在ob里实现一个数学题库,纯文本,能打卡、规划,复习,搜索,以考研张宇1000题为例

虽然标题像教程贴,但是抱歉目前还在探索阶段,有一些棘手的问题需要各位大佬的一点帮助,如果工作流可以跑通,我再回来发教程贴和模板库

正在准备考研,想顺手积累做一个考研数学库,现在我的工作区是这样的


现在ai很好用,可以不用写任何脚本,让ai来做格式化,我已经已经批量处理了很多考研的习题册和讲义pdf变成了规范的markdown(这部分的工作流大家要是有兴趣我之后写个教程贴),并且分割成了这种一个一个md文件,用文件夹来做题目来源的分类,用tag来做题目的类型和特征分类
我知道有很多可以查询tag的插件 tag wrangler 或者 dataview 这种东西可以来做聚合查询,让我后期可以把题目做分类和专门的检索聚合,所以我打了很多tag方便之后可能用得上

但是现在存在几个问题
第一:
对于每个习题册(在这个文件夹下)我想要有一个进度栏,或者说,进度条,让我看这一个文件夹下的题我完成了多少了,我现在的是用folder note这样放置的,我在yaml区设置了一个finish属性,为这个需求做了准备,这个属性可以利用上吗(yaml区见第一张图)

第二:
我暂时没有研究dataview的各种进阶的使用,我已经把每个题按照图示这种格式组织好了
我想知道我后续可不可以通过dataview把库里所有这种结构的block或者文件全部查询出来,聚合或者跨文件夹之间交叉组织,如果我现在这种组织形式不可以,我现在需要提前预先做好什么格式上的准备工作,防止现在尾大不掉,如果目测是可行的话,我就花时间去研究dataview

第三:
我通过note refactor来分割重构,形成每个md的题目,现在是通过linter在每次进入这个文件写题的时候,保存时格式化,来自动添加yaml区
我想知道是否有什么自动化的操作或者插件让我批量在文件夹下的所有文件添加yaml区(通过写python或者bash脚本肯定可以,除了写代码的手段呢)

第四:
关于间隔重复的复习
我目前使用ob里面的插件spaced repetition来做anki卡片,因为它的block识别因为ob没有块引用,在这个插件里我要分开 卡面和卡背,只能是这样不换行,题目是卡面,下面的分析和解作为卡背


目前ob里面的这个spaced repetition重复算法还是太不稳定了,而且不方便跨设备(平时还有一些水课要上,我想上水课的时候可以过一下卡)
我想知道的是,有没有关于anki的最佳实践,可以达成只是简单的变动现在的组织格式就可以批量导出到anki(比如通过export to anki),如果要达成这个效果,我现在这个题目的组织方式要进行什么变动
理想中的工作流是,我可以通过tag和yaml区或者dataview的联合查询,把不同科目的,不同类型的所有错题,全都聚合查询展示在某个md下,然后我复制一份,在这个复制上,通过脚本或者批量替换,修改格式,再批量导出到anki

第五个问题:
我单方面的臆想中,ob应该可以通过css来控制某个标题层级是收缩隐藏的
我想知道是否可以通过一个css来把题目的解这个标题层级实现默认是隐藏的,如果答案是明确的,那我就去研究一下怎么写,我怕浪费时间做无用功

要是有路过的大佬愿意解答一下的,目测一下,看看我预期的功能是不是可行,我就花时间试试,不然很怕做了无用功 ORZ,万分感谢

1 个赞

第五个问题,CSS 做不到。

第一第二,论坛里有 QuickAdd 填写进度、DataviewJS 汇总和 Minimal CSS 展示的代码,有 DataviewJS 汇总标题的代码,但要根据情况调整,可以小试一下,三天以内搞不定就放弃,这半年先应付考试,考完了半年时间想整理慢慢整理。

第五个问题你是准备把 “分析” 和 “解”的内容隐藏,起来方便回顾时再思考次的话。 可以用callout -的语法包裹起来。

第三,你在文件列表上的某个文件夹上右键的话,应该能看到linter的功能,就是给这个文件夹下的所有笔记格式化

第五,有个插件叫 Creases ,可以默认折叠某些标题,需要给这些标题添加%% fold %%,我想,由于你只想隐藏一个固定的“## 解”,用linter应该很容易实现自动添加这个标记

简单方法,放弃Obsidian做复杂抽认卡,直接用ANKI​:joy::joy::joy:

1 个赞

确实,这个需求还是交给anki比较好。