I provided an "advice" for 'flycheck-try-parse-error-with-pattern'
function to change its behavior, namely to increase error-columns by
one.
Bug
===
The problem is that it doesn't consider the case where the pattern is
not matched and ends up with "err = nil". For this case,
"(flycheck-error-column err)" generates an exception if executed. The
whole error parsing process stops immediately.
This causes a problem when we have more than one error-patterns, which
is the case when we enable 'error' and 'warning' patterns.
Fix
===
Fix is simple: check err before executing (flycheck-error-column err)
- (col (flycheck-error-column err)))
+ (col (and err (flycheck-error-column err))))
Detect the width of flycheck error list buffer and set pp.width when
calling flycheck. It uses the same heuristic that `split-window-sensibly`
function is using.
A user can also set `lean-flycheck-msg-width` custom variable to enforce
a certain width.
Close#205.