mirror of
https://github.com/junegunn/fzf.git
synced 2026-03-06 15:14:32 +08:00
Make current-fg inherit from list-fg instead of fg
current-fg was inheriting from fg, not list-fg, so setting list-fg had no effect on the current line. e.g. fzf --color fg:dim,list-fg:underline,nth:regular -d / --nth -1 The non-nth part of the current line was dim (from fg) instead of underline (from list-fg). Resolve ListFg/ListBg earlier in InitTheme so Current can inherit from them.
This commit is contained in:
@@ -1207,7 +1207,11 @@ func InitTheme(theme *ColorTheme, baseTheme *ColorTheme, boldify bool, forceBlac
|
|||||||
match.Attr = Underline
|
match.Attr = Underline
|
||||||
}
|
}
|
||||||
theme.Match = o(baseTheme.Match, match)
|
theme.Match = o(baseTheme.Match, match)
|
||||||
// Inherit from 'fg', so that we don't have to write 'current-fg:dim'
|
// These colors are not defined in the base themes.
|
||||||
|
// Resolve ListFg/ListBg early so Current and Selected can inherit from them.
|
||||||
|
theme.ListFg = o(theme.Fg, theme.ListFg)
|
||||||
|
theme.ListBg = o(theme.Bg, theme.ListBg)
|
||||||
|
// Inherit from 'list-fg', so that we don't have to write 'current-fg:dim'
|
||||||
// e.g. fzf --delimiter / --nth -1 --color fg:dim,nth:regular
|
// e.g. fzf --delimiter / --nth -1 --color fg:dim,nth:regular
|
||||||
current := theme.Current
|
current := theme.Current
|
||||||
if !baseTheme.Colored && current.IsUndefined() {
|
if !baseTheme.Colored && current.IsUndefined() {
|
||||||
@@ -1215,7 +1219,7 @@ func InitTheme(theme *ColorTheme, baseTheme *ColorTheme, boldify bool, forceBlac
|
|||||||
}
|
}
|
||||||
resolvedCurrent := o(baseTheme.Current, current)
|
resolvedCurrent := o(baseTheme.Current, current)
|
||||||
theme.NthCurrentAttr = resolvedCurrent.Attr
|
theme.NthCurrentAttr = resolvedCurrent.Attr
|
||||||
theme.Current = theme.Fg.Merge(resolvedCurrent)
|
theme.Current = theme.ListFg.Merge(resolvedCurrent)
|
||||||
currentMatch := theme.CurrentMatch
|
currentMatch := theme.CurrentMatch
|
||||||
if !baseTheme.Colored && currentMatch.IsUndefined() {
|
if !baseTheme.Colored && currentMatch.IsUndefined() {
|
||||||
currentMatch.Attr |= Reverse | Underline
|
currentMatch.Attr |= Reverse | Underline
|
||||||
@@ -1240,9 +1244,6 @@ func InitTheme(theme *ColorTheme, baseTheme *ColorTheme, boldify bool, forceBlac
|
|||||||
scrollbarDefined := theme.Scrollbar != undefined
|
scrollbarDefined := theme.Scrollbar != undefined
|
||||||
previewBorderDefined := theme.PreviewBorder != undefined
|
previewBorderDefined := theme.PreviewBorder != undefined
|
||||||
|
|
||||||
// These colors are not defined in the base themes
|
|
||||||
theme.ListFg = o(theme.Fg, theme.ListFg)
|
|
||||||
theme.ListBg = o(theme.Bg, theme.ListBg)
|
|
||||||
theme.NthSelectedAttr = theme.SelectedFg.Attr
|
theme.NthSelectedAttr = theme.SelectedFg.Attr
|
||||||
theme.SelectedFg = o(theme.ListFg, theme.SelectedFg)
|
theme.SelectedFg = o(theme.ListFg, theme.SelectedFg)
|
||||||
theme.SelectedBg = o(theme.ListBg, theme.SelectedBg)
|
theme.SelectedBg = o(theme.ListBg, theme.SelectedBg)
|
||||||
|
|||||||
Reference in New Issue
Block a user