From 511480cabcf1766f7680051ba7d5ef99bb5b676e Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 9 Jun 2024 22:16:21 +0800 Subject: [PATCH] fix(guide): use hide option only for nvim 0.10.0+ --- lua/spacevim/api/vim/statusline.lua | 11 +++++++---- lua/spacevim/plugin/guide.lua | 13 +++++++++---- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/lua/spacevim/api/vim/statusline.lua b/lua/spacevim/api/vim/statusline.lua index 7e0852eea..c475f7def 100644 --- a/lua/spacevim/api/vim/statusline.lua +++ b/lua/spacevim/api/vim/statusline.lua @@ -9,7 +9,7 @@ function M.opened() end function M.show() - if vim.api.nvim_win_is_valid(M.__winid) then + if vim.api.nvim_win_is_valid(M.__winid) and vim.fn.has('nvim-0.10.0') == 1 then vim.api.nvim_win_set_config(M.__winid, { hide = false }) end end @@ -24,15 +24,18 @@ function M.open_float(sl, ...) M.__bufnr = vim.api.nvim_create_buf(false, true) end if M.__winid == nil or not M.opened() then - M.__winid = vim.api.nvim_open_win(M.__bufnr, false, { + local opt = { relative = 'editor', width = vim.o.columns, height = 1, -- highlight = 'SpaceVim_statusline_a_bold', row = vim.o.lines - 2, col = 0, - hide = hide, - }) + } + if vim.fn.has('nvim-0.10.0') == 1 then + opt.hide = hide + end + M.__winid = vim.api.nvim_open_win(M.__bufnr, false, opt) end vim.fn.setwinvar(M.__winid, '&winhighlight', 'Normal:SpaceVim_statusline_a_bold') vim.fn.setbufvar(M.__bufnr, '&relativenumber', 0) diff --git a/lua/spacevim/plugin/guide.lua b/lua/spacevim/plugin/guide.lua index 9815f6b68..02d17a5c5 100644 --- a/lua/spacevim/plugin/guide.lua +++ b/lua/spacevim/plugin/guide.lua @@ -567,14 +567,17 @@ local function winopen() if not vim.api.nvim_buf_is_valid(bufnr) then bufnr = buffer.create_buf(false, true) end - winid = vim.api.nvim_open_win(bufnr, false, { + local opt = { relative = 'editor', width = vim.o.columns, height = 12, row = vim.o.lines - 14, col = 0, - hide = true, - }) + } + if vim.fn.has('nvim-0.10.0') == 1 then + opt.hide = true + end + winid = vim.api.nvim_open_win(bufnr, false, opt) guide_help_mode = false setlocalopt(bufnr, winid, { winhighlight = 'Normal:Pmenu,Search:', @@ -729,7 +732,9 @@ end wait_for_input = function() log.debug('wait for input:') local t = Key.t - vim.fn.timer_start(10, show_win) + if vim.fn.has('nvim-0.10.0') == 1 then + vim.fn.timer_start(10, show_win) + end local inp = VIM.getchar() log.debug('inp is:' .. inp) if inp == t('') then