Update: Based on the discussion here and in other places I added the following (well, technically I did something different in my colorscheme, but in the end it translates to that)

vim.api.nvim_set_hl(0, 'Normal', {})

This reverts the weird text and background colors to the previous behavior of … not setting them.


With update 0.10 Neovim behavior changed regarding text color and background color.

I use a color theme that does not set those and previously this worked perfectly fine. Neovim simply used the font color defined in the terminal and had a transparent background.

Now the background is #14161b and the font color is #e0e2ea. Neither of the colors is configured ANYWHERE in my whole setup. Neither in the colorscheme, nor in my terminal configuration, nor in my Neovim configuration.

Is there a sane way to revert this to the old behavior? (i.e. use the font color configured in the terminal’s configuration and use transparent background.)

  • bisby@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 month ago

    From the neovim 0.10 changelog:

    ‘termguicolors’ is enabled by default when Nvim is able to determine that the host terminal emulator supports 24-bit color.

    So for me, i previously had vim.cmd.hi 'Normal ctermbg=none' as the method for disabling the background. But now, nvim was deciding to use gui colors for the terminal, and I was only setting terminal background to none.

    The options are:

    • vim.cmd.hi 'Normal ctermbg=none guibg=none' (also none out the gui bg)
    • vim.cmd.hi 'Normal bg=none' (flat unconditional bg none)
    • vim.opt.termguicolors = false (just disable the now enabled by default function to go back to terminal colors)