12 releases (4 breaking)
0.5.0 | Mar 25, 2024 |
---|---|
0.4.0 | Mar 3, 2024 |
0.3.1 | Jan 25, 2024 |
0.2.0 | Jul 31, 2023 |
0.1.1 | Jan 2, 2023 |
#2691 in Command line utilities
22KB
340 lines
Description
typos-git-commit
is a command line tool that processes a typos
generated json file in order to :
- correct typos in detected files (via sed)
- make a commit for each correction (via a simple git commit command) grouping every affected file with that correction in a single commit.
It has been written for a one shot project but one may find it to
be useful. Use typos-git-commit --help
to get usage help.
Usage
You can use the option --noop
to print what will be executed without
effectively execute anything.
If you need to have a summary of all typos you can use --only-list-typos
option. You can add some details to this summary with --details
option.
You can filter out what will be done using --exclude-file
, --exclude-typo
and --exclude-correction
(options may be invoked more than once) to
exclude a specific file, typo or correction from being taken into account.
Follow these steps to correct the typos found in all file but Python and Javascript scripts of a project:
- Generate a json file with
typos
, for instance:typos doc/ --exclude *.py --exclude *.js --format json >typos.json
- In the directory of the repository use
typos-git-commit
:typos-git-commit --filename typos.json
. This command will correct only typos with more than 5 (by default) characters and the ones that got only one correction proposal. To modify the minimum length one may use--minlen
. - Review carefully the generated commits even if everything is done to mitigate errors when replacing typos there are situations where this correction is really an error.
--message
option allows to change your commit message. One may use the special notations {typo} and {correction} that will be replaced respectively by the typo to be corrected and the correction of that typo. Tip: use--noop
to see how the git message will be before applying.
Completion
The command has no short version arguments except for --help
(-h
)
and --version
(-V
) thus to ease writing arguments at command
line typos-git-commit can generate shell's completion scripts with
--completion bash
option (see help to get all supported shells).
- Bash completion script is generated using
typos-git-commit --completion bash
. You can add this completion script to your local profile using these commands:mkdir -p ~/.local/share/bash-completion/completions typos-git-commit --completion bash > ~/.local/share/bash-completion/completions/typos-git-commit
Changelog
See ChangeLog file or use typos-git-commit --changelog
Dependencies
~1.7–2.8MB
~54K SLoC