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

Flashcards support custom review time and reset #10326

Closed
edward-kyle opened this issue Feb 6, 2024 · 21 comments
Closed

Flashcards support custom review time and reset #10326

edward-kyle opened this issue Feb 6, 2024 · 21 comments
Assignees
Milestone

Comments

@edward-kyle
Copy link

edward-kyle commented Feb 6, 2024

闪卡支持自定义复习时间

希望闪卡的间隔可以自定义、以及闪卡可设置deadline

In what scenarios do you need this feature?

算法是闪卡功能的核心。
要相信fsrs算法,更要保持怀疑态度。用户应以自我为中心,跟知识点的感觉走。

如果算法安排的间隔超出承受范围,应当可以自主调整间隔。

Describe the optimal solution

  1. 间隔自定义:新学的卡片,间隔需要自己掌控。例如,复习间隔 100 天以后的旧闪卡,应当谨慎评估,自主调整闪卡间隔。

  2. 设置deadline:算法更多的是为了长期记忆、永久性记忆安排。然而,并不是所有的闪卡都需要长期记忆。可以将一些闪卡划分到一个「闪卡组」中,然后对这个「闪卡组」设置deadline,让算法根据deadline调整「闪卡组」中闪卡的重复间隔。这会更加有利于siyuan在学生群体中的传播。

Describe the candidate solution

No response

Other information

No response

@edward-kyle
Copy link
Author

siyuan的卡包功能很难用。
如果用卡包进行闪卡分组功能,会很难受。
而且卡包功能介绍上写着是「历史兼容选项」。

希望有新的闪卡分组功能按钮。

@88250
Copy link
Member

88250 commented Feb 6, 2024

卡包功能已经废弃了,会和文档树制卡产生冲突,不要使用。

@edward-kyle
Copy link
Author

好吧,但还是希望D大可以考虑一下闪卡间隔自定义。
闪卡间隔自定义功能适合场景是:刷卡时,发现正在刷的这一张闪卡间隔太长。自己认为不合理,需要自定义刷卡间隔。

deadline功能适合的场景适合的用户是即将考试的群体,他们需要对一个科目的多个知识点在考试前完成记忆。但是目前siyuan的闪卡卡包功能会与文档树制卡有冲突,只能寄希望于开发者把「卡包」重构,或者有人写一个「卡包插件」了。

@88250
Copy link
Member

88250 commented Feb 6, 2024

调整间隔这个等后面有空的时候研究一下,谢谢。

@edward-kyle
Copy link
Author

对于设置deadline有一个新的想法:
#10233
这个issue中的闪卡旗标功能可以替代上述deadline部分中的卡包功能。
deadline可以这样设置:

  1. 设置deadline日期
  2. 展示:距离截止日期还有多少天、当前旗标下的卡片总数、每日应当刷卡数量、每日应当刷卡时间(通过算法里的平均刷卡速度估算)
  3. 选择是否展示2.中的内容

deadline选项仅仅是展示以上内容,但并不会强制改变闪卡的推送,闪卡推送增加多少应当是用户自己决定。

举个例子:
7天后是数据结构这门课的考试。对于闪卡中数据结构的知识都标「蓝色旗标」。
选择只学习和复习「蓝色旗标」的闪卡,忽略其他闪卡。
目前siyuan里的闪卡学习/复习设置如下:
image
而deadline功能告诉我,蓝色旗标闪卡总数为800张,每天应当刷卡300张。
那么,在学完新卡20张和复习完200张复习卡后,刷卡数量仍然不够。
用户自己点击「自定义学习」按钮(希望闪卡界面后续会有),大致如同下面的图片(来自anki中的界面):
image

如果当天剩余时间充足,按照deadline功能给出的信息,安排当天刷卡任务(安排新的刷卡上下限不是点击deadline功能后由算法完成设置,而应当是用户自己完成)。
如果当天剩余时间不足/用户想要偷懒,适当新增刷卡任务,但是新增刷卡任务比deadline给出的刷卡任务数量更少。

@edward-kyle
Copy link
Author

「闪卡间隔自定义」功能应当对应的是具体的一张闪卡,例如:在刷闪卡A时,点击「显示答案」,发现这个闪卡接下来再次出现的时间为100天后,不符合自身实际需求,点击「闪卡间隔自定义」按钮,把这张闪卡A的下次出现时间改为30天。接下来,闪卡A会在30天后出现,而不是在100天后出现。

「自定义学习」功能修改的是闪卡设置界面的下面设置:
image

二者各有其使用场景,并非一个功能。

@88250
Copy link
Member

88250 commented Feb 10, 2024

和 Anki 不一样,思源不是按“天”来进行复习的,所以按“天”的相关需求无法实现的。

关于调整间隔时间或者设置 deadline 目前还不确定是否能实现,得等后面研究了,谢谢。

@88250
Copy link
Member

88250 commented Feb 10, 2024

@L-M-Sherlock 大佬有空的话请指点一二,多谢。

@edward-kyle
Copy link
Author

和 Anki 不一样,思源不是按 “天” 来进行复习的,所以按 “天” 的相关需求无法实现的。

关于调整间隔时间或者设置 deadline 目前还不确定是否能实现,得等后面研究了,谢谢。

其实最新的anki也用上了fsrs算法了。
anki的间隔并不是用1天、2天这样计算,而是随着间隔重复的进行,下一次闪卡出现的时间从x分钟后逐渐变为x天之后的。

@L-M-Sherlock
Copy link
Contributor

anki的间隔并不是用1天、2天这样计算,而是随着间隔重复的进行,下一次闪卡出现的时间从x分钟后逐渐变为x天之后的。

这个和 FSRS 无关,Anki 以前就这样。

@88250
Copy link
Member

88250 commented Feb 11, 2024

@L-M-Sherlock 大佬,我想请教如何自定义间隔重复时间。

@L-M-Sherlock
Copy link
Contributor

直接修改card的到期时间就行了。

@88250
Copy link
Member

88250 commented Feb 11, 2024 via email

@88250 88250 changed the title 希望闪卡的间隔可以自定义、以及闪卡可设置deadline 闪卡支持自定义复习时间 Feb 17, 2024
@suka233
Copy link

suka233 commented Feb 23, 2024

@88250 d大,想请问一下进度如何。如果可以的话,请顺便新增修改闪卡到期日期的插件api

@88250
Copy link
Member

88250 commented Feb 23, 2024

@suka233 目前还没有具体排期。

@88250
Copy link
Member

88250 commented Feb 24, 2024

@suka233 麻烦单独开一个设置闪卡复习时间 API 的帖子,大致描述一下参数,我们可以先考虑提供 API,谢谢。

@88250 88250 self-assigned this Feb 24, 2024
@88250
Copy link
Member

88250 commented Feb 26, 2024

API #10423

@88250 88250 added this to the backlog milestone Feb 26, 2024
@88250 88250 changed the title 闪卡支持自定义复习时间 Flashcards support custom review time Feb 26, 2024
@88250 88250 modified the milestones: backlog, 3.0.3 Feb 27, 2024
@ghost
Copy link

ghost commented Feb 27, 2024

@88250 @Vanessa219 目前思源笔记的闪卡功能主要缺失两大模块:1.闪卡管理。2.数据统计。如果都由思源自己做,工作量比较大,是否可参考logseq-anki-sync,官方出一个类似的插件或功能,直接将思源的闪卡同步到anki,且此插件也满足从anki跳转到思源的功能。

上线后,闪卡重度用户可以通过此插件调用anki进行复习,轻度用户使用思源笔记目前提供的闪卡功能即可。

image

@88250
Copy link
Member

88250 commented Feb 27, 2024

@zzz51522 这个适合用插件来做,谢谢。

@88250 88250 modified the milestones: 3.0.3, 3.0.4 Mar 7, 2024
@Vanessa219
Copy link
Member

由于版本变更,记录一下接口

/api/riff/batchSetRiffCardsDueTime

{
    "cardDues": [
        {
            "id": "20240118200836-wr0eg52",
            "due": "20240224214400"
        },
        {
            "id": "20240118200836-qsoo1fu",
            "due": "20240224214412"
        }
    ]
}

@zxhd863943427
Copy link
Contributor

闪卡功能投票:https://ld246.com/article/1709964739844

@Vanessa219 Vanessa219 changed the title Flashcards support custom review time Flashcards support custom review time and reset Mar 10, 2024
Vanessa219 added a commit that referenced this issue Mar 17, 2024
Vanessa219 added a commit that referenced this issue Mar 17, 2024
Vanessa219 added a commit that referenced this issue Mar 17, 2024
Vanessa219 added a commit that referenced this issue Mar 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants