Search code examples
neovimneovim-plugin

I'm having trouble with flickering in lspsaga.nvim


When I move the cursor, the screen flickers horizontally.
How can I fix it?
The following link is a captured screenshot
https://v.kuku.lu/6422133807

If turning off lspsaga resolves the issue, I suspect the problem may be related to lspsaga. I tried setting code_action to an empty string, but it didn't work.

  • this is my config
local status, saga = pcall(require, "lspsaga")
if (not status) then return end

local keymap = vim.keymap.set

saga.setup{
ui = {
\-- currently only round theme
theme = 'round',
\-- this option only work in neovim 0.9
title = false,
\-- border type can be single,double,rounded,solid,shadow.
border = 'rounded',
winblend = 6,
expand = '',
collapse = '',
preview = ' ',
code_action = '💡',
diagnostic = '',
incoming = ' ',
outgoing = ' ',
colors = {
\--float window normal background color
\-- normal_bg = '#232136',
},
kind = {},
},

preview = {
lines_above = 1,
lines_below = 10,
},
scroll_preview = {
scroll_down = '\<C-f\>',
scroll_up = '\<C-b\>',
},
request_timeout = 2000,

finder = {
edit = { 'o', '\<CR\>' },
vsplit = 's',
split = 'i',
tabe = 't',
quit = { 'q', '\<ESC\>' },
},
\-- ライトバルブをすべて無効
lightbulb = {
enable = false,
enable_in_insert = false,
sign = false,
sign_priority = 40,
virtual_text = false,
},

diagnostic = {
show_code_action = false,
show_source = true,
jump_num_shortcut = true,
keys = {
exec_action = 'o',
quit = 'q',
go_action = 'g'
},
},
\-- winbarのシンボルを無効化
symbol_in_winbar = {
enable = false,
separator = ' ',
hide_keyword = true,
show_file = true,
folder_level = 2,
respect_root = false,
color_mode = true,
},
}

Solution

  • In your init.lua file you have to write

    vim.opt.signcolumn = "yes"
    

    Those diagnostics symbols are automatically placed in that column but because you don't have it enabled all the time it will pop in or out depending on if it is needed, causing flickering, turning it permanently on fixes the issue.