VNProofer is a Command-line Ren'Py Visual Novel proofreading tool.
- Ability to generate a cSpell configuration file for the Ren'Py visual novel
- Character names are automatically added to the local dictionary
- Ability to automatically add newly added characters to the local dictionary
- Ability to count both words added and dialogue words added today by examining git commit history
- Ability to add words misspelled on purpose to file level exclusion list
- A copy of cspell must have been installed globally
npm i cspell -g
to do any spell checking - VNProofer is designed to work with a codebase of
*.rpy
files in any directory structure from the root.*.rpa
files will need to be decompressed*.rpyc
files will need to be decompressed
It would be best to have Node.js and NPM already installed (or you are willing to do it).
npm i vnproofer cspell -g
Use either -h
or --help
at any level
vnproofer --help
vnproofer -h
vnproofer config --help
vnproofer check --help
vnproofer all -h
Displays the configuration menu
vnproofer config
$ vnproofer config --help
vnproofer config
Configure vnproofer
Options:
-v, --version Show version number [boolean]
-s, --suppress-intro Suppress intro of command [boolean] [default: false]
-h, --help Show help [boolean]
Create an initial cspell.json file from a template (disabled if it already exists). VNProofer will automatically add any defined character names to the workspace dictionary list.
Add any new characters to the workspace dictionary list that were not previously added.
Check an individual file for spelling errors
vnproofer check ./myfile.rpy
or
vnproofer c ./myfile.rpy
Perform a complete spell check of all rpy files using cSpell
vnproofer all
or
vnproofer a
$ vnproofer all --help
vnproofer all
perform full spell check of all rpy files
Options:
-v, --version Show version number [boolean]
-s, --suppress-intro Suppress intro of command [boolean] [default: false]
-h, --help Show help [boolean]
Query git to find out how many words and how many dialogue words have been committed since 1 am today
vnproofer counts
or
vnproofer n
$ vnproofer counts --help
vnproofer counts
Query git to find out how many words have been committed today
Options:
-v, --version Show version number [boolean]
-s, --suppress-intro Suppress intro of command [boolean] [default: false]
-m, --only-me Only show my own counts [boolean] [default: false]
-b, --verbose Show detailed logs of changes with word counts for examination
[boolean] [default: false]
-h, --help Show help [boolean]
Handle words that are spelled wrong on purpose. If there is already a word exclusion list at the top of the file, the command will add the lowercase version of the word to the existing list in alphabetical order. Otherwise, it will add a new exclusion to the top of the file.
vnproofer exclude ./myfile.rpy yall
or
vnproofer e ./myfile.rpy yall
$ vnproofer exclude --help
vnproofer exclude <file> <word>
Handle words that are spelled wrong on purpose
Positionals:
file File path that has the misspelled word [string] [required]
word Word to exclude from misspelled words within file [string] [required]
Options:
-v, --version Show version number [boolean]
-s, --suppress-intro Suppress intro of command [boolean] [default: false]
-h, --help Show help [boolean]
- Utility to show how many words added as well as how many dialog words have been added today by pulling all changes added to a git repo
- Ability to automatically add the cSpell GitHub action to an existing codebase
- Ability to add words misspelled on purpose to an exclusion list at the top of the file
- Ability to add file-level excluded words to the local dictionary if the exclusion is used in more than one file and remove the local exclusion from all files
- Ability to iterate over each misspelled word and choose how to handle it (add to file level exclusion, add to the local dictionary)
- Ability to iterate over all-new dialogue (like a new pull request to review)
- Ability to view all Ren'Py lint issues
- Ability to automatically add Ren'Py linting GitHub action to an existing codebase
- Ability to run a line of dialogue through a command-line grammatical tool like gramma
- Ability to install global cSpell installation through config menu if not already installed
- Ability to install global gramma installation through config menu if not already installed
- Ability to extract from
*.rpa
files - Ability to extract from
*.rpyc
files - Ability to automatically generate a corrections file to be sent to an author to facilitate automatically correcting issues
- Ability to automatically add recommended VSCode extensions for Ren'Py