From 3ec6f839a5d388f349793ed1cac904fadfe0f881 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Pankowski?= Date: Thu, 25 Sep 2025 22:49:51 +0200 Subject: [PATCH] vis: improve close prev/next window --- vis/.config/vis/visrc.lua | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/vis/.config/vis/visrc.lua b/vis/.config/vis/visrc.lua index 464fc4c..7dfd2e0 100644 --- a/vis/.config/vis/visrc.lua +++ b/vis/.config/vis/visrc.lua @@ -185,6 +185,22 @@ end local ripgrep = 'rg --column --line-number --color=always --smart-case' +local function close_prev_win() + vis:feedkeys('') + if not vis.win:close() then + vis:feedkeys('') + vis:info('No write since last change') + end +end + +local function close_next_win() + vis:feedkeys('') + if not vis.win:close() then + vis:feedkeys('') + vis:info('No write since last change') + end +end + vis.events.subscribe(vis.events.INIT, function() vis:command('set autoindent') @@ -194,8 +210,8 @@ vis.events.subscribe(vis.events.INIT, function() vis:map(vis.modes.NORMAL, '', '') vis:map(vis.modes.NORMAL, '', '') - vis:map(vis.modes.NORMAL, ' K', ':q', 'close previous window') - vis:map(vis.modes.NORMAL, ' J', ':q', 'close next window') + vis:map(vis.modes.NORMAL, ' K', close_prev_win) + vis:map(vis.modes.NORMAL, ' J', close_next_win) vis:map(vis.modes.NORMAL, ' l[', ':lspc-prev-diagnostic') vis:map(vis.modes.NORMAL, ' l]', ':lspc-next-diagnostic')