Skip to content

lxrmido/WordCards

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WordCards

  • 将英文电子书中的单词提取出来,然后通过树莓派、闲置的电脑、NAS等有屏幕的设备,利用路过屏幕的碎片时间背单词。

树莓派上运行效果 网页端

  • 本项目所用词典来源于 ECDICT
  • 英文点子书请自行从manybooks等站点自行下载

更新日志

  • 2018-10-20 添加释义缓出功能
  • 2018-09-09 单词释义按照屏幕尺寸设置最小字体尺寸,当释义太长时多行显示
  • 2018-08-30 生成卡片时添加忽略过往单词以及不覆盖已有卡片的选项
  • 2018-08-23 用vue重构前端,添加快捷键功能

项目进度

  • 从文本文件中提取出单词表,并利用词典查询得到单词卡片
  • 提供单词卡片的服务端
  • 自适应屏幕尺寸的网页端
  • 单词收藏、忽略功能
  • 网页端更换单词来源、配置的功能
  • 配色及主题更改功能
  • 基于 ElectronJS 的客户端
  • 基于 ReactNative 的移动端
  • 为树莓派客户端添加 e-ink 输出

使用说明

  • 运行 npm i 初始化
  • 创建 data 目录,从ECDICT的Release中下载sqlite词典数据库解压到此目录
  • 执行 node words --src=example.txt 生成单词表
  • 运行 node server
  • 浏览器打开 localhost:3003 ,把设备放在一边,等待路过的时候背单词

单词生成

执行 node words --src=example.txt --level=1 --length=3 --dst=data/words.json生成目标单词表,各参数说明:

名称 说明 是否必须 默认值 取值范围
src 电子书文本文件路径
dst 单词表json生成路径 data/words.json
level 过滤等级,取值参考下表 1 1,2,3,4
length 长度筛选,小于此长度的单词不加入到单词表中 2 正整数
ignore 忽略已学单词,取值参考下表 0 0,1,2,3
append 是否附加到原有的词表之后而不是覆盖词表 false true,false

参数level的取值:

说明
1 所有单词
2 不添加中高考、CET4单词
3 不添加CET6单词
4 不添加柯林斯3、4、5星的单词

参数ignore的取值:

说明
0 不忽略任何已学过单词
1 忽略已标记忽略的单词
2 忽略已看过的单词,但保留星标标记的
3 忽略已看过的所有单词

存档管理

存档文件默认为 data/progress.jsondata/progress.db ,在 config.js 中可修改这些文件以及词典数据库的读取路径

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published