get-alex / alex

Catch insensitive, inconsiderate writing
https://alexjs.com
MIT License
4.8k stars 207 forks source link

Allow for definying custom rules #300

Closed cbetta closed 4 years ago

cbetta commented 4 years ago

Subject of the feature

I'd love to be able to add my own rules that might not be necessarily suitable to be added to the overal list of Alex rules. Would this be in scope of Alex? Or would you recommend I use a different tool?

Problem

I am writing technical documentation, and some terms have been deemed confusing, unnecesasary, etc. As such, we'd want to catch those words as well, without the need to add them to the overal Alex library of words to consider.

Expected behaviour

I'd love for their to be a way to add my own rules in the Alex config, specifying a word to catch, and a suggestion to throw as the error.

Alternatives

I am not sure if there are any good alternatives. Realistically, I am looking to use the Alex engine without the actual ruleset.

wooorm commented 4 years ago

Hi there!

alex is built on lego blocks, and those can be used on their own, and you can add your own. It’s called unified.

The two main blocks we use here are retext-equality and retext-profanities. There are other things like them. For example, I quite like retext-passive. You can take a look at its source code for how to make your own!

cbetta commented 4 years ago

Excellent, these were the pointers I was looking for!