4 releases (2 breaking)
0.3.0 | Aug 24, 2024 |
---|---|
0.2.0 | Aug 21, 2024 |
0.1.1 | Aug 7, 2024 |
0.1.0 | Aug 4, 2024 |
#1714 in Development tools
184 downloads per month
99KB
2.5K
SLoC
typope
Pedantic tool to find orthotypography mistakes,
typographical errors, and other mistakes that are not covered by tools
like typos
to ensure that your source code is
free from typographical heresy.
This tool is still experimental: you may encounter false positives.
Installation
cargo install --locked typope
Usage
Analyze source code recursively in the current directory:
typope
Command Line Options
typope
supports a subset of the same command line options as typos
, such as --hidden
or --no-ignore
.
See typope --help
for more details.
Configuration
typope
can read the configuration files from typos
(e.g., .typos.toml
) such as:
[files]
extend-exclude = ["directory"]
ignore-hidden = false
[default]
extend-ignore-re = ["some regex.*rrrregex"]
[type.cpp]
check-file = false
See typos
reference documentation for more details, but know that only a subset of these fields are supported:
the ones irrelevant for typope
at the moment (e.g., check-filename
, extend-words
, or extend-identifiers
) are ignored.
Rules
typope
has only one rule at the moment:
Supported Languages
typope
relies on tree-sitter
to parse the following languages:
- Rust
- Go
- Kotlin
- Python
- C++
- C
- Markdown
- YAML
- TOML
- JSON
Many more could be supported if you are motivated to open a PR :)
To minimize false positives, only typos found in literal strings (e.g., "this is a string"
)
are detected. It means typos in comments are ignored for the moment.
Raw literal strings (e.g., in Rust this would be r"raw string"
) are ignored on purpose.
In Markdown, code blocks or code spans (e.g., `example`
) are ignored on purpose.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~13–40MB
~865K SLoC