Skip to main content

Colors and Themes

fzf supports full 256-color and true-color theming via the --color flag. Match your terminal colorscheme for a seamless experience.

The --color Flag Syntax

fzf --color=fg:#hex,bg:#hex,hl:#hex,...

Named Color Slots

SlotControls
fgText in result list
bgBackground of result list
hlHighlighted (matched) characters
fg+Text in selected/current line
bg+Background of selected line
hl+Highlighted chars in selected line
infoMatch count info text
borderBorder color
separatorSeparator line color
scrollbarScrollbar color
labelBorder label color
queryQuery text
disabledDisabled item color
matchHighlighted match color
currentCurrent item highlight
promptPrompt text
pointerSelection pointer
markerMulti-select marker
spinnerLoading spinner
headerHeader text
preview-fgPreview window text
preview-bgPreview window background

Format Options

# Hex color
--color=fg:#cdd6f4

# 256-color index
--color=fg:255

# Base16 color names
--color=fg:white

# Bold, italic, underline modifiers
--color=hl:bold
--color=hl:italic
--color=hl+:bold:underline
--color=fg+:reverse
export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#313244,bg:#1e1e2e,spinner:#f5c2e7,hl:#89b4fa
--color=fg:#cdd6f4,header:#89b4fa,info:#cba6f7,pointer:#f5c2e7
--color=marker:#b4befe,fg+:#cdd6f4,prompt:#cba6f7,hl+:#89b4fa
--color=selected-bg:#45475a
--color=border:#313244,label:#cdd6f4
"

Tokyo Night

export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#283457,bg:#1a1b26,spinner:#bb9af7,hl:#7aa2f7
--color=fg:#c0caf5,header:#7aa2f7,info:#7dcfff,pointer:#bb9af7
--color=marker:#9ece6a,fg+:#c0caf5,prompt:#bb9af7,hl+:#7aa2f7
--color=border:#283457,label:#c0caf5
"

Gruvbox Dark

export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#3c3836,bg:#282828,spinner:#fb4934,hl:#928374
--color=fg:#ebdbb2,header:#928374,info:#8ec07c,pointer:#fb4934
--color=marker:#fb4934,fg+:#ebdbb2,prompt:#fb4934,hl+:#fb4934
--color=border:#3c3836
"

Dracula

export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#44475a,bg:#282a36,spinner:#ff79c6,hl:#8be9fd
--color=fg:#f8f8f2,header:#ff79c6,info:#50fa7b,pointer:#ff79c6
--color=marker:#ff79c6,fg+:#f8f8f2,prompt:#ff79c6,hl+:#8be9fd
--color=border:#44475a
"

Nord

export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#3b4252,bg:#2e3440,spinner:#81a1c1,hl:#88c0d0
--color=fg:#e5e9f0,header:#88c0d0,info:#a3be8c,pointer:#81a1c1
--color=marker:#bf616a,fg+:#eceff4,prompt:#a3be8c,hl+:#88c0d0
--color=border:#3b4252
"

Rose Pine

export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#26233a,bg:#191724,spinner:#f6c177,hl:#31748f
--color=fg:#e0def4,header:#31748f,info:#9ccfd8,pointer:#c4a7e7
--color=marker:#eb6f92,fg+:#e0def4,prompt:#9ccfd8,hl+:#31748f
--color=border:#26233a
"

Light Theme (GitHub Light)

export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS
--color=bg+:#f6f8fa,bg:#ffffff,spinner:#0969da,hl:#0969da
--color=fg:#24292f,header:#0969da,info:#0969da,pointer:#0969da
--color=marker:#1a7f37,fg+:#24292f,prompt:#0969da,hl+:#0969da
--color=border:#d0d7de
"

Dynamic Theme Switching

~/.bashrc
# Switch fzf theme based on terminal background
if [ "$TERMINAL_THEME" = "light" ]; then
export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS --color=bg:#ffffff,fg:#000000,hl:#0969da"
else
export FZF_DEFAULT_OPTS="$FZF_DEFAULT_OPTS --color=bg:#1e1e2e,fg:#cdd6f4,hl:#89b4fa"
fi

Generating Themes from Base16

Use the fzf Base16 generator to generate themes from your base16 scheme.

What's Next