pyrecli
Command line utilities for DiamondFire templates
Installation
Run the following command in a terminal:
pip install pyrecli
Commands
scan: Scan all templates on the plot and dump them to a text file (requires CodeClient)send: Send template items to DiamondFire (requires CodeClient)rename: Rename all occurences of a variable (including text codes)script: Generate python scripts from template datagrabinv: Save all templates in your Minecraft inventory to a file (requires CodeClient)docs: Generate markdown documentation from template dataslice: Slice a template into multiple smaller templatescctoken: Get a reusable CodeClient authentication token
What is this useful for?
- Backing up a plot
- Getting an accurate text representation of DF code
- Open sourcing
- Version control
- Large scale refactoring
Example Command Usages
Scan
[Requires CodeClient]
Grabs all of the templates on your current plot and saves them to a file.
You will need to run /auth in-game to authorize this action.
Example:
# Dumps all template data into templates.dfts
pyrecli scan templates.dfts
Send
[Requires CodeClient]
Sends all templates in a file back to your inventory.
Example:
pyrecli send templates.dfts
Rename
Renames all occurences of a variable in a list of templates. You can run this command on a single template, or on an entire plot if a variable is used in many places.
This command still requires thorough testing, so make sure you have a backup of your plot before using this command on a large scale.
Example:
# Changes all variables named `foo` to `bar`, then saves the new templates to 'renamed.dfts'.
pyrecli rename templates.dfts renamed.dfts foo bar
# You can also target a specific scope.
# This changes all occurences of the game variable `plotData` to `gameData`.
pyrecli rename templates.dfts renamed.dfts plotData gameData -s game
Script
Generates Python scripts from template data.
Example:
# Convert templates into individual scripts and store them in directory `plot_templates`
pyrecli script templates.dfts plot_templates
# Convert templates into scripts and put them into a single file `plot_templates.py`
pyrecli script templates.dfts plot_templates.py --onefile
Grabinv
[Requires CodeClient]
Scans your inventory for templates and saves them to a file.
Example:
# Save inventory templates to `templates.dfts`
pyrecli grabinv templates.dfts
Docs
Generates a Markdown documentation file for a list of templates.
Example:
# Generate documentation and save it to `plot_docs.md`
pyrecli docs templates.dfts plot_docs.md "My Plot Docs"
Slice
Slices a single template into multiple smaller templates. This is useful for resizing templates to fit on a smaller plot.
If multiple templates are passed, only the first one will be used.
NOTE: This feature is not fully implemented yet. Any templates with Control::Return blocks may not work properly if sliced.
Example:
# Slices the first template in `templates.dfts` with a target length of 50 and stores them in `sliced_templates.dfts`
pyrecli slice templates.dfts sliced_templates.dfts 50
CCToken
Returns a CodeClient authentication token that can be used in commands that require CodeClient authorization.
This is useful for reducing the amount of times you need to run /auth.
Example:
# Get a token with the read_plot and inventory scopes
pyrecli cctoken mytoken.txt "read_plot inventory"
Command Chaining
You can combine the pipe operator (|) with hyphen (-) file paths to chain multiple commands together.
Example:
# Scans the plot, renames a variable, then sends renamed templates back to DiamondFire
pyrecli scan - | pyrecli rename - foo bar | pyrecli send -
Metadata
Release files for pyrecli 0.3.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyrecli-0.3.9.tar.gz | 9.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyrecli-0.3.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.5 kB
Release files / pyrecli-0.3.9.tar.gz
| Download URL | pyrecli-0.3.9.tar.gz |
|---|---|
| Size | 9.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
241ff4224c33376b04b6bd6235b02e7b8904984fb1e393fa2775503752e4f115
|
|
BLAKE2b-256 checksum How to use checksums |
e8fee5ac0db57bdf4637154e2aebfd43c78a763f2d659456a26d9d47740db304
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / pyrecli-0.3.9-py3-none-any.whl
| Download URL | pyrecli-0.3.9-py3-none-any.whl |
|---|---|
| Size | 12.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ce88a568480bcc474996c414d7010141da31eb3ccd87a52d5da9bb10f3f028fc
|
|
BLAKE2b-256 checksum How to use checksums |
36626ca42733ac6475dcadfe773c1215496e0117f470a5cf5da32e685fc00c9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|