No description
- Created .cursorignore and .gitignore files to ignore specific file patterns and directories. - Added check_clue_numbering.py to load and analyze crossword puzzles, displaying clue counts and dimensions. - Introduced check_json_coords.py for validating JSON data against puzzle dimensions and clues. - Implemented compare_puzzles.py to compare different puzzle files and their clue structures. - Developed debug_fill.py and diagnose_cursewords.py for debugging puzzle fills and clue numbering. - Added diagnose_puz.py for in-depth inspection of puzzle files and their JSON data. - Created dmp_puz.py to download and convert crossword archives into .puz format. - Added various test scripts to validate clue ordering, fill approaches, and error handling in puzzles. - Updated README.md to reflect new features and usage instructions for the conversion script. |
||
|---|---|---|
| .cursorignore | ||
| .gitignore | ||
| check_clue_numbering.py | ||
| check_json_coords.py | ||
| compare_puzzles.py | ||
| debug_fill.py | ||
| diagnose_cursewords.py | ||
| diagnose_puz.py | ||
| dmp_puz.py | ||
| final_test.py | ||
| README.md | ||
| test_clue_order.py | ||
| test_cursewords_clue_build.py | ||
| test_cursewords_fixed.py | ||
| test_cursewords_simulation.py | ||
| test_fill_approach.py | ||
| test_indexerror_final.py | ||
| test_indexerror_fixed.py | ||
| test_manual_clue_fix.py | ||
| test_regenerate_one.py | ||
| test_solution_vs_fill.py | ||
| test_working_puzzle.py | ||
| verify_clue_order.py | ||
| view_archive.py | ||
| xwords.html | ||
| xwords_puz.js | ||
xwords - Crossword Archive Converter
This is a fork of q726kbxun/xwords, the crossword puzzle archive.
What This Fork Does
This fork adds a Python script (dmp_puz.py) that downloads the crossword archive data and converts it to AcrossLite .puz format files.
Repository Contents
This repository only contains code, not data.
dmp_puz.py- Script to download and convert puzzles to.puzformatview_archive.py- Original example script from upstream- Other utility/test scripts
The actual crossword data is hosted at q726kbxun.github.io/xwords and is downloaded on-demand when running the conversion script.
Usage
python3 dmp_puz.py
This will:
- Download the crossword archive data from the upstream repository
- Convert each puzzle to
.puzformat - Save them to
puz/<source>/<year>/<month>/<year>-<month>-<id>.puz
Requirements
- Python 3.13+
puzlibrary (install via pip)- Internet connection (to download archive data)
Features
- Converts puzzles to standard AcrossLite
.puzformat - Handles clue ordering correctly for compatibility with cursewords
- Decodes HTML entities in clues
- Puzzles appear empty/unsolved by default (not pre-filled)
Original Repository
The original crossword archive repository: https://github.com/q726kbxun/xwords