1.4 Troubleshooting

As Flymake supports multiple simultaneously active external backends, is becomes useful to monitor their status. For example, some backends may take longer than others to respond or complete, and some may decide to disable themselves if they are not suitable for the current buffer or encounter some unavoidable problem. A disabled backend is not tried again for future checks of the current buffer.

The commands flymake-reporting-backends, flymake-running-backends and flymake-disabled-backends show the backends currently used and those which are disabled.

Sometimes, re-starting a backend that disabled itself is useful after some external roadblock has been removed (for example after the user installed a needed syntax-check program). Invoking flymake-start with a prefix argument is a way to reset the disabled backend list, so that they will be tried again in the next check. Manually toggling flymake-mode off and on again also works.

Flymake uses a simple logging facility for indicating important points in the control flow. The logging facility sends logging messages to the *Flymake log* buffer. The logged information can be used for resolving various problems related to Flymake. For convenience, a shortcut to this buffer can be found in Flymake’s menu, accessible from the top menu bar or just left of the status indicator. The command flymake-switch-to-log-buffer is another alternative.

Logging output is controlled by the Emacs warning-minimum-log-level and warning-minimum-level variables.