diff options
| author | Elvis Claros Castro <elvis@claros.ar> | 2024-12-09 11:24:40 -0300 |
|---|---|---|
| committer | Elvis Claros Castro <elvis@claros.ar> | 2024-12-09 11:24:40 -0300 |
| commit | 4439edc5a91582f570551e5e849347a80bde40ee (patch) | |
| tree | 00e93e727e43b5e98fbd38dbb6be5b60f2203847 /lua/config/utils.lua | |
| parent | e00fc002a6441fa3741d1f705337efbbd8850744 (diff) | |
| download | nvim-conf-4439edc5a91582f570551e5e849347a80bde40ee.tar.gz nvim-conf-4439edc5a91582f570551e5e849347a80bde40ee.zip | |
Modifico Las configuraciones de copilot-chat
Diffstat (limited to 'lua/config/utils.lua')
| -rw-r--r-- | lua/config/utils.lua | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/lua/config/utils.lua b/lua/config/utils.lua new file mode 100644 index 0000000..ea8a5c9 --- /dev/null +++ b/lua/config/utils.lua @@ -0,0 +1,73 @@ +local wk = require('which-key') +local group = vim.api.nvim_create_augroup('NeoVimRc', { clear = true }) + +local M = {} + +M.dot = function(callback) + return function() + _G.dot_repeat_callback = callback + vim.go.operatorfunc = 'v:lua.dot_repeat_callback' + vim.cmd('normal! g@l') + end +end + +M.map = function(mode, keys, func, desc, buffer, dot) + if dot then + if func then + local f = func + func = M.dot(function() + f() + end) + end + if desc then + desc = desc .. ' [R]' + end + end + + vim.keymap.set(mode, keys, func, { buffer = buffer, desc = desc, remap = true, nowait = true }) +end + +M.nmap = function(keys, func, desc, buffer) + M.map('n', keys, func, desc, buffer) +end + +M.rnmap = function(keys, func, desc, buffer) + M.map('n', keys, func, desc, buffer, true) +end + +M.vmap = function(keys, func, desc, buffer) + M.map('v', keys, func, desc, buffer) +end + +M.rvmap = function(keys, func, desc, buffer) + M.map('v', keys, func, desc, buffer, true) +end + +M.nvmap = function(keys, func, desc, buffer) + M.map({ 'n', 'v' }, keys, func, desc, buffer) +end + +M.rnvmap = function(keys, func, desc, buffer) + M.map({ 'n', 'v' }, keys, func, desc, buffer, true) +end + +M.au = function(event, opts) + opts['group'] = group + return vim.api.nvim_create_autocmd(event, opts) +end + +M.desc = function(key, desc, icon) + local opts = { key, desc = desc } + if icon then + opts.icon = icon + end + wk.add(opts) +end + +M.make_capabilities = function() + local capabilities = vim.lsp.protocol.make_client_capabilities() + capabilities = vim.tbl_deep_extend('force', capabilities, require('autocomplete.capabilities')) + return capabilities +end + +return M |