问题标签 [anki]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
49 浏览

python - 在分层图中查找最近的选定节点,其中只有在没有选定节点的情况下才进一步向上执行搜索

我想改进我为anki编写的插件的审查算法,用于从概念图创建闪存卡。该插件根据概念图的结构提出问题。此屏幕截图显示了应导入的概念图示例。蓝色框包含超链接,如果它们以图形方式显示,地图将如下所示

概念之间的关系充当问题,而概念充当答案。在复习过程中,学习者应该首先回答层次结构中较高层次的问题,然后是层次结构中较低层次的问题。问题仅在到期时才被问到(由 anki 使用间隔检索算法确定)。

给定示例地图,可能的问题序列可能是“调查”->“调制者”->“拆分”(如果“示例”未到期)->“代表”->“完全无关动画”。插件中使用的算法非常简单,当一个问题与其他问题有很多交叉链接时需要很长时间。我认为在审查期间将概念图内部表示为图表然后使用一些算法快速找到下一个到期问题会很好。

我发现这篇关于在 python 中表示图形的帖子听起来很有希望。我想我可以用类似的东西来表示概念图。我偶然发现了应该解决最短路径问题的 Dijkstra 算法,但它并没有解决我的问题,因为我的审查顺序需要更喜欢在层次结构中向下而不是向上。例如,如果当前的问题是“需要”并且进一步向下“发音”是到期的,“发音”必须优先于“调制”,即使发音的路径长度是 3 并且“调制的路径长度”只有一个。

我如何编写一个总是喜欢向下的算法,同时在我的概念图中找到最接近的问题?

0 投票
1 回答
192 浏览

html - 一起编辑多个 HTML/Markdown 页面的建议。任何用于将多个页面编辑为表格的工具?

背景:我必须构建一堆类似的页面*,50 个或更多。他们分享了很多设计和内容,所以我将尽可能多地封装/重用样式和内容。尽管如此,每个页面都有独特的元素,并且可能有任意的设计元素,因此这些页面不能仅仅通过数据库或资源文件以编程方式制造。

什么可能有帮助:因为要跟踪的页面太多了,所以我想在一个大表格中编辑它们,而不是在一个长滚动的文本文件或单独的文件中。这将使比较和对比每个页面的代码变得容易。该表看起来像这样:

此示例中的前三个字段供我自己使用,或者可能会作为元数据进入页面,而其余字段显示“真实”代码的去向。

问题

  • 我在以表格形式编辑页面代码的想法上是否正确?有没有更好的方法来一起设置一组相似的页面?

  • 如果表格编辑确实有意义,我应该使用什么工具?

我考虑过的工具:

  • 文本/代码编辑器:好的,这并不奇怪,但我还没有找到任何代码编辑器可以让您将文件显示和编辑为由特殊标签定义的行和列。有这样的东西存在吗?

  • 电子表格和结构化数据库:非常适合基本的行和列,但不适合文本编辑,多行行的显示很糟糕。

  • 一个专门的“结构化文本”数据库:也许存在一个,但我的搜索结果是空的。大多数“文本数据库”用于非结构化/自由格式的文本。

  • “表格编辑”:错误的想法,对吗?它们用于为表格结构生成代码,然后您可以在页面上显示这些代码,或者在数据库表单或报告中使用这些代码。

  • 文字处理器。现在,我将使用 Microsoft Word 中的表格,将 HTML 视为普通文本。将页面宽度设置为 Word 的最大值 (22") 并且字体非常小,我需要的列有足够的空间。我失去了代码编辑器提供的所有帮助,这是一个很大的损失,但至少我能看到什么我在做。Word 有一个键盘命令,可让您在表格中将一行或多行作为一个块上下移动,这有助于比较页面。但另一个主要缺点是我仍然必须将表格导出到使用 Word VBA“宏”的 CSV,然后编写一个小脚本来循环遍历 CSV 以创建实际页面。我还没有编写这些转换例程,所以如果您有任何替代建议,请执行。

*此项目的“页面”实际上是 Anki 卡片类型。

0 投票
0 回答
111 浏览

python - AnkiTools : TypeError: 'int' 类型的对象在使用 anki_convert 时没有 len()

我正在尝试将甲板的 excel 转换为 apkg:

但是会出现以下错误:

我尝试了许多具有不同值的不同文件,但仍然出现相同的错误。关于如何解决它的任何想法?

编辑:完整的错误跟踪-

0 投票
0 回答
444 浏览

python - OSError: [Errno 48] 地址已在 anki vector SDK (vectorCloud) 中使用

我真的是编码新手。我使用 macOS 莫哈韦。我尝试使用机器人 anki vector sdk 并使用 rmountjoy92/VectorCloud 代码。起初我成功打开了基于网络烧瓶的应用程序。当我无法关闭 IDLE 时会出现问题,因为我无法使用 control + C 按钮来停止它。所以我现在只使用 IDLE 中的关闭按钮(带有红色和 x 标记的按钮),当我尝试重新打开代码时,它总是显示如下错误:

我已经阅读并尝试了这个OSError: [Errno 48] Address already in use

但这无济于事,因为我完全是新手。

app.py 代码行 990 是这样的

和 serving.py 1030 行是这样的

有人可以用易于理解的词指导我吗?如果我在这里发帖有误,请告诉我,这是我的第一篇文章。谢谢

0 投票
1 回答
65 浏览

javascript - 我已经开发了用 Anki 写中文。它在 Anki 中有效,但在 Ankidroid 中无效

它在 AnkiDesktop 上运行,但由于字符编码,它在 Ankidroid 中不起作用。我尝试了许多解决方案,但无法加载。在 Anki Desktop 中字符长度是正确的,但在 Ankidroid 中相同的字符长度是不正确的。例如:-“例如”在 Anki 桌面长度为 2,在 Ankidroid 长度为 7

因此可能由于字符编码而出现错误。 GitHub 代码链接

图片

0 投票
1 回答
77 浏览

python - 在 Anki 中将失败的卡片传递到第二天

我正在寻找python线以将失败的卡传递到第二天。

假设我们正在研究一副 3 张牌。我失败了2张牌,只成功了1张。当我想在第一次复习后重新研究失败的卡片时,我会停止修改,以便我可以启动我的插件直接将失败的卡片传递为成功完成我今天的套牌。然后明天我会看到我前一天失败的两张牌。

0 投票
1 回答
356 浏览

anki - 了解 Anki 如何确定什么是“完成学习卡组”

我最近开始使用 Anki,并对什么是“完成一副套牌”感到好奇。例如,如果我有一副牌有 40 张牌,那么当我看过所有 40 张牌后,我是否已经完成了整副牌的研究?我怎么知道我已经看过所有 40 张卡片?Anki 是否有某种算法来通知用户他们已经充分完成了一组学习,或者是我们最好的判断做出的判断?

0 投票
1 回答
943 浏览

python - 自动将信息从 Dictionary 传输到 Anki

我正在学习语言,我必须学习很多单词。为了有效地学习单词,我使用 Anki Software,这是一个用于间隔重复的开源抽认卡软件。我的问题是,有数千个单词,我应该在字典中手动搜索并输入 Anki。有什么方法可以加快这个过程吗?我可以开发一个软件,从列表中提取单词并在字典中搜索含义并自动将信息放入 Anki 中吗?如果有办法,如何以及使用哪种编程语言?

提前致谢。

0 投票
1 回答
98 浏览

anki - 如何通过 JavaScript 标记卡片的好/坏?

你能想到如何通过 Javascript 标记一张卡片的好/坏,所以它标记当前卡片然后显示下一张吗?

理想情况下没有任何插件,因此它可以在手机上运行。

我正在创建一个带有多个答案按钮的自定义测验界面。

谢谢!

0 投票
0 回答
73 浏览

python-3.x - 如何在我的脚本意外重复之前搜索我的 anki 套牌?

所以我正在尝试编写一个 python 脚本,它采用日语单词的单词列表,在网上找到这些单词的例句,并用这些句子制作 anki 卡片,并标记没有可用句子的单词。

我的基本想法是使用 selenium 从 Tangorin.com 抓取句子,然后使用 genanki 制作卡片,但问题是我想以这样的方式编写脚本,如果该句子已经存在于我的 anki 卡组中,那么脚本要么取下一个句子,或者如果没有更多句子,则将该单词标记为没有任何句子并继续下一个单词。问题是我不知道如何检查正在进行的 anki 数据库以查看卡是否存在。

当您向 anki 添加重复项时,它会通过突出显示红色字段来识别其重复项,如下所示:

Anki 重复指标

所以很明显anki本身可以识别重复卡,我想编写我的程序,它也检查它刚刚拉出的句子,看看它是否是重复卡,然后如果是,跳到下一个可用的句子,如果没有另一个可用的句子,只需将其标记为没有可用的句子卡以用于单独的报告(对于我可以手动添加或忘记的内容),然后移动到下一个单词。我希望我的意思很清楚,抱歉没有更具体,我这个月才开始学习编程。

谢谢你