From 0d0cf7bf49dd402d12a550524645e4e9ef0de8bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergio=20La=C3=ADn?= Date: Sun, 16 Feb 2025 01:07:08 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat(nvim):=20center=20the=20screen?= =?UTF-8?q?=20when=20scrolling=20on=20snacks?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .config/nvim/lua/config/keymaps.lua | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/.config/nvim/lua/config/keymaps.lua b/.config/nvim/lua/config/keymaps.lua index fd2142a1..70031fa2 100644 --- a/.config/nvim/lua/config/keymaps.lua +++ b/.config/nvim/lua/config/keymaps.lua @@ -227,3 +227,22 @@ map("n", "ghb", Snacks.git.blame_line, { desc = "Blame Line" }) -- Windows Split map("n", "_", "s", { desc = "Split Window Below", remap = true }) map("n", "\\", "v", { desc = "Split Window Right", remap = true }) + +-- Center when scrolling +if Snacks.scroll.enabled then + map("n", "", function() + vim.wo.scrolloff = 999 + vim.defer_fn(function() + vim.wo.scrolloff = 8 + end, 500) + return "" + end, { expr = true }) + + map("n", "", function() + vim.wo.scrolloff = 999 + vim.defer_fn(function() + vim.wo.scrolloff = 8 + end, 500) + return "" + end, { expr = true }) +end