dotfiles/config/nvim/lua/plugins/neoscroll.lua
2024-07-08 07:37:54 +03:30

21 lines
903 B
Lua

require('neoscroll').setup({
ease_function = "quadratic",
-- Set any options as needed
pre_hook = function(info) if info == "cursorline" then vim.wo.cursorline = false end end,
post_hook = function(info) if info == "cursorline" then vim.wo.cursorline = true end end
})
local t = {}
-- Syntax: t[keys] = {function, {function arguments}}
t['<C-u>'] = {'scroll', {'-vim.wo.scroll', 'true', '250', 'sine', [['cursorline']]}}
t['<C-d>'] = {'scroll', { 'vim.wo.scroll', 'true', '250', 'sine', [['cursorline']]}}
t['<C-b>'] = {'scroll', {'-vim.api.nvim_win_get_height(0)', 'true', '450'}}
t['<C-f>'] = {'scroll', { 'vim.api.nvim_win_get_height(0)', 'true', '450'}}
t['<C-y>'] = {'scroll', {'-0.10', 'false', '100'}}
t['<C-e>'] = {'scroll', { '0.10', 'false', '100'}}
t['zt'] = {'zt', {'250'}}
t['zz'] = {'zz', {'250'}}
t['zb'] = {'zb', {'250'}}
require('neoscroll.config').set_mappings(t)