Emacs Flymake is an excellent plugin for Emacs that adds on-the-fly syntax checking for a number of languages.

Originally by Pavel Kobyakov, my fork on GitHub is a replacement for that distributed with Emacs, adding a number of bug fixes including support for limiting the number of parallel invocations of syntax checks and spawning a single timer so that it plays nice with desktop mode, and support for using a temporary directory for the syntax checks rather than the same directory as your source code.

There's also tighter integration with my fork of Emacs Flymake Cursor and my Emacs Flymake PHPCS and Emacs Flymake Perl::Critic projects.

You can find more on my GitHub page for Flymake.

Recent blog entries for Flymake

Good news for fans of App::perlbrew and Emacs Flymake: I've updated my fork of Flymake to include automatic support for perlbrew.

If you do a perlbrew switch in one window, the next run of Flymake in a Perl buffer will automatically update your $PATH in Emacs with the changes Perlbrew made.

Emacs-flymake-perlcritic overrides the code that was changed, but has also been updated to take advantage of the Perlbrew $PATH sync if it's available. This means that if you're using both you'll need to update both to see the changes.

If you're wondering what either of these are, the article "Perl and PHP continuous static analysis with Emacs Flymake" may help explain.

I followed with interest the discussion and excitement last month in a few Perl blogs about people discovering Emacs Flymake.

Being a long-time Emacs user this seemed really interesting to me, but I don't tend to waste a huge amount of time making outright syntax errors.

What I really wanted was something like the static analysis that a modern IDE does for you while you type.

So I hooked up Perl::Critic and PHP_CodeSniffer to Flymake, and here's how you can too.

© 2009-2013 Sam Graham, unless otherwise noted. All rights reserved.