Lute 架在自己 NAS:读外语文章点一下生词,释义和进度都存自己家
作者
小编
发布时间

项目介绍
Lute(Learning Using Texts)是一个用阅读来学外语的工具:把一篇文章贴进去,它把文章按句子排好,你可以一边读,一边点不认识的词,填上中文释义、标一个熟练度。
点过的词会在文章里带上颜色:刚建的、还不熟的、已经会的,颜色一层层变绿。同一个词在别的文章里再出现,颜色也跟着走,不用从头记。
所有文章、释义、标签、熟练度都存在你自己的 NAS 上,不经过任何在线词典或背单词服务;内置的词典页只是给你查释义时当参考,关掉也能用。整个程序是一个 Python 写的服务,数据放在一个 SQLite 文件里,起一个容器就能跑。
项目地址:点我跳转
部署安装
只要能跑 Docker 的 NAS 都能装,下面用飞牛 NAS 演示。单容器,一份 Compose 编排就够了。
一、想在外面打开,先把 5001 放出去
只在局域网里用,这一步可以跳过,直接看第二步。要让在外面用手机也能接着读,就在飞牛的「应用中心」里搜 PassNAT,装上这个穿透插件,打开它,点「创建隧道」:名字随便起(不超过 12 个字符),本地 IP 留默认的 127.0.0.1,本地端口填 5001,点开、按一下电源,状态变成运行中,详情里那个公网地址就是你在外面要打开的网址。
Lute 自己没有登录页,隧道一定要开网页访问口令,别人拿到地址也进不来。
不是飞牛的系统,PassNAT 文档的「连接使用」里有其他系统的连接教程:点我跳转。
二、新建 Compose 项目
打开飞牛的「Docker」应用,切到「Compose」标签,点右上角的新增项目。项目名称填 lute,路径在「我的文件」下面挑一个空文件夹,来源选「创建 docker-compose.yml」,把下面这段整个贴进去:
1services:2 lute:3 image: jzohrab/lute3:latest4 container_name: lute5 restart: unless-stopped6 ports:7 - "5001:5001"8 volumes:9 - ./lute_data:/lute_data10 - ./lute_backup:/lute_backup
容器里固定监听 5001,冒号前面那个数字是 NAS 上的端口,被别的项目占了就改它,后面的不用动。下面两个目录:lute_data 放数据库,lute_backup 放备份,都要留着。
勾上「创建项目后立即启动」,点确认。镜像下完、容器状态变成「运行中」,就可以打开网页了。
三、第一次打开
浏览器打开 http://NAS的局域网地址:5001,第一次启动会自带一份演示数据:一本英文使用说明、几篇不同语言的短文,以及十几个语言。首页顶上有一条提示,不想要演示内容可以点「dismiss」先收起。
示例书不想要,就在书架那一行的「…」菜单里点「Archive」归档,书架就只剩你自己的书了。
四、建第一本书
点左上角菜单里的「Create new Book」:
Language 选 English(学日语就选 Japanese,列表里有的都行);
Title 写一个自己能认出来的名字;
Text 把文章正文整个粘进去 —— 网页复制来的、自己写的、TXT 里的都可以;
Split by 保持 Paragraphs,Lute 会按段落和句子切开,读的时候一句一句高亮;
Words per page 决定一页放多少词,默认值一般够用。
点 Save,直接进阅读页。文章里的每个词都是独立的,生词外面有一圈浅色描边。
五、边读边点词
读到不认识的词,点它一下,右边(手机上是下面)会弹出释义表单:
Translation 填中文释义,自己看得懂就行;
状态按钮 从 1 到 5,再加上「✓」和「⊘」:1 是最生,5 是快会了,✓ 是完全认识,⊘ 是不用管的词(人名、地名);
Tags 可选,比如填 noun、动词、厨房用品,之后能在词表里按标签筛。
点 Save,这个词在文章里马上换颜色;鼠标停在词上,还能看到你写的释义。同一个词在下一篇文章里出现,颜色和释义都在。
六、词表:一眼看到学到哪了
顶部的「Terms」是全部词的表格:词、父词、译文、标签、状态、语言、添加日期。按语言筛出英语,按状态筛出「New」「Learning」「Learned」「Well Known」,就知道哪些词还得再碰几次。状态也能在表里直接改。
读一篇文章不用把每个词都点一遍:只点真正卡住的,剩下的靠上下文过;读得多了,同一批词反复出现,颜色自然会往上走。
七、手机接着读
阅读页在手机上会自动换成单栏,文章铺满宽度,点词以后表单从下面弹出来。如果第一步建了隧道,在外面用手机流量打开那个公网地址,读到哪一页、哪些词标过,都跟 NAS 上一致。
几点说明
没有登录页。 Lute 是单人工具,谁打开地址谁就能用。挂到公网之前,一定在 PassNAT 隧道上开网页访问口令;只在家里用就不用管。
数据都在 ./lute_data。 数据库文件、你导入的文章、保存的图片都在这里。备份就备份这个目录;删掉它等于清空所有书和词。
内置词典可以不看。 释义表单下面的词典页是外部参考页,点词时自动打开,自己填译文不影响它;不想要可以在语言设置里调整词典来源。
端口冲突。 宿主 5001 被占了,就改编排里冒号前面那个数字,容器里的 5001 不用动。
更新。 拉新镜像重建容器即可,lute_data 目录不动。升级前先做一次备份。