I have multiple syntax checkers installed for Flycheck (specifically javascript-eslint and javascript-standard).

The way I have them set up is not compatible (one demands semicolons, one prohibits them etc.) and my question is how does flycheck pick which one to use?

Currently their "predicate"s are both found and they are both enabled.

The only way I have found to make sure standard is used, is to disable eslint in my .emacs and close and reopen emacs.

Additionally, once I have done that, disabling standard and enabling eslint doesn't appear to do anything (even very obvious errors are not flagged).

Could I have some help on how to quickly switch between the two modes (or at least switch after visiting a buffer) and how to tell which checker is currently active?

1 Answer 1


Flycheck picks the first existing syntax checker from flycheck-checkers. In other words, the order in flycheck-checkers defines the priority of syntax checkers.

If you want to ensure that standard is being used for your project set flycheck-checker to javascript-standard via Directory Variables. You can use C-c ! s to interactively switch between syntax checkers.

The verification buffer at C-c ! v tells you which checkers aren't disabled. It won't tell you exactly which checkers are actually, but we intend to fix that. We are also working on a refactoring that will make it easier to select just those syntax checkers you want via directory variables.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.