Open 12rambau opened 8 months ago
I have recently created a PR that adds support for ignoring regions that span multiple lines: #3476.
It works by allowing the user to specify a regex that is applied using re.DOTALL
before codespell's line-based algorithm is used.
So the begin/end tags are not hard coded, instead one sets them on the command line.
For example with:
codespell --ignore-multiline-regex 'codespell:ignore-begin.*codespell:ignore-end'
one can ignore code blocks with:
# codespell:ignore-begin
... codespell will not look at this text.
# codespell:ignore-end
or
// codespell:ignore-begin
... codespell will not look at this text.
// codespell:ignore-end
@julian-smith-artifex-com Thanks that's really helpful.
And I know it's easier said than done, but would it be possible for you (or anyone else) to allow the block ignore to take a pattern just like the inline ignore tag, like:
# codespell:ignore-begin wrod
... codespell will not check `wrod` for this block
# codespell:ignore-end
This is the follow-up issue of #1212. It is now possible to ignore a single line from a file by adding
# codspell: ignore
comment. Would it be possible to continue to mimick what black is doing and implement an on/off comment.It's easier to understand with a real life example:
in my lib I need to gather some data from USDA wich associate a US state to a 2 letter code. I thus store a boring dictionnary at the start of my module:
When I run the code spell pre-commit, it falls on "ND" which is the code for Nevada and offers me to replace it with "AND" or "2ND". The codespell ignore comments is perfectly doing it's job but I lack visibility. If you look carefully at my example, the comments
#fmt: off
and#fmt: on
are deactivating black for the whole length of the dict. Would it be possible to implement such a comment for codespell ?