原文链接:icloudnative.io/posts/anki-…

Anki 介绍

Anki 是一个辅助回忆软件,其本质是一个卡片排序东西–即依据运用者对卡片上的自定义内容进行主动测验、自我评判后,其内部算法依据评判成果更改每张卡片下次测验时间的排序东西。

所谓的卡片,专业说法叫 Flash Card(抽认卡或闪卡),是一小块纸片,分为正反两面,将问题和提示写在一面,将答案写在另一面。运用办法便是先看正面的问题与提示,在脑中回想答案,然后翻出不和进行对照验证。

闪卡的核心制造原则便是:一个知识点一张卡。因此十分合适用来学习英文,也能够用来回忆历史事件时间、公式等等。给我们看下我制造的闪卡:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

每张卡片只要一个英文单词,与之配套的是该单词的音标、发音、图片、英文解说、例句。一切的版块都是英文,肯定不要呈现中文! 卡片的核心是图片和例句,经过图片能够猜到这个单词大约是什么意思,经过例句能够验证自己对单词意思的猜想是否正确,假如还不定心,能够看下英文解说,这一套流程下来肯定能够正确理解单词的意思,完全不需求中文的干与,这才是学习英文单词最完美的方式

即便如此,我们在熟悉单词的过程中或许还会有一个误区,比如上面这个单词,你在学习的过程中或许会不由得去想这个单词在中文里究竟是什么意思,甚至或许会在心里默念它的中文意思,即使你看了图片和英文解说,你心里或许还会不由得去想:哦,这是转瞬即逝的意思。建议我们最好不要这么做,要想做到这一点,记住一句名言:只可意会,不可言传。你去看这张图片,然后用心去领会:哦,大约便是这么一种感觉,对对对。你能 get 到这个单词所表达的那种感觉就行了,不要再去考虑如何用中文来描述它,那样反而吃力不讨好。


下面言归正传,信任有很多小伙伴和我相同在运用 Anki 来学习英文单词或许其他的知识,但是 Anki 的同步服务器在国外,仍是一个个人项目,带宽很小,同步速度很慢,假如我们想在多个客户端之间同步学习进展和新增的知识点,那将十分苦楚。

为了处理这个问题,我们需求布置一个自定义的同步服务器,然后让客户端去运用这个同步服务器。

Anki 同步服务器布置

自从 2023 年 2 月份,Anki 发布了 PC 端 2.1.57 版别今后,Anki 的 PC 端,安卓端,iOS 端用户都能够自定义同步服务器了,并且不再需求装置插件。从此 Anki 小伙伴再也不必担心 Anki 同步的问题了,困扰 Anki 用户多年的同步问题总算得到彻底处理。

自 PC 端 2.1.57 版别今后,Anki 官方退出了镶嵌在 Anki 客户端的同步服务端和经过 Python 装置的同步服务端。

但是我并不想用官方的这个破玩意,人生苦短,我不必 Python

我挑选用社区的高大上同步服务端,目前只要 anki-sync-server-rs 这个项目支持最新的 Anki 版别,其他的同步服务器项目基本上都失效了。这个项目是用 Rust 写的,追寻 Anki 官方 同步服务端的进展,它们都是根据sqlite c 作为数据存储后端。最重要的是:它有 Docker 镜像!

有了镜像,布置起来就简略了,不便是 Docker 一把梭嘛!

不明白 Docker 也没关系,不便是 Sealos 一把梭嘛!楼下的老奶奶都会用 Sealos 一把梭

你把我下面的过程教给你家楼下的老奶奶,假如她不会你来找我,我现场给你扮演大便活人

首先在浏览器地址栏输入网址 cloud.sealos.io/ 进入 Sealos 桌面。然后翻开「使用管理」:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

点击「新建使用」:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

顺次输入使用名和镜像名,容器暴露端口是 27701,并敞开外网访问:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

继续向下,展开「高级装备」,点击「修改环境变量」:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

将以下内容粘贴到环境变量输入框中:

ANKISYNCD_USERNAME=<USERNAME>
ANKISYNCD_PASSWORD=<PASSWD>

请将 <USERNAME> 替换为你自己的用户名,将 <PASSWD> 替换为你自己的暗码。

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

点击「新增存储卷」:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

挂载途径填入 /app,然后点击承认:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

最后点击右上角的布置使用即可。

布置完成后点击「详情」进入使用详情界面。

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

这里能够看到实例的运转状况,一定要等到状况是 running 才算是布置成功。假如一段时间今后状况还不是 running,能够点击「详情」检查故障原因:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

布置成功后,能够看到使用的运转状况,包括 CPU 占用、内存占用等。点击外网地址即可经过外网域名直接翻开同步服务器的 Web 界面。

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

假如呈现以下的界面,则表明布置成功:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

检查日志的办法也很简略,直接点击实例右侧的「三个点」,然后点击「日志」即可检查日志:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

客户端设置

桌面端

桌面客户端(macOS/Windows/Linux)装备办法如下:

  1. 先翻开「首选项」

    3 分钟为英语学习神器 Anki 部署一个专属同步服务器

  2. 点击「网络」,往下看,能够看到标有 self-hosted sync server(自定义同步服务器) 的方框,在里面填写您的服务端的地址:

    3 分钟为英语学习神器 Anki 部署一个专属同步服务器

  3. 重启 Anki,然后点击「同步」:

    3 分钟为英语学习神器 Anki 部署一个专属同步服务器

  4. 这时候会弹出一个输入框让你输入用户名和暗码,你需求将你之前设置的用户名和暗码输入进去:

    3 分钟为英语学习神器 Anki 部署一个专属同步服务器

  5. 点击承认后,就会开端同步了。

安卓端

安卓端也是直接装备即可,我的 AnkiDroid 版别是 2.15.6。你能够经过「设置 -> 高级设置 -> 自定义同步服务器」找到装备页面。

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

再填写用户名和暗码:

设置 -> 常用设置 -> AnkiWeb账户

这样就算装备完成了,一切的牌组都同步过来了。

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

官方的版别实在是太老了,假如你想运用更急进的社区版别,能够到这个页面下载最新的 Beta 版:

  • github.com/ankidroid/A…

建议下载 arm64-v8a 版别。

装置完成后,能够经过「设置 -> 同步 -> 自定义同步服务器」找到装备页面:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

再填写用户名和暗码:

设置 -> 同步 -> AnkiWeb账户

iOS 端

AnkiMobile 也已经支持和自建的同步服务器同步了。至少对于版别 Ankimobile 2.0.90(20090.2) 来说,似乎是可行的,这是一位 iOS 系统用户在 Anki 论坛报告的。

假如设置完成后发现不能同步能够参阅下面的内容再试一次:

If you’re using AnkiMobile and are unable to connect to a server on your local network, please go into the iOS settings, locate Anki near the bottom, and toggle “Allow Anki to access local network” off and then on again.

上面的内容摘自 ANki tutorial

题外话

我们假如对我的卡片模板比较感兴趣,能够扫码关注公众号:

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

后台谈天框发送暗号 anki,即可获取我的卡片+模板。