Command-line tools for Sphinx documentation management
Project description
Sphinx-CMD
A collection of command-line tools for managing Sphinx documentation.
Installation
pip install sphinx-cmd
Commands
The sphinx-cmd tool provides subcommands for different Sphinx documentation management tasks.
sphinx-cmd rm
Delete unused .rst files and their unique assets if not used elsewhere.
# Remove files and assets
sphinx-cmd rm path/to/docs
# Dry run to preview deletions
sphinx-cmd rm path/to/docs --dry-run
sphinx-cmd mv
Move/rename .rst files and automatically update all references to them.
# Move and update all references
sphinx-cmd mv old-file.rst new-file.rst
# Move to a different directory
sphinx-cmd mv chapter1.rst topics/chapter1.rst
# Preview the move without making changes
sphinx-cmd mv old-file.rst new-file.rst --dry-run
# Move without updating references
sphinx-cmd mv old-file.rst new-file.rst --no-update-refs
Features
- Automatically updates
toctreeentries - Updates
:doc:references - Updates
includeandliteralincludedirectives - Handles relative paths correctly
- Preserves file relationships
Development
# Clone the repository
git clone https://github.com/yourusername/sphinx-cmd.git
cd sphinx-cmd
# Install in development mode with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Run linters
black sphinx_cmd tests
flake8 sphinx_cmd tests
mypy sphinx_cmd
# Test the command
sphinx-cmd --help
sphinx-cmd rm --help
sphinx-cmd mv --help
Adding New Commands
The architecture is designed to make adding new commands easy:
- Create a new file in
sphinx_cmd/commands/(e.g.,new_command.py) - Implement an
execute(args)function in your new file - Import the command in
sphinx_cmd/cli.py - Add a new subparser for your command in
create_parser()
License
MIT License - see LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sphinx_cmd-0.2.0.tar.gz.
File metadata
- Download URL: sphinx_cmd-0.2.0.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
524e37451f95f56a1a06595391f636c82e6f4f4f429b2a6b16701557c1e6a118
|
|
| MD5 |
3df607a7d6eeb1d94c903ef0b6189527
|
|
| BLAKE2b-256 |
980ec9fc576d2431b4b6e2ba3b9585684cc852068869e659c75ec0b48f750e6c
|
File details
Details for the file sphinx_cmd-0.2.0-py3-none-any.whl.
File metadata
- Download URL: sphinx_cmd-0.2.0-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cfdfaf98f94ae15ce2edc5323bea0eb365d81036cec02d6ab960216f137c41db
|
|
| MD5 |
932d8eb0230ec79611734b98e5641025
|
|
| BLAKE2b-256 |
9ac873e4b61422e24d4c0c99cc0ce3b9685032b72dce55c5da65b3bdc18a9cef
|