I'd like to change the foreground color of non-current ivy items. The only way that I've found to do that so far is to define my own ivy-format-function
like this:
(defun aj/ivy-format-function-line (cands)
"Transform CANDS into a string for minibuffer."
(ivy--format-function-generic
(lambda (str)
(ivy--add-face (concat str "\n") 'ivy-current-match))
(lambda (str)
(ivy--add-face (concat str "\n") 'ivy-not-current))
cands
""))
Unfortunately, this prevents ivy-minibuffer-match-face-1
's foreground color from taking effect (it should be white and bold) because ivy-not-current
takes precedence. Is there a better way to do this?