summaryrefslogtreecommitdiff
path: root/dot_config/nvim/lua/plugins/trash/scroll.luaa
diff options
context:
space:
mode:
Diffstat (limited to 'dot_config/nvim/lua/plugins/trash/scroll.luaa')
-rw-r--r--dot_config/nvim/lua/plugins/trash/scroll.luaa38
1 files changed, 38 insertions, 0 deletions
diff --git a/dot_config/nvim/lua/plugins/trash/scroll.luaa b/dot_config/nvim/lua/plugins/trash/scroll.luaa
new file mode 100644
index 0000000..120d141
--- /dev/null
+++ b/dot_config/nvim/lua/plugins/trash/scroll.luaa
@@ -0,0 +1,38 @@
+return {
+ "declancm/cinnamon.nvim",
+ version = "*", -- use latest release
+ config = function()
+ local cinnamon = require("cinnamon")
+
+ cinnamon.setup()
+
+ -- Centered scrolling:
+ vim.keymap.set("n", "<C-U>", function()
+ cinnamon.scroll("<C-U>zz")
+ end)
+ vim.keymap.set("n", "<C-D>", function()
+ cinnamon.scroll("<C-D>zz")
+ end)
+
+ -- LSP:
+ vim.keymap.set("n", "gd", function()
+ cinnamon.scroll(vim.lsp.buf.definition)
+ end)
+ vim.keymap.set("n", "gD", function()
+ cinnamon.scroll(vim.lsp.buf.declaration)
+ end)
+
+ -- Flash.nvim integration:
+ local flash = require("flash")
+ local jump = require("flash.jump")
+
+ flash.setup({
+ action = function(match, state)
+ cinnamon.scroll(function()
+ jump.jump(match, state)
+ jump.on_jump(state)
+ end)
+ end,
+ })
+ end,
+}