Re-edited the answer for clarity
Typically I would put my cursor over the text, and call
M-x describe-face, but I can't do that with the headerline.
In the above screenshot, I want to change the headerline to something contrasting. If I could change the light grey to something darker, it would do the job. So I tried to identify the base faces. So far I found these 3:
lsp-headerline-breadcrumb-path-face: underlined in red
>separator, underlined in yellow (but invisible because it disappears into the background)
lsp-headerline-breadcrumb-symbols-face: underlined in cyan
But I can't figure out the spaces in between. If I change the
*-path-* faces listed above by adding
:background "brightblack", and
*-separator-* to just
:foreground "black", I can only change the underlined parts (see screenshot below).
I also looked at the results of
list-faces-display (without my customisation), there is no light grey background (see screenshot below). So I think something other than these faces is giving the light grey background, if I could change that, I wouldn't need to change them individually or find the face for the intermediary spaces.
Follow-up to NickD's question:
header-line-format is set to:
((t (:eval (window-parameter nil 'lsp-headerline--string))))
When I try to get the value of
C-h v, I get the message