only make one scratch buffer ever

This commit is contained in:
Ivar Fatland
2025-12-12 08:51:55 +01:00
parent c5d28c5a47
commit 8f20413457
+17 -14
View File
@@ -217,25 +217,28 @@ vim.api.nvim_create_autocmd('BufEnter', {
do do
-- one shared statusline looks better for the split. -- one shared statusline looks better for the split.
vim.o.laststatus = 3 vim.o.laststatus = 3
local buf = vim.api.nvim_create_buf(false, true) local ID = '4f2de2e3-a1bf-481f-919c-7f68ec6511c9'
vim.api.nvim_set_option_value('buftype', 'nofile', {buf = buf}) local buf = _G[ID]
vim.api.nvim_set_option_value('modifiable', false, {buf = buf}) if buf == nil then
vim.api.nvim_create_autocmd('WinEnter', { buf = vim.api.nvim_create_buf(false, true)
callback = function() vim.api.nvim_set_option_value('buftype', 'nofile', {buf = buf})
local curr = vim.api.nvim_get_current_buf() vim.api.nvim_set_option_value('modifiable', false, {buf = buf})
if curr == buf then vim.api.nvim_create_autocmd('WinEnter', {
vim.cmd("wincmd p") callback = function()
local curr = vim.api.nvim_get_current_buf()
if curr == buf then
vim.cmd("wincmd p")
end
end end
end })
}) vim.api.nvim_buf_set_var(buf, ID, true)
_G[ID] = buf
local PADDING_ID = '4f2de2e3-a1bf-481f-919c-7f68ec6511c9' end
vim.api.nvim_buf_set_var(buf, PADDING_ID, true)
local function get_padding_window() local function get_padding_window()
local windows = vim.api.nvim_list_wins() local windows = vim.api.nvim_list_wins()
for _, win in ipairs(windows) do for _, win in ipairs(windows) do
local ok, _ = pcall(vim.api.nvim_buf_get_var, vim.api.nvim_win_get_buf(win), PADDING_ID) local ok, _ = pcall(vim.api.nvim_buf_get_var, vim.api.nvim_win_get_buf(win), ID)
if ok then if ok then
return win return win
end end