Neovim plugin improving access to clipboard history (mirror)
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: fixed YB_OPTS.keymaps not being correctly set. #21

ptdewey 63473556 f1a9dbf4

+22 -15
+3
lua/yankbank/init.lua
··· 47 47 -- merge opts with default options table 48 48 YB_OPTS = vim.tbl_deep_extend("keep", opts or {}, default_opts) 49 49 50 + -- set up menu keybinds from defafaults and YB_OPTS.keymaps 51 + menu.setup() 52 + 50 53 -- enable persistence based on opts (needs to be called before autocmd setup) 51 54 YB_YANKS, YB_REG_TYPES, YB_PINS = persistence.setup() 52 55
+19 -15
lua/yankbank/menu.lua
··· 18 18 yank_register = "+", 19 19 } 20 20 21 - -- merge default and options keymap tables 22 - local k = vim.tbl_deep_extend("force", default_keymaps, YB_OPTS.keymaps or {}) 21 + -- local YB_OPTS.keymaps = {} 23 22 24 - -- merge default and options register tables 25 - YB_OPTS.registers = 26 - vim.tbl_deep_extend("force", default_registers, YB_OPTS.registers or {}) 23 + function M.setup() 24 + -- merge default and options keymap tables 25 + YB_OPTS.keymaps = 26 + vim.tbl_deep_extend("force", default_keymaps, YB_OPTS.keymaps or {}) 27 + -- merge default and options register tables 28 + YB_OPTS.registers = 29 + vim.tbl_deep_extend("force", default_registers, YB_OPTS.registers or {}) 27 30 28 - -- check table for number behavior option (prefix or jump, default to prefix) 29 - YB_OPTS.num_behavior = YB_OPTS.num_behavior or "prefix" 31 + -- check table for number behavior option (prefix or jump, default to prefix) 32 + YB_OPTS.num_behavior = YB_OPTS.num_behavior or "prefix" 33 + end 30 34 31 35 --- Container class for YankBank buffer related variables 32 36 ---@class YankBankBufData ··· 118 122 119 123 -- popup buffer navigation binds 120 124 if YB_OPTS.num_behavior == "prefix" then 121 - vim.keymap.set("n", k.navigation_next, function() 125 + vim.keymap.set("n", YB_OPTS.keymaps.navigation_next, function() 122 126 local count = vim.v.count1 > 0 and vim.v.count1 or 1 123 127 helpers.next_numbered_item(count) 124 128 return "" 125 129 end, { noremap = true, silent = true, buffer = b.bufnr }) 126 - vim.keymap.set("n", k.navigation_prev, function() 130 + vim.keymap.set("n", YB_OPTS.keymaps.navigation_prev, function() 127 131 local count = vim.v.count1 > 0 and vim.v.count1 or 1 128 132 helpers.prev_numbered_item(count) 129 133 return "" ··· 131 135 else 132 136 vim.keymap.set( 133 137 "n", 134 - k.navigation_next, 138 + YB_OPTS.keymaps.navigation_next, 135 139 helpers.next_numbered_item, 136 140 map_opts 137 141 ) 138 142 vim.keymap.set( 139 143 "n", 140 - k.navigation_prev, 144 + YB_OPTS.keymaps.navigation_prev, 141 145 helpers.prev_numbered_item, 142 146 map_opts 143 147 ) ··· 162 166 end 163 167 164 168 -- bind paste behavior 165 - vim.keymap.set("n", k.paste, function() 169 + vim.keymap.set("n", YB_OPTS.keymaps.paste, function() 166 170 local cursor = vim.api.nvim_win_get_cursor(b.win_id)[1] 167 171 -- use the mapping to find the original yank 168 172 local yankIndex = b.line_yank_map[cursor] ··· 179 183 end 180 184 end, map_opts) 181 185 -- paste backwards 182 - vim.keymap.set("n", k.paste_back, function() 186 + vim.keymap.set("n", YB_OPTS.keymaps.paste_back, function() 183 187 local cursor = vim.api.nvim_win_get_cursor(b.win_id)[1] 184 188 -- use the mapping to find the original yank 185 189 local yankIndex = b.line_yank_map[cursor] ··· 197 201 end, map_opts) 198 202 199 203 -- bind yank behavior 200 - vim.keymap.set("n", k.yank, function() 204 + vim.keymap.set("n", YB_OPTS.keymaps.yank, function() 201 205 local cursor = vim.api.nvim_win_get_cursor(b.win_id)[1] 202 206 local yankIndex = b.line_yank_map[cursor] 203 207 if yankIndex then ··· 208 212 209 213 -- close popup keybinds 210 214 -- REFACTOR: check if close keybind is string, handle differently 211 - for _, map in ipairs(k.close) do 215 + for _, map in ipairs(YB_OPTS.keymaps.close) do 212 216 vim.keymap.set("n", map, function() 213 217 vim.api.nvim_win_close(b.win_id, true) 214 218 end, map_opts)