- fix: kana vocabulary lessons (#64) (
acdd131
)
- feat: set kanji meaning to incorrect on vocabulary (#63) (
c6f8429
)
- fix: listen to audio display + ci (#62) (
14f4bb0
)
- fix: subject without readings (#61) (
30c891e
)
- ci: pyproject semantic 8 (#59) (
901073d
)
- feat: add subject caching, improve question reading system (#60)
User can download subject in cache using hebikani --download
User can use kanji reading on vocabulary, the answers will be set as inexact as opposed to incorrect. (0a5b294
)
- ci: build new action to build on pypi (#58) (
7a5593d
)
-
fix: png for non utf character were returning 403 (#57)
-
fix: png for non utf character were returning 403
Used SVG instead
-
ci: fix poetry version (
f25cf8e
) -
fix(deps): bump certifi from 2021.10.8 to 2022.12.7 (#45)
Bumps certifi from 2021.10.8 to 2022.12.7.
updated-dependencies:
- dependency-name: certifi dependency-type: indirect ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (eee9eae
)
- fix(deps): bump pyobjc from 8.5.1 to 9.0.1 (#46)
Bumps pyobjc from 8.5.1 to 9.0.1.
updated-dependencies:
- dependency-name: pyobjc dependency-type: direct:production update-type: version-update:semver-major ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (a1ddc33
)
- fix(deps): bump pillow from 9.2.0 to 9.4.0 (#47)
Bumps pillow from 9.2.0 to 9.4.0.
updated-dependencies:
- dependency-name: pillow dependency-type: direct:production update-type: version-update:semver-minor ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (8e66986
)
- fix(deps): bump colorama from 0.4.5 to 0.4.6 (#42)
Bumps colorama from 0.4.5 to 0.4.6.
updated-dependencies:
- dependency-name: colorama dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (d090f3a
)
- fix(deps): bump mutagen from 1.45.1 to 1.46.0 (#41)
Bumps mutagen from 1.45.1 to 1.46.0.
updated-dependencies:
- dependency-name: mutagen dependency-type: direct:production update-type: version-update:semver-minor ...
Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (645dc74
)
- fix(deps): bump pyobjc from 8.5 to 8.5.1 (#40)
Bumps pyobjc from 8.5 to 8.5.1.
updated-dependencies:
- dependency-name: pyobjc dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (4406acf
)
- build(deps): bump sphinx from 5.1.0 to 5.1.1 (#38)
Bumps sphinx from 5.1.0 to 5.1.1.
updated-dependencies:
- dependency-name: sphinx dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (6a28344
)
- feat: add double check feature. It allows you to set a wrong answer t… (#39)
It is useful when you used a synonym that was not in the word list. (ad7dc9b
)
- feat: improve reviews queue management (#37)
Reviews are now taken 10 by 10. When completing an item a new item will be added to the queue.
When an item is wrong, the item will go back at the end of the queue after the shuffle.
It avoid the same question to be asked twice in a row. It makes it easier.
Keeping a queue of 10 itwms (max 20 questions or less with radicals), makes it easier to interrupt a session. (e127f30
)
- ci: use browniebroke/python-semantic-release@fix/version-parsing-commit (#35) (
87ac328
)
- fix(deps): bump sphinx from 5.0.2 to 5.1.0 (#36)
Bumps sphinx from 5.0.2 to 5.1.0.
updated-dependencies:
- dependency-name: sphinx dependency-type: direct:production update-type: version-update:semver-minor ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (57cf58b
)
- fix(deps): bump pygobject from 3.42.1 to 3.42.2 (#34)
Bumps pygobject from 3.42.1 to 3.42.2.
updated-dependencies:
- dependency-name: pygobject dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (2c5d559
)
- fix(deps): bump pillow from 9.1.1 to 9.2.0 (#33)
Bumps pillow from 9.1.1 to 9.2.0.
updated-dependencies:
- dependency-name: pillow dependency-type: direct:production update-type: version-update:semver-minor ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (606eda4
)
- fix(deps): bump requests from 2.28.0 to 2.28.1 (#32)
Bumps requests from 2.28.0 to 2.28.1.
updated-dependencies:
- dependency-name: requests dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (81ef27c
)
- build(deps): bump sphinx from 5.0.1 to 5.0.2 (#30)
Bumps sphinx from 5.0.1 to 5.0.2.
updated-dependencies:
- dependency-name: sphinx dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (1a804a4
)
- fix: lesson arrow navigation stopped working (#31)
Using sys.stdin.raw.read(1) was giving the same input for arrow keys.
Switch it back to what it was before but encoded it to utf8 to get ctrl + c (d0746e0
)
-
feat: prevent sending empty answer and handle ctrl + c in reading (#29)
-
feat: prevent sending empty answer and handle ctrl + c
User can't send empty meaning or reading. A system beep is sent when try to do so.
User can now ctrl + c out of reading questions.
We used the raw.read in linux,osx getch method since windows getch returned binary as well. (732b5c2
)
- fix(deps): bump colorama from 0.4.4 to 0.4.5 (#28)
Bumps colorama from 0.4.4 to 0.4.5.
updated-dependencies:
- dependency-name: colorama dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (0836148
)
- docs: fix doc layout for pypi (#25)
Pypi does not like to use raw html tag. (485f6ea
)
- fix: Roll back threading for audio (#26) (
41e4238
)
- fix(deps): change to python-romkan-ng (#24) (
2fbfebb
)
- docs: add logo and backstory generated by OpenAI (#22)
use html to center logo in README
change relative URL to https url in order to display images on Pypi (6e0bebf
)
- feat: add windows support (#23)
Added mutagen for windows install since playsound has issue playing WaniKani's mp3 Mutagen removes the mp3 tag and that makes it work on windows.
We are not saving temporary files and delete them manually. It was making permission error on windows.
Updated documentation to include Windows install.
Updated tests when removing cache (since we are keeping the files and delete them manually)
Removed tests that were checking that windows is not implemented. (b9d95ed
)
- test: improve test coverage for method that can be tested easily (#21)
We still need to do tests for input_kana and all the while loops. (96ee5df
)
- build(deps): bump sphinx from 5.0.0 to 5.0.1 (#19)
Bumps sphinx from 5.0.0 to 5.0.1.
updated-dependencies:
- dependency-name: sphinx dependency-type: direct:production update-type: version-update:semver-patch ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (a0baeda
)
- fix(deps): bump requests from 2.27.1 to 2.28.0 (#20)
Bumps requests from 2.27.1 to 2.28.0.
updated-dependencies:
- dependency-name: requests dependency-type: direct:production update-type: version-update:semver-minor ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (06ec8e2
)
-
build(deps): set coverage as a dev dependency (#18)
-
ci: pinned semantic release to v7.28.1
See python-semantic-release/python-semantic-release#442 (48bf21d
)
- build(deps): bump sphinx from 4.5.0 to 5.0.0 (#17)
Bumps sphinx from 4.5.0 to 5.0.0.
updated-dependencies:
- dependency-name: sphinx dependency-type: direct:production update-type: version-update:semver-major ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (4154f58
)
- build(deps): bump coverage from 6.3.2 to 6.4 (#16)
Bumps coverage from 6.3.2 to 6.4.
updated-dependencies:
- dependency-name: coverage dependency-type: direct:production update-type: version-update:semver-minor ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (6332efd
)
- ci: depandabot will prefix commit with fix or build (#15)
It will prefix with fix for upgrade on external production library
It will prefix with build for upgrade on external development library (cc86846
)
- docs: add chart documentation and fix doc title (#12) (
9cec866
)
- fix(deps): Bump pillow from 9.1.0 to 9.1.1 (#14)
Bumps pillow from 9.1.0 to 9.1.1.
updated-dependencies:
- dependency-name: pillow dependency-type: direct:production ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (10e6a54
)
- fix(deps): Bump pillow from 9.1.0 to 9.1.1 (#13)
Bumps pillow from 9.1.0 to 9.1.1.
updated-dependencies:
- dependency-name: pillow dependency-type: direct:production ...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (9b48cb9
)
- feat: Vertical histogram to display next reviews (#11)
- "summary" displays a vertical histogram of the daily review plan.
- Add test for the histogram and the summary output
- When no next reviews for the day are available display: "No more reviews for today"
- Made a new demo.gif with the new summary output
- Add python freezegun to help testing the histogram (mock date) (
67fc8a8
)
- refactor: change variable named katana to katakana (#10) (
3fc723f
)
- docs: change the doc title name doc to HebiKani (#8) (
0435831
)
- feat: hard mode requires correct kana (#9)
In hard mode when a question has a reading in katakana: do not accept its hiragana alternative.
E.g: ベッドの下 answer should be ベッドのした and not べっどのした.
In normal mode both ベッドのした and べっどのした will work. (3b0b834
)
- ci: use relekang/python-semantic-release action (#5)
The previous action could not upload a release to pypi. (951fc4e
)
- ci: typo in quality badge branch condition (#3)
It was looking for a branch named master instead of main (41798fb
)
- ci: setup semantic-release (#2)
Improve github actions workflows
- do quality check
- then create badge and publish on pypi and github
All the changes on the main branch need to come from PR (e3ccb15
)
-
docs: add a cli demo GIF in both doc and readme (#6) (
888d458
) -
docs: add the readthedocs badge on README.md (
623467c
)
- fix: hard mode does not work with inexact answers (#4)
Answers are considered inexact in hard mode when:
- For a question with 1 acceptable answer:
- Used an unacceptable answer (E.g: onyumi instead of kunyomi)
- For a question with 2 or more acceptable answer:
- Used the correct number of answers
- One or all of them are unacceptable answers.
- ci: flake8 is taking too long to run
- Ignore .venv and build directory
- add semantic workflow to check semantic title (will be working for future PR) (
20df7ca
)
- fix: do not run on debian based system
Add dependencies to run on debian based system.
Add doc to explain dependencies that needs to be added. (08cd8da
)
- refactor: renamed project from WaniKani CLI to HebiKani (#7)
You will need to import from hebikani instead of wanikani_cli
BREAKING CHANGE: the library name on PIP is not wanikani-cli anymore. (f9a8ebd
)
- style: no new line at the end docs/sources/conf.py (
e451d01
)
- test: github action fails due to PyGObject
Change the testing OS to macos-latest since it does not requires extra (2554fb0
)
- doc: Add readthedocs config file
The doc was not building properly. Add a requirements.txt in doc.
Contains only doc dependency. (c935484
)
-
fix typo on badge name in README.rst (
9666796
) -
Add coverage badge through gist and shield.io
Improve github actions to cache poetry install (unless it need new lib) (db64777
)
- Change http_get, post and put to one method
Updated test coverage (cf8c6e7
)
-
Colorized lessons mnemonics as well (
b38d04e
) -
Replaced WaniKani tags by color in mnemonics. (
b6e6e31
) -
Improve lesson layout. Pressing enter goes right.
Improve display layout when doing lessons.
Display number of lesson done and left to do. (4e44a23
)
- Clear the audio cache when the program ends.
It was working only when the user used ctrl + c (bb50ddf
)
-
Update README warning. (
933d0df
) -
Cache audio during and play it in a thread.
It is useless to download X times the same audio. We cache it during our first download.
It will change the alternate method a little bit since caching keeps the same audio gender.
Audio are download at the begining of a lessons (with extra character).
Audio are played in a different thread. (6c174e9
)
- Display number of readings in hard mode.
Some kanji have 2 readings while their vocab has only one. e.g.: 谷. The readings for the kanji are: たに、や. But the vocabulary only needs one answer: たに.
It feels fairer that way. (67bed6c
)
-
Fix forgot to rename _subject_per_ids in test (
5e89e6f
) -
Added lessons
Can navigate through tab to do lessons Send the lesson results back to API
Added cache when loading subjects in lesson. (9ed8316
)
-
Fix todo list in README (
1de68da
) -
fix readme layout for code display (
6a472e2
) -
Improved revewing interface and added mnemonic.
- Added --limit argument to limit the number of reviews in a session. The max is 500 and the min is 1.
- Added --mnemonics to diplay question mnemonic when making a mistake
- Catch "ctrl +c" to display an exit message. (
0c0317e
)
-
Remove alpha notice and change it to experimental release. (
fae56f1
) -
Send reviews back to WaniKani API.
Added a --dry-run for testing purposes. This mode does not send anything back to the API.
Added a hard mode that will require the user to input all the prounonciation of a given kanji. E.g: なに,なん for 何. The order does not matter.
Changed the entire architecture to handle subject. Removed Kanji, Vocabulary and Radical class.
Create a class to handle Subject update. (c85abac
)
- Add a an answer manager object to solve questions
Check for four different types of answers (Correct, Incorrect, Inexact, A bit off):
- Correct answer (right)
- Incorrect answer (wrong)
- Inexact applies only for reading. When using an non acceptable answer. E.g kunyomi instead of onyomi. Inexact methods are calculated through python difflib library. We set a constant ratio to 0.8.
- A bit off applies only for meaning. E.g: skillfull instead of skillful
When an answer is inexact we ask the user for the exact meaning. When an answer is bit off we ask the user to validate his answer.
Moved enums in a file named typing.py (7b431f1
)
-
Fix typo in README.rst (
07ce361
) -
Bump version number
We changed the project folder structure. (d8fddff
)
- Use poetry instead of setuptools
- Change package structure
- Add black
Poetry makes it easier to manage dependencies versions and build.
Add specifc lib requirements for Darwin (pyobjc).
Improve README.rst.
Use poetry to generate requirements.txt. (fd915d5
)
-
github actions seems to work with setup.py develop (
c0b615f
) -
Use pip instead of setup.py in Github actions (
1fcc5ac
) -
Add github actions for tests
Runs pytes and flake8 on Python 3.9 (928e21c
)
- Add .vscode in .gitignore
Added a comment for the Audi class definition (038de87
)
- Merge pull request #1 from RBrearton/main
Small refactoring changes
- Replaced the deprecated OptionParser with the recommended ArgumentParser module.
- Removed COMMANDS, since we can work this out from the Client class.
- Added type hints.
- Added to a few different docstrings, renamed some variables and moved stuff around. (
d150b16
)
-
Merge branch 'main' into main (
7bebd74
) -
Added audio features with playsound.
Created a list of Audio objects when available from the API. Only play MP3 and ignores OGG. Changed optparse to argparse (the former being deprecated)
- Added option to autoplay the sound or to be asked.
- Added silent mode
- Can select female, male, alternate or random voice actors (
25f3a6a
)
-
Added type hints, changed some docs (
254c8aa
) -
Minor changes to please pylint (
9d3a069
) -
CLI can now infer what commands have been implemented (
b4bd481
) -
Removed deprecated OptionParser dependency (
c6a7b62
) -
Improve user interface by cleaning the interface.
- Clear the console after each card (ask for user input)
- Display number of reviews left
- Display percentage of correct and wrong answers (
4f87ebd
)
- Feature display ASCII art for non UTF character.
We download the smallest PNG the API offers (32x32) then transform it to ASCCI Art thanks to ascii_magic and pillow. We only do this for radical without a UTF entry.
Added missing libraries in setup.cfg:
- romkan
- ascii_magic
- pillow ([`677c79c`](https://github.com/ajite/hebikani/commit/677c79cb8d4a605621f2b72e3821183d5a3cf694))
- Add a romaji to kana input method
The user will now have his lower case kana converted to hiragana and upper case converted to hiragana while answering questions.
Restructured the library and add a console script "wanikani-cli".
Quick fix to the README to display code-block properly. (56e7008
)
- Initial commit.
The client can check your summary.
Start a review session.
Does not send review results to API. (083626f
)