summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/extra/neoscroll.lua
diff options
context:
space:
mode:
authorGustaf Rydholm <gustaf.rydholm@gmail.com>2021-08-10 23:15:04 +0200
committerGustaf Rydholm <gustaf.rydholm@gmail.com>2021-08-10 23:15:04 +0200
commit540268d618627079c9b958a955b586e1888b46a8 (patch)
tree1a22a5feb457135178b9d4fe8b6c1755f5ca66bc /.config/nvim/lua/extra/neoscroll.lua
parente79bd3273f58ba38e8fcd716090b89326791afbb (diff)
Major refactor of nvim
Diffstat (limited to '.config/nvim/lua/extra/neoscroll.lua')
-rw-r--r--.config/nvim/lua/extra/neoscroll.lua25
1 files changed, 25 insertions, 0 deletions
diff --git a/.config/nvim/lua/extra/neoscroll.lua b/.config/nvim/lua/extra/neoscroll.lua
new file mode 100644
index 0000000..65f486b
--- /dev/null
+++ b/.config/nvim/lua/extra/neoscroll.lua
@@ -0,0 +1,25 @@
+local M = {}
+local Log = require "core.log"
+
+M.config = function()
+ local status_ok, neoscroll = pcall(require, "neoscroll")
+ if not status_ok then
+ Log:get_default().error "Failed to load hop"
+ return
+ end
+
+ neoscroll.setup {
+ -- All these keys will be mapped to their corresponding default scrolling animation
+ mappings = { "<C-u>", "<C-d>", "<C-b>", "<C-f>", "<C-y>", "<C-e>", "zt", "zz", "zb" },
+ hide_cursor = true, -- Hide cursor while scrolling
+ stop_eof = true, -- Stop at <EOF> when scrolling downwards
+ use_local_scrolloff = false, -- Use the local scope of scrolloff instead of the global scope
+ respect_scrolloff = false, -- Stop scrolling when the cursor reaches the scrolloff margin of the file
+ cursor_scrolls_alone = true, -- The cursor will keep on scrolling even if the window cannot scroll further
+ easing_function = nil, -- Default easing function
+ pre_hook = nil, -- Function to run before the scrolling animation starts
+ post_hook = nil, -- Function to run after the scrolling animation ends
+ }
+end
+
+return M