Commit 42c13324 authored by João Távora's avatar João Távora

New flymake-supress-zero-counters defcustom

A feature suggested by Yuri Khan <>.

* lisp/progmodes/flymake.el (flymake-suppress-zero-counters): New
variable.  (flymake--mode-line-format): Use it.
parent 04d33152
Pipeline #454 failed with stage
in 21 minutes and 46 seconds
......@@ -220,6 +220,15 @@ Specifically, start it when the saved buffer is actually displayed."
:version "26.1"
:type 'boolean)
(defcustom flymake-suppress-zero-counters :warning
"Control appearance of zero-valued diagnostic counters in mode line.
If set to t, supress all zero counters. If set to a severity
symbol like `:warning' (the default) suppress zero counters less
severe than that severity, according to `warning-numeric-level'.
If set to nil, don't supress any zero counters."
:type 'symbol)
(when (fboundp 'define-fringe-bitmap)
(define-fringe-bitmap 'flymake-double-exclamation-mark
(vector #b00000000
......@@ -1136,6 +1145,7 @@ default) no filter is applied."
(put 'flymake--mode-line-format 'risky-local-variable t)
(defun flymake--mode-line-format ()
"Produce a pretty minor mode indicator."
(let* ((known (hash-table-keys flymake--backend-state))
......@@ -1203,8 +1213,14 @@ default) no filter is applied."
for face = (flymake--lookup-type-property type
when (or diags (>= (flymake--severity type)
(warning-numeric-level :warning)))
when (or diags
(cond ((eq flymake-suppress-zero-counters t)
(>= (flymake--severity type)
(t t)))
collect `(:propertize
,(format "%d" (length diags))
face ,face
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment