vimtricks.wiki Concise Vim tricks, one at a time.

How do I make the completion popup menu slightly transparent in Neovim?

Answer

:set pumblend=10

Explanation

The pumblend option in Neovim controls the pseudo-transparency of the completion popup menu (pum). Setting it to a small value like 10 lets you see the underlying text through the popup, making it easier to maintain context while choosing a completion item.

How it works

pumblend accepts values from 0 (fully opaque, default) to 100 (fully transparent, invisible). The pseudo-transparency is achieved by blending the popup's highlight colors with the background. Values between 10 and 30 are practical — enough transparency to see context without making the popup hard to read.

set pumblend=10   " subtle transparency
set pumblend=20   " more visible transparency

Example

Add to your init.vim or init.lua:

" Neovim: semi-transparent completion popup
set pumblend=15

With pumblend=15, when the popup appears over code, the underlying text is faintly visible through the menu background.

Tips

  • The companion setting winblend applies the same pseudo-transparency to all floating windows (diagnostics, hover docs, etc.): :set winblend=10
  • This option is Neovim-only — it has no effect in standard Vim
  • Transparency rendering depends on your terminal emulator supporting true color (set termguicolors must be enabled)
  • Very high values (> 50) make the popup hard to read; stick to 10–25 for practical use

Next

How do I keep the cursor position synchronized across multiple Vim windows?