使用说明
之前一直没有找到一个合适的能够帮助测试日语单词的软件。之前使用过诸如沪江之类的软件,但是感觉还是不尽如人意-毕竟和英语情况不一样,需要专门的题目。因此就自己写了一个软件。
-
只需要自己导入词库就可以让计算机自己出题,无需人工出题。当前版本自带新标日初级48课的词库,以后有时间会慢慢制作新的词库。词库的制作方法和导入方法下文会有介绍。
-
题的形式比我见过的市面上的软件要多。我设计了8种题型(给定假名选择意思、给定假名写汉字、给定汉字选择假名、给定汉字写假名、给定汉字选择意思、给定意思选择假名、给定意思写假名、给定意思选择汉字),应该能够满足大部分需求。需要指出的是:
- 写汉字的题是真的给你一个绘图区域让你自己写,毕竟日语的(相对于中文的)异体字还是不少。不过这种题需要你自己判断写没写对-我手头没有适合这种需求的识别模型。
- 我手头没有切割好的录音,要不然就来一个听写题了(笑)
- 不需要日语键盘。答题界面有自己的软键盘。
-
纯网页,天然适配各种平台(只要别是ie浏览器,笑)。另外也尽量制作了不同平台的安装包。甚至在树莓派上可以运行!
-
全部开源,没有广告,内购之类的,也不需要任何权限,不保存任何数据。完全可以自己二次开发。也可商用(但是得注明原作者和开源代码库地址)
-
支持深色模式,大部分情况能根据系统主题自动切换。
-
没有ios的适配-ios我没有开发者账号和设备。期待大神能给打包一下。用cordova就行。
-
毕竟是电脑出题,可能会出现题目比较死板有争议的问题。我已经尽力避免了。但是还有有可能出现-因此不必把这个当成非常严肃的出题软件。
-
没法保存上次进度,也没有记忆曲线等等一切需要本地存储的功能-我没那个技术和时间,但是侧面也正好避免了隐私争议。
-
由于electron的机制,使得打包之后的软件贼大,200m左右。本来网页自身也就几m....安卓版倒是不大,3m不到。
直接把整个网页及其附属文件(根目录下的css,js,words文件夹和index.html、wordlib.json、logo.png)放到网页服务器的根目录底下就行(例如我这是ubuntu系统的apache服务器,就放到/var/www/html里面就行,其他服务器软件同理)。
考虑到有些地方上网不方便,我也制作了一些安装包,
- 安卓系统直接安装apk文件就行,
- win直接下载那两个exe就行,不需要安装。
- linux系统请根据cpu架构选择合适的压缩包,解压后执行start.bat。
- macOS我没测试过,应该就是下载darwin结尾的那两个压缩包之一(视cpu架构而定),解压后把把软件本体拖到访达的“应用程序”里面就行。
这个小软件的使用方法非常简单,打开之后就是选择词库的页面。选择题库之后会加载出来该词库的所有单词。勾选你想考察的单词之后点击开始测试即可。
做题界面的上方是总览,包括出了几个题,当前是第几个题,哪些题做错了。点击“显示错题对应单词”会弹出所有错题对应的单词。
做题界面的上方是做题界面。选择题请选择选项之后点击“检查答案”。
填空题(就是填写假名的题)请在对应的空中填写假名-直接按下面的按钮就行。当前正在填的空是紫色边框,其他空是灰色。写完之后点击“检查答案”。
注意“请根据汉字填写假名”这个题,一个空是可以填写多个假名的,因此一个空写完后请手动切换到下一个空。而“请根据意思填写正确的假名”这个题,一个空只能填写一个假名。因此一个空填完之后会自动切换到下一个空。
“请框中写出正确的汉字”这个题,第一行是假名,第二行是汉字占位符-以"(1)","(2)"表示,第三行是意思。然后请在下方相应占位符所对应的框中写汉字。例如:
わかりません
汉字: (1) かりません
不知道
这个题就是说在 かりません前面有个汉字需要你写,编号是(1)。然后去下方页面(1)右面的框里用手/鼠标写出这个字。再例如
ジェーシーきかく
汉字: JC (1) (2)
[专有词] JC策划公司
这个题,说明JC后面有两个汉字要写,分别编号为(1)、(2)。然后去下方页面分别在(1)、(2)右侧的框里用手/鼠标写出这两个字。
写完之后点击“显示答案”,每个框右侧会显示正确的汉字,同时最底部会出现正确和错误两个按钮。写对了的话就点“正确”,反之点击“错误”。
这个题没法自动检查,因此依赖于你所点击的“正确”还是“错误”。点击了“正确”,系统就认为你做对了;反之点击“错误”,系统就认为你做错了。
点击“设置”之后会出来设置界面-目前只有深色模式选项。默认是“跟随系统变化”。这个得看兼容性,不一定能跟随。去掉“跟随系统变化”的勾之后会显示切换按钮来切换主题。
如上文所示,这个软件是可以自己写词库的。方法是替换或添加根目录下的几个文件。具体分为以下两步。
词库是json文件。格式为
{
"words": [ /*"kanji项不为空的word必须>4个,否则程序可能卡死"*/
...
{
"kana": "あのひと",/*纯假名形式,只能写假名*/
"kanji": "あの人",/*带汉字的形式,可以写假名、汉字和英文字母*/
"character": "名",/*词性*/
"meaning": "那个人",/*单词含义*/
"word_id": 19/*单词id,从0开始编号,依次递增*/
},
...
]
}
请将词库保存在根目录下words文件中。这里假设是words/test_word.json。
注意:
-
win的软件请右键单击“7zip->打开压缩包”(或者类似的表述,总之请不要直接执行,用压缩软件打开它,因为这本身是一个自解压运行的7z格式的压缩包罢了)。这里所说的根目录位于"压缩包\resources\app"。
有的软件(例如winrar)只能打开不能添加,那就直接把他解压,在完成后续动作之后找个单文件制作程序再压回去(或者不压回去也行,打开"压缩包\NihonngoWordsRem.exe"也可)。 -
Linux的软件,这里所说的根目录位于"压缩包/resources/app/"。
-
mac的软件,这里所说的根目录位于"压缩包/NihonngoWordsRem-darwin-xxx/NihonngoWordsRem.app/Contents/Resources/app/"。
-
安卓apk文件有签名不能修改,只能自己重新打包。上述win/mac/linux/android的打包方法在 "other_platforms/android/" 与 "other_platforms/win_linux_mac/" 中
根目录应该是如下结构:
"根目录"
|
├── css
│ ├── adminlte.css
│ ├── adminlte.css.map
│ ├── OverlayScrollbars.min.css
│ └── toggle.css
├── js
│ ├── adminlte.js
│ ├── adminlte.js.map
│ ├── canvas-title.js
│ ├── choice-title.js
│ ├── common.js
│ ├── fill-blank-answer.js
│ ├── fill-blank-kana.js
│ ├── fill-blank-kanji.js
│ ├── jquery-3.6.0.js
│ ├── jquery-3.6.0.min.js
│ ├── jquery-3.6.0.min.js.map
│ ├── sel-word-page.js
│ ├── setting-page.js
│ ├── title-page.js
│ └── utils.js
├── index.html
├── wordlib.json
└── words
├── lesson10.json
├── lesson11.json
├── lesson12.json
├── lesson13.json
...
└── lesson9.json
打开根目录下wordlib.json,并添加
{
"libs": [
...
{
"name": "测试词库", /*这里的内容会出现在一开始选择词库的界面中*/
"filename": "words/test_word.json" /*词库文件位置,本例中应该为words/test_word.json*/
},
...
]
}
如果是网页版,直接刷新就行。
打包的软件的话需要重新打开程序。