Partial port of mdict-utils. Tested in Linux.
The main purpose of this port is to support the mdict version of Jitendex and as such, it only contains a subset of the original mdict-utils functionality. Namely, it does no encrypting and assumes the version to be 2.0.
Oracle testing requires mdict-utils installed. For instance, create a venv at the repo root and run:
pip install mdict-utils
- Because the encoding/decoding depends on the current date, there will be some diff with the commited fixtures if you run this in the future (!). The only thing that matters is that
mdictand this repo produce the same artifacts on a given date. - Because of differences between python zlib and the c# equivalent, the bytes of the compressed artifact may not exactly match (usually happens after a certain size). This should not matter, the sizes will be approximately equal, and they will decompress to the same data (but oracle test will fail if you compare the compressed artifacts!).
- spec
- A precursor of mdict-utils: mdict-analysis
- pyglossary has some files about mdict
- https://github.com/cia1099/mdict
- https://github.com/terasum/js-mdict
- The skeleton of this repo was from unit testing tutorial
- Do decryption (?)
- Done for level=2
- Release binaries (?)
- Explore how to use as a library (writing a glossary from memory instead of disk)
- How does one use perf in c#?
- CI run on bigendian: GH doesn't support it easily
- Doc generator: Tried docfx but it requires either a very specific file tree, or some noisy extra md files. And the doc is bloated...
- How good is pyglossary for wty/Jitendex? Test in goldendict
- Stardict from mdict artifacts for Jitendex?
- How hard is it to write some code that takes a Yomitan structured content thingy and returns html at home
Copyright (C) 2026 MDictUtils Authors
MDictUtils is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3.
MDictUtils is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with MDictUtils. If not, see https://www.gnu.org/licenses/.