Commit graph

33 commits

Author SHA1 Message Date
Ed Page
240053aa96 docs: Update changelog 2024-07-25 15:30:49 -05:00
Noah Pendleton
c7a34fcbe2 docs(ref): Add dotall specifier to block ignore
Needed a `(?s)` to match multiple enclosed newlines. And added a
non-greedy modifier and matching test to prevent double blocks from
causing intermediate lines to be ignored:

```shell
# spellchecker:off
should be ignored
# spellchecker:on
should not be ignored  # without non-greedy, this is also ignored
# spellchecker:off
should be ignored
# spellchecker:on
```
2024-06-04 15:56:21 -04:00
Ed Page
ae0de188c1 docs(ref): Report regex workarounds for inline ignores 2024-04-03 09:13:54 -05:00
Ed Page
be8628fcb3 feat(config): Allow ignoring words by regex
Fixes #852
2023-10-16 12:37:00 -05:00
Ed Page
2b7af0e8ef docs: Don't mention non-existent force-exclude config 2023-10-09 15:43:21 -05:00
Delgan
8314a1567d Add "--force-exclude" option 2023-10-09 19:39:11 +00:00
dosisod
ed8e25700c docs: Document new pyproject.toml support 2023-09-08 10:26:20 -07:00
Ed Page
217e403326 docs(cli): Show SSL cipher suites
See #438
2023-04-11 01:17:33 -05:00
Ed Page
ac46a6ba54 feat(config): Custom ignores
Typos primarily works off of identifiers and words.  We have built-in
support to detect constructs that span identifiers that should not be
spell checked, like UUIDs, emails, domains, etc.  This opens it up for
for user-defined identifier-spanning constructs using regexes via
`extend-ignore-re`.

This works differently than any of the previous ways of ignoring thing
because the regexes require extra parse passes.  Under the assumption
that (1) actual typos are rare and (2) number of files relying on
`extend-ignore-re` are rare, we only do these extra parse passes when a
typo is found, causing almost no performance hit in the expected case.

While this could be used for more generic types of ignores, it isn't the
most maintainable because it is separate from the source files in
question.  Ideally, we'd implement document settings / directives for
these cases (#316).
2023-03-18 01:25:39 -05:00
Ed Page
fc7dfba01b docs(reference): Fix glob field name 2023-03-17 23:37:57 -05:00
Ed Page
af90817e50 feat(dict): extend-ignore-identifiers-re support
This opens the door for users to provide patterns for identifiers that
are always valid.  The key limitation is "identifiers".  Run `typos
--identifiers` to verify what you are trying to write the regex for.

Fixes #651
2023-03-17 22:40:55 -05:00
Ed Page
59c4713e8b docs(ref): Further clarify identifiers and words
This supersedes #648
2023-01-03 07:06:08 -06:00
Ed Page
6773b4caa2 docs(ref): Define identifiers/words
This came up in #646
2023-01-02 07:13:25 -06:00
Ed Page
b38d05b941 docs: Clarify word vs identifier 2022-12-02 10:05:09 -06:00
Ville Skyttä
60fc0ca19d
docs(reference): Formatting and copy-pasto fixes
Escape left angle bracket, fix copy-pastos in default.extend-identifiers
and default.extend-words descriptions.
2022-04-11 00:06:26 +03:00
Ed Page
32f5e6c682 refactor(typos)!: Bake ignores into parser
This is prep for other items to be ignored

BREAKING CHANGE: `TokenizerBuilder` no longer takes config for ignoring
tokens.  Related, we now ignore token-ignore config flags.
2021-06-29 11:41:25 -05:00
Ed Page
327a84a242 feat(ignore): Typos=specific ignores
We want both CLI and config ignores.  The question then is what we make
them relative to.  I decided to favor CLI with `.`.  We'll see how this
works out

Fixes #134
2021-05-20 21:00:28 -05:00
Ed Page
92a1172bfa feat(ddi): Allow controlling 'unicode' via args 2021-04-30 10:36:55 -05:00
Ed Page
517da7ecd2 perf(parser): Allow people to bypass unicode cost 2021-04-29 21:07:59 -05:00
Ed Page
9cbc7410a4 fix(parser)!: Defer to Unicode XID for identifiers
This saves us from having to have configuration for every detail.  If
people need more control, we can offer it later.

Fixes #225
2021-04-29 18:30:57 -05:00
Ed Page
2a7bd5b046 feat(config): Add new file types
Fixes #220
2021-04-06 21:18:18 -05:00
Ed Page
8f365ee155 feat(config): Show available type definitions 2021-04-05 21:15:41 -05:00
Ed Page
a101df95c2 feat(config): Per-file type settings
Fixes #14
2021-04-05 21:03:49 -05:00
Ed Page
4bbc59facf refactor(config)!: Detect when no dict config
In preparing for smarter handling of config, we need to be able to tell
what is present and what isn't.

BREAKING CHANGE: `--hex` was removed, the value didn't seem high enough.
2021-03-29 20:27:12 -05:00
Ed Page
1c3acd747a fix(config)!: Move binary to file
Seems like it would make sense to allow varying this by directory (when
supporting layering) and by file type.
2021-03-01 11:50:12 -06:00
Ed Page
2ef1d02164 Revert "feat(ignore): Typos-specific ignores"
This reverts commit 0052617fcd.

The fix for #134 was backwards.  It turns out `overrides` is for
including rather than ignoring.  Will need to look at this further.
2020-11-03 19:55:45 -06:00
Ed Page
f0c24b0afa feat(config): Allow separating config from source 2020-10-30 08:33:43 -05:00
Ed Page
527b9837b4 feat: Custom dictionary support
Switching `valid-*` to just `*` where you map typo to correction, with
support for always-valid and never-valid.

Fixes #9
2020-10-27 21:15:25 -05:00
Ed Page
043692afe0 feat(dict): Override builtin dictionary
Sometimes you just have to live with a typo or its done intentionally
(like weird company names).  With this commit, a user can now identifier
blessed identifiers and words.

This is ostly what is needed for #9 but sometimes people will have
common typos that they'll want to provide corrections for.
2020-09-02 20:24:54 -05:00
Ed Page
0052617fcd feat(ignore): Typos-specific ignores
THis is to help with cases like a monorepo with vendored dependencies.
A user might want to search (`.ignore`) them but not hold the code to
the same standards as first-party code.

Fixes #134
2020-08-25 21:09:42 -05:00
Ed Page
ab4a5bbdaf feat: Support english dialects
The goal is to be as accepting and unobtrusive to new code bases as
possible.  To this end, we correct typos into the closest english
dialect.

If someone wants to opt-in, they can have typos correct to a specific
english dialect.

Fixes #52
Fixes #22
2020-08-20 19:37:37 -05:00
Ed Page
52926d8cd1
docs: Fix source precedence 2019-10-25 09:39:55 -06:00
Ed Page
5863158a31 docs: Add reference 2019-10-25 08:17:58 -06:00