mdtt


Namemdtt JSON
Version 2.0.2 PyPI version JSON
download
home_pageNone
SummaryMDx Dict Trans ToolKit
upload_time2025-09-01 07:03:03
maintainerNone
docs_urlNone
authorLibukai
requires_python>=3.13
licenseMIT
keywords mdict dictionary mdx mdd pack unpack
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # MDTT - MDx Dict Trans ToolKit

A modern Python 3.13+ tool for packing and unpacking MDict dictionary files (.mdx/.mdd) with advanced features and intuitive CLI interface.

English | [ไธญๆ–‡](https://github.com/libukai/mdtt/blob/master/README-zh.md)

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Python](https://img.shields.io/badge/Python-3.13+-blue.svg)](https://www.python.org/downloads/)
[![Code style: ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)

> **Version 2.0 - Complete Rewrite:**
> - ๐Ÿ†• **Modern Subcommand Architecture** - Clean CLI interface similar to `git` and `docker`
> - ๐Ÿ†• **TOML Metadata Management** - User-friendly `.meta.toml` configuration files with auto-detection
> - ๐Ÿ†• **Rich Information Display** - Beautiful formatted output with JSON/TOML export options
> - ๐Ÿ†• **Comprehensive Testing** - Full test suite including unit, integration, and real-file testing
> - ๐Ÿ†• **Enhanced Query System** - Smart output file naming and custom file specification
> - ๐Ÿ†• **Format Conversion Tools** - Built-in converters between text, database, and MDict formats

## Key Features

- โœ… **Full MDict Support**: Read/Write MDict 2.0, Read MDict 3.0, supports encrypted dictionaries
- โœ… **Multiple Output Formats**: MDX/MDD files, SQLite databases, plain text, split files
- โœ… **Intelligent CLI**: Context-aware commands with comprehensive help and error handling
- โœ… **Metadata System**: Automatic `.meta.toml` file detection and generation
- โœ… **Advanced Extraction**: Split by alphabet, custom chunk sizes, metadata export
- โœ… **Developer Friendly**: Modern Python 3.13+, uv package manager, comprehensive type hints

## Installation

### From PyPI (Recommended)
```bash
pip install mdtt
```

### Development Setup
```bash
git clone https://github.com/likai/mdtt.git
cd mdtt
uv sync  # Install dependencies with uv (recommended)
# or: pip install -e ".[dev]"  # Alternative with pip
```

### Requirements
- Python 3.13+ (required for modern typing features)
- Optional: `uv` package manager for faster dependency resolution

## Quick Start

### View Available Commands
```bash
mdtt --help
```

### Extract a Dictionary
```bash
# Basic extraction (outputs to current directory with .txt and .meta.toml)
mdtt extract my_dict.mdx

# Extract to specific directory
mdtt extract my_dict.mdx -o ./output

# Extract as database
mdtt extract my_dict.mdx --db

# Extract without metadata file
mdtt extract my_dict.mdx --no-meta
```

### Create a Dictionary

1. **Create your content file** (`my_dict.txt`):
```
apple
A round fruit that grows on trees.
</>
banana
A long curved yellow fruit.
</>
```

2. **Create metadata file** (`my_dict.meta.toml`):
```toml
[dictionary]
title = "My Custom Dictionary"
description = "A simple English dictionary"
```

3. **Pack the dictionary**:
```bash
# Auto-detect output filename
mdtt pack -a my_dict.txt

# Or specify explicit output name  
mdtt pack -a my_dict.txt my_dict.mdx
```

### Query and Information

```bash
# Query a word (displays result and saves to apple.html)
mdtt query apple my_dict.mdx

# Query with custom output filename
mdtt query apple my_dict.mdx -o definitions/apple_def.html

# Query phrases (automatically creates safe filenames)
mdtt query "can't believe" my_dict.mdx  # Creates can_t_believe.html

# Show dictionary information (rich formatted output)
mdtt info my_dict.mdx

# Export information as JSON or TOML
mdtt info my_dict.mdx --format json
mdtt info my_dict.mdx --format toml

# List dictionary keys with filtering
mdtt keys my_dict.mdx --limit 100
mdtt keys my_dict.mdx --pattern "apple*"
```

## Advanced Usage

### Working with TOML Metadata

Create `.meta.toml` files for automatic metadata detection:

```toml
[dictionary]
title = "Oxford Advanced Dictionary"
description = """
Comprehensive English dictionary with detailed definitions.
Perfect for students and professionals.
"""

# ๅ…ถไป–ๅฑžๆ€ง๏ผˆencoding, version ็ญ‰๏ผ‰ไฝฟ็”จ็ณป็ปŸ้ป˜่ฎคๅ€ผ
# ๅฆ‚้œ€่‡ชๅฎšไน‰๏ผŒๅฏๆทปๅŠ  [advanced] ้ƒจๅˆ†
```

### Multiple Input Sources

```bash
# Pack multiple files (auto-detect output name)
mdtt pack -a part1.txt -a part2.txt

# Pack with explicit output name
mdtt pack -a part1.txt -a part2.txt combined.mdx

# Use custom metadata
mdtt pack -a source.txt -m custom.meta.toml

# Pack media resources (auto-detects .mdd extension)
mdtt pack -a images_folder/
```

### Format Conversion & Import Tools

```bash
# Convert between text and database formats
mdtt convert txt-to-db dict.txt dict.db
mdtt convert db-to-txt dict.db dict.txt

# TBX (Translation Memory) to MDict conversion
# Convert TBX/TMX translation memory files to MDict format
python tests/script_convert_tbx_to_mdict.py input.tbx output.mdx
# Features:
# - Automatic metadata generation from TBX header
# - CSS styling for professional appearance  
# - Support for multiple languages and terminology
```

### Advanced Query Options

```bash
# Query with automatic HTML output (creates word.html)
mdtt query "hello world" my_dict.mdx

# Query with custom output file
mdtt query apple my_dict.mdx -o definitions/apple.html

# Query encrypted dictionaries
mdtt query word encrypted.mdx --passcode mypassword

# Special characters in queries are handled automatically
# e.g., "can't" becomes "can_t.html"
mdtt query "can't" my_dict.mdx
```

### Advanced Extraction Options

```bash
# Split by alphabet (with metadata)
mdtt extract large_dict.mdx --split-az

# Split into N files
mdtt extract large_dict.mdx --split-n 5

# Handle encrypted dictionaries
mdtt extract encrypted.mdx --passcode mypassword

# Extract to specific directory without metadata
mdtt extract dict.mdx -o ./output --no-meta
```

## Command Reference

| Command | Purpose | Key Features | Options |
|---------|---------|-------------|---------|
| `extract` | Extract MDX/MDD files with metadata export | Auto-metadata export, split options, database output | `-o` (output dir), `--db`, `--no-meta`, `--split-az`, `--split-n` |
| `pack` | Create MDX/MDD from sources (smart output naming) | Auto-detects output filename, metadata file discovery | `-a` (add source), `-m` (metadata file), multiple sources |
| `query` | Search words with smart HTML file output | Safe filename generation, custom output paths | `-o` (output file), `--passcode`, auto HTML creation |
| `info` | Display rich dictionary information | Beautiful formatting, multiple export formats | `--format` (text/json/toml), comprehensive metadata |
| `keys` | List and filter dictionary keys | Pattern matching, pagination, sampling | `--limit`, `--pattern`, memory-efficient streaming |
| `convert` | Convert between formats | Text โ†” Database conversion, preservation of structure | `txt-to-db`, `db-to-txt`, maintains indexes |

### Special Tools
- **TBX Converter**: `tests/script_convert_tbx_to_mdict.py` - Convert TBX/TMX translation memories to MDict format

## Testing

The project includes comprehensive testing:

```bash
# Run all tests
tests/run_tests.sh all

# Run specific test types
tests/run_tests.sh unit          # Fast unit tests
tests/run_tests.sh integration   # Tests with real files
tests/run_tests.sh -c            # With coverage report

# Shell integration test
tests/test_integration.sh
```

## MDX File Format

An `.mdx` file consists of:

1. **Header**: Dictionary metadata (Title, Description, Version, etc.) in UTF-16LE XML
2. **Keyword Section**: Compressed blocks of keywords with index for quick lookup
3. **Record Section**: Compressed blocks of dictionary entries (HTML content)

This structure allows efficient random access even in large dictionaries with millions of entries.

## Development

### Project Architecture

The project follows a modern, modular architecture:

```
src/mdict_utils/
โ”œโ”€โ”€ __main__.py          # CLI entry point with subcommand routing
โ”œโ”€โ”€ commands/            # Individual command implementations
โ”‚   โ”œโ”€โ”€ extract.py       # Dictionary extraction with metadata
โ”‚   โ”œโ”€โ”€ pack.py          # Dictionary packing with auto-detection
โ”‚   โ”œโ”€โ”€ query.py         # Word lookup with smart file output
โ”‚   โ”œโ”€โ”€ info.py          # Rich information display
โ”‚   โ”œโ”€โ”€ keys.py          # Key listing and filtering
โ”‚   โ””โ”€โ”€ convert.py       # Format conversion utilities
โ”œโ”€โ”€ base/                # Low-level MDict format implementation
โ”œโ”€โ”€ metadata.py          # TOML metadata management system
โ”œโ”€โ”€ reader.py           # High-level reading interface
โ””โ”€โ”€ writer.py           # High-level writing interface
```

**Core Statistics:**
- ~4,700 lines of Python code
- 6 main commands with consistent interface
- Comprehensive test suite (38+ tests)
- Full type hints and documentation

### Development Setup

```bash
git clone https://github.com/likai/mdtt.git
cd mdtt
uv sync  # Install dependencies and create virtual environment
```

### Code Quality & Testing

```bash
# Code quality checks
uv run ruff check         # Linting (pycodestyle, pyflakes, security, etc.)
uv run ruff format        # Code formatting
uv run pyright          # Static type checking

# Testing options
tests/run_tests.sh all           # Complete test suite
tests/run_tests.sh unit          # Fast unit tests only  
tests/run_tests.sh integration   # Integration tests with real files
tests/run_tests.sh -c            # Run with coverage report
tests/test_integration.sh        # Shell-based integration testing

# Direct pytest usage
uv run pytest                   # Run all tests
uv run pytest -m "not slow"     # Skip performance tests
```

### Current Status

- โœ… **Core Functionality**: All major features implemented and tested
- โœ… **Modern CLI**: Complete subcommand architecture with rich help
- โœ… **TOML Metadata**: Full implementation with auto-detection
- โœ… **Test Coverage**: Comprehensive testing including real dictionary files
- โš ๏ธ **Code Quality**: Minor linting issues in legacy base modules (308 warnings)
- ๐Ÿ”„ **Active Development**: Recent commits include TBX converter and enhanced query system


## Acknowledgments

This project is built upon and significantly evolved from the original [mdict-utils](https://github.com/liuyug/mdict-utils) by Yugang LIU. While MDTT has been extensively rewritten with modern architecture, new features, and enhanced functionality, we acknowledge the foundational work that made this project possible.

Key differences in MDTT:
- Complete rewrite with modern Python 3.13+ and subcommand architecture
- TOML-based metadata management system  
- Enhanced CLI interface with comprehensive help
- Extensive test suite with real dictionary file testing
- New features: TBX conversion, smart query system, format conversion tools

### Migration from mdict-utils v1.x

If you're upgrading from the original mdict-utils v1.x:

1. **Update command syntax** to use subcommands
2. **Replace** `-t`/`-d` flags with `.meta.toml` files
3. **Use** `mdtt info` instead of `mdtt -m`
4. **Benefit** from improved help, error messages, and output formatting

## Reference

- [MDict Format Analysis](https://bitbucket.org/xwang/mdict-analysis)
- [Write MDict](https://github.com/zhansliu/writemdict)

## License

MIT License - see LICENSE file for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mdtt",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.13",
    "maintainer_email": null,
    "keywords": "mdict, dictionary, mdx, mdd, pack, unpack",
    "author": "Libukai",
    "author_email": "Libukai <xiaobuyao@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/b8/ce/57c3dc66075bc06121eb96565d097a903ced3afc8abdb019aa12def36e07/mdtt-2.0.2.tar.gz",
    "platform": null,
    "description": "# MDTT - MDx Dict Trans ToolKit\n\nA modern Python 3.13+ tool for packing and unpacking MDict dictionary files (.mdx/.mdd) with advanced features and intuitive CLI interface.\n\nEnglish | [\u4e2d\u6587](https://github.com/libukai/mdtt/blob/master/README-zh.md)\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Python](https://img.shields.io/badge/Python-3.13+-blue.svg)](https://www.python.org/downloads/)\n[![Code style: ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n\n> **Version 2.0 - Complete Rewrite:**\n> - \ud83c\udd95 **Modern Subcommand Architecture** - Clean CLI interface similar to `git` and `docker`\n> - \ud83c\udd95 **TOML Metadata Management** - User-friendly `.meta.toml` configuration files with auto-detection\n> - \ud83c\udd95 **Rich Information Display** - Beautiful formatted output with JSON/TOML export options\n> - \ud83c\udd95 **Comprehensive Testing** - Full test suite including unit, integration, and real-file testing\n> - \ud83c\udd95 **Enhanced Query System** - Smart output file naming and custom file specification\n> - \ud83c\udd95 **Format Conversion Tools** - Built-in converters between text, database, and MDict formats\n\n## Key Features\n\n- \u2705 **Full MDict Support**: Read/Write MDict 2.0, Read MDict 3.0, supports encrypted dictionaries\n- \u2705 **Multiple Output Formats**: MDX/MDD files, SQLite databases, plain text, split files\n- \u2705 **Intelligent CLI**: Context-aware commands with comprehensive help and error handling\n- \u2705 **Metadata System**: Automatic `.meta.toml` file detection and generation\n- \u2705 **Advanced Extraction**: Split by alphabet, custom chunk sizes, metadata export\n- \u2705 **Developer Friendly**: Modern Python 3.13+, uv package manager, comprehensive type hints\n\n## Installation\n\n### From PyPI (Recommended)\n```bash\npip install mdtt\n```\n\n### Development Setup\n```bash\ngit clone https://github.com/likai/mdtt.git\ncd mdtt\nuv sync  # Install dependencies with uv (recommended)\n# or: pip install -e \".[dev]\"  # Alternative with pip\n```\n\n### Requirements\n- Python 3.13+ (required for modern typing features)\n- Optional: `uv` package manager for faster dependency resolution\n\n## Quick Start\n\n### View Available Commands\n```bash\nmdtt --help\n```\n\n### Extract a Dictionary\n```bash\n# Basic extraction (outputs to current directory with .txt and .meta.toml)\nmdtt extract my_dict.mdx\n\n# Extract to specific directory\nmdtt extract my_dict.mdx -o ./output\n\n# Extract as database\nmdtt extract my_dict.mdx --db\n\n# Extract without metadata file\nmdtt extract my_dict.mdx --no-meta\n```\n\n### Create a Dictionary\n\n1. **Create your content file** (`my_dict.txt`):\n```\napple\nA round fruit that grows on trees.\n</>\nbanana\nA long curved yellow fruit.\n</>\n```\n\n2. **Create metadata file** (`my_dict.meta.toml`):\n```toml\n[dictionary]\ntitle = \"My Custom Dictionary\"\ndescription = \"A simple English dictionary\"\n```\n\n3. **Pack the dictionary**:\n```bash\n# Auto-detect output filename\nmdtt pack -a my_dict.txt\n\n# Or specify explicit output name  \nmdtt pack -a my_dict.txt my_dict.mdx\n```\n\n### Query and Information\n\n```bash\n# Query a word (displays result and saves to apple.html)\nmdtt query apple my_dict.mdx\n\n# Query with custom output filename\nmdtt query apple my_dict.mdx -o definitions/apple_def.html\n\n# Query phrases (automatically creates safe filenames)\nmdtt query \"can't believe\" my_dict.mdx  # Creates can_t_believe.html\n\n# Show dictionary information (rich formatted output)\nmdtt info my_dict.mdx\n\n# Export information as JSON or TOML\nmdtt info my_dict.mdx --format json\nmdtt info my_dict.mdx --format toml\n\n# List dictionary keys with filtering\nmdtt keys my_dict.mdx --limit 100\nmdtt keys my_dict.mdx --pattern \"apple*\"\n```\n\n## Advanced Usage\n\n### Working with TOML Metadata\n\nCreate `.meta.toml` files for automatic metadata detection:\n\n```toml\n[dictionary]\ntitle = \"Oxford Advanced Dictionary\"\ndescription = \"\"\"\nComprehensive English dictionary with detailed definitions.\nPerfect for students and professionals.\n\"\"\"\n\n# \u5176\u4ed6\u5c5e\u6027\uff08encoding, version \u7b49\uff09\u4f7f\u7528\u7cfb\u7edf\u9ed8\u8ba4\u503c\n# \u5982\u9700\u81ea\u5b9a\u4e49\uff0c\u53ef\u6dfb\u52a0 [advanced] \u90e8\u5206\n```\n\n### Multiple Input Sources\n\n```bash\n# Pack multiple files (auto-detect output name)\nmdtt pack -a part1.txt -a part2.txt\n\n# Pack with explicit output name\nmdtt pack -a part1.txt -a part2.txt combined.mdx\n\n# Use custom metadata\nmdtt pack -a source.txt -m custom.meta.toml\n\n# Pack media resources (auto-detects .mdd extension)\nmdtt pack -a images_folder/\n```\n\n### Format Conversion & Import Tools\n\n```bash\n# Convert between text and database formats\nmdtt convert txt-to-db dict.txt dict.db\nmdtt convert db-to-txt dict.db dict.txt\n\n# TBX (Translation Memory) to MDict conversion\n# Convert TBX/TMX translation memory files to MDict format\npython tests/script_convert_tbx_to_mdict.py input.tbx output.mdx\n# Features:\n# - Automatic metadata generation from TBX header\n# - CSS styling for professional appearance  \n# - Support for multiple languages and terminology\n```\n\n### Advanced Query Options\n\n```bash\n# Query with automatic HTML output (creates word.html)\nmdtt query \"hello world\" my_dict.mdx\n\n# Query with custom output file\nmdtt query apple my_dict.mdx -o definitions/apple.html\n\n# Query encrypted dictionaries\nmdtt query word encrypted.mdx --passcode mypassword\n\n# Special characters in queries are handled automatically\n# e.g., \"can't\" becomes \"can_t.html\"\nmdtt query \"can't\" my_dict.mdx\n```\n\n### Advanced Extraction Options\n\n```bash\n# Split by alphabet (with metadata)\nmdtt extract large_dict.mdx --split-az\n\n# Split into N files\nmdtt extract large_dict.mdx --split-n 5\n\n# Handle encrypted dictionaries\nmdtt extract encrypted.mdx --passcode mypassword\n\n# Extract to specific directory without metadata\nmdtt extract dict.mdx -o ./output --no-meta\n```\n\n## Command Reference\n\n| Command | Purpose | Key Features | Options |\n|---------|---------|-------------|---------|\n| `extract` | Extract MDX/MDD files with metadata export | Auto-metadata export, split options, database output | `-o` (output dir), `--db`, `--no-meta`, `--split-az`, `--split-n` |\n| `pack` | Create MDX/MDD from sources (smart output naming) | Auto-detects output filename, metadata file discovery | `-a` (add source), `-m` (metadata file), multiple sources |\n| `query` | Search words with smart HTML file output | Safe filename generation, custom output paths | `-o` (output file), `--passcode`, auto HTML creation |\n| `info` | Display rich dictionary information | Beautiful formatting, multiple export formats | `--format` (text/json/toml), comprehensive metadata |\n| `keys` | List and filter dictionary keys | Pattern matching, pagination, sampling | `--limit`, `--pattern`, memory-efficient streaming |\n| `convert` | Convert between formats | Text \u2194 Database conversion, preservation of structure | `txt-to-db`, `db-to-txt`, maintains indexes |\n\n### Special Tools\n- **TBX Converter**: `tests/script_convert_tbx_to_mdict.py` - Convert TBX/TMX translation memories to MDict format\n\n## Testing\n\nThe project includes comprehensive testing:\n\n```bash\n# Run all tests\ntests/run_tests.sh all\n\n# Run specific test types\ntests/run_tests.sh unit          # Fast unit tests\ntests/run_tests.sh integration   # Tests with real files\ntests/run_tests.sh -c            # With coverage report\n\n# Shell integration test\ntests/test_integration.sh\n```\n\n## MDX File Format\n\nAn `.mdx` file consists of:\n\n1. **Header**: Dictionary metadata (Title, Description, Version, etc.) in UTF-16LE XML\n2. **Keyword Section**: Compressed blocks of keywords with index for quick lookup\n3. **Record Section**: Compressed blocks of dictionary entries (HTML content)\n\nThis structure allows efficient random access even in large dictionaries with millions of entries.\n\n## Development\n\n### Project Architecture\n\nThe project follows a modern, modular architecture:\n\n```\nsrc/mdict_utils/\n\u251c\u2500\u2500 __main__.py          # CLI entry point with subcommand routing\n\u251c\u2500\u2500 commands/            # Individual command implementations\n\u2502   \u251c\u2500\u2500 extract.py       # Dictionary extraction with metadata\n\u2502   \u251c\u2500\u2500 pack.py          # Dictionary packing with auto-detection\n\u2502   \u251c\u2500\u2500 query.py         # Word lookup with smart file output\n\u2502   \u251c\u2500\u2500 info.py          # Rich information display\n\u2502   \u251c\u2500\u2500 keys.py          # Key listing and filtering\n\u2502   \u2514\u2500\u2500 convert.py       # Format conversion utilities\n\u251c\u2500\u2500 base/                # Low-level MDict format implementation\n\u251c\u2500\u2500 metadata.py          # TOML metadata management system\n\u251c\u2500\u2500 reader.py           # High-level reading interface\n\u2514\u2500\u2500 writer.py           # High-level writing interface\n```\n\n**Core Statistics:**\n- ~4,700 lines of Python code\n- 6 main commands with consistent interface\n- Comprehensive test suite (38+ tests)\n- Full type hints and documentation\n\n### Development Setup\n\n```bash\ngit clone https://github.com/likai/mdtt.git\ncd mdtt\nuv sync  # Install dependencies and create virtual environment\n```\n\n### Code Quality & Testing\n\n```bash\n# Code quality checks\nuv run ruff check         # Linting (pycodestyle, pyflakes, security, etc.)\nuv run ruff format        # Code formatting\nuv run pyright          # Static type checking\n\n# Testing options\ntests/run_tests.sh all           # Complete test suite\ntests/run_tests.sh unit          # Fast unit tests only  \ntests/run_tests.sh integration   # Integration tests with real files\ntests/run_tests.sh -c            # Run with coverage report\ntests/test_integration.sh        # Shell-based integration testing\n\n# Direct pytest usage\nuv run pytest                   # Run all tests\nuv run pytest -m \"not slow\"     # Skip performance tests\n```\n\n### Current Status\n\n- \u2705 **Core Functionality**: All major features implemented and tested\n- \u2705 **Modern CLI**: Complete subcommand architecture with rich help\n- \u2705 **TOML Metadata**: Full implementation with auto-detection\n- \u2705 **Test Coverage**: Comprehensive testing including real dictionary files\n- \u26a0\ufe0f **Code Quality**: Minor linting issues in legacy base modules (308 warnings)\n- \ud83d\udd04 **Active Development**: Recent commits include TBX converter and enhanced query system\n\n\n## Acknowledgments\n\nThis project is built upon and significantly evolved from the original [mdict-utils](https://github.com/liuyug/mdict-utils) by Yugang LIU. While MDTT has been extensively rewritten with modern architecture, new features, and enhanced functionality, we acknowledge the foundational work that made this project possible.\n\nKey differences in MDTT:\n- Complete rewrite with modern Python 3.13+ and subcommand architecture\n- TOML-based metadata management system  \n- Enhanced CLI interface with comprehensive help\n- Extensive test suite with real dictionary file testing\n- New features: TBX conversion, smart query system, format conversion tools\n\n### Migration from mdict-utils v1.x\n\nIf you're upgrading from the original mdict-utils v1.x:\n\n1. **Update command syntax** to use subcommands\n2. **Replace** `-t`/`-d` flags with `.meta.toml` files\n3. **Use** `mdtt info` instead of `mdtt -m`\n4. **Benefit** from improved help, error messages, and output formatting\n\n## Reference\n\n- [MDict Format Analysis](https://bitbucket.org/xwang/mdict-analysis)\n- [Write MDict](https://github.com/zhansliu/writemdict)\n\n## License\n\nMIT License - see LICENSE file for details.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "MDx Dict Trans ToolKit",
    "version": "2.0.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/likai/mdtt/issues",
        "Documentation": "https://github.com/likai/mdtt#readme",
        "Homepage": "https://github.com/likai/mdtt"
    },
    "split_keywords": [
        "mdict",
        " dictionary",
        " mdx",
        " mdd",
        " pack",
        " unpack"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d6fa038cb3d4e0e41104485578d9c17d7f9d186f24330580647acb38d244c332",
                "md5": "e7ab09d5a3db2a3d72d54366212e04b8",
                "sha256": "98696f5cb11c05641a97843776abb3b9f9722d4204a4cb310b1739d102c429ad"
            },
            "downloads": -1,
            "filename": "mdtt-2.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e7ab09d5a3db2a3d72d54366212e04b8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.13",
            "size": 52911,
            "upload_time": "2025-09-01T07:03:02",
            "upload_time_iso_8601": "2025-09-01T07:03:02.197536Z",
            "url": "https://files.pythonhosted.org/packages/d6/fa/038cb3d4e0e41104485578d9c17d7f9d186f24330580647acb38d244c332/mdtt-2.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b8ce57c3dc66075bc06121eb96565d097a903ced3afc8abdb019aa12def36e07",
                "md5": "97024480e2da7d94364c9bf8b4c6bed6",
                "sha256": "dd8ae4845fd6f75a2d1be9163b4a20674e914ce33aaca913942ef2d3ace9dda0"
            },
            "downloads": -1,
            "filename": "mdtt-2.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "97024480e2da7d94364c9bf8b4c6bed6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.13",
            "size": 44495,
            "upload_time": "2025-09-01T07:03:03",
            "upload_time_iso_8601": "2025-09-01T07:03:03.469464Z",
            "url": "https://files.pythonhosted.org/packages/b8/ce/57c3dc66075bc06121eb96565d097a903ced3afc8abdb019aa12def36e07/mdtt-2.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-01 07:03:03",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "likai",
    "github_project": "mdtt",
    "github_not_found": true,
    "lcname": "mdtt"
}
        
Elapsed time: 2.12171s