SiYuan sync to Anki
Project description
SYAK:同步 SiYuan 内容块到 Anki, 自动更新, 自动删除
如果觉得有帮助, 麻烦点个 Star⭐
Prerequisite
- Anki 需要安装 AnkiConnect 插件, code 为
2055492159
, 默认端口8765
- 支持 Python 3.9 以上版本
- SiYuan 默认端口为
6806
- 同步时, 保持 SiYuan 和 Anki 同时运行
-
Install
pip install syak
Usage
- 新建一个
card
文档块, 名字支持前后缀, 例如@card
- 在需要制卡的内容块后面引用
card
文档块 - 制卡内容块为某个容器块下的叶子块时, 卡片正面为制卡内容块, 背面为整个容器块
- 制卡内容块为文档块下的叶子块时, 卡片正面制卡内容块, 背面为空
- 运行命令
syak -p SiYuan数据根路径(data目录的上一级)
即可同步 - 查看更多选项运行
syak -h
Demo
Feature
- 添加 SiYuan URL 跳转链接
- 自动更新, SiYuan 更新内容块后, Anki 自动更新
- 自动删除, 删除
card
引用块, Anki 自动删除 - 根据文档块层级自动建立 deck 层级
- 支持 media 文件
- 自动删除 empty deck
- 同步完成时, 发送同步信息给 SiYuan, 停留 5s
Not Support (currently)
- Close
- 代码块高亮
- 超级块未适配
More
-
使用带有定时运行脚本功能的软件,如 Keyboard Maestro 或者 Quicker 实现后台无缝同步
-
macOS用户如果遇到同步耗时较长的问题, 可以参考:
-
FooSoft Productions - Anki-Connect
Starting with Mac OS X Mavericks, a feature named App Nap has been introduced to the operating system. This feature causes certain applications which are open (but not visible) to be placed in a suspended state. As this behavior causes Anki-Connect to stop working while you have another window in the foreground, App Nap should be disabled for Anki:
-
Start the Terminal application.
-
Execute the following commands in the terminal window:
defaults write net.ankiweb.dtop NSAppSleepDisabled -bool true defaults write net.ichi2.anki NSAppSleepDisabled -bool true defaults write org.qt-project.Qt.QtWebEngineCore NSAppSleepDisabled -bool true
-
Restart Anki.
-
-
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.