diff options
| author | srdusr <trevorgray@srdusr.com> | 2022-10-20 23:58:14 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2022-10-20 23:58:14 +0200 |
| commit | 6cdd3b4b282d79130dc6f2b346cb509ddbb6fa48 (patch) | |
| tree | 1c08d622e135b669381a0889c54012f70929514d /lua | |
| parent | 97be95d96b96c42dab64dff7018a89baa22384ee (diff) | |
| download | dotfiles-6cdd3b4b282d79130dc6f2b346cb509ddbb6fa48.tar.gz dotfiles-6cdd3b4b282d79130dc6f2b346cb509ddbb6fa48.zip | |
luasnip integration
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/user/autopairs.lua | 12 | ||||
| -rw-r--r-- | lua/user/cmp.lua | 39 | ||||
| -rw-r--r-- | lua/user/colorscheme.lua | 2 | ||||
| -rw-r--r-- | lua/user/keys.lua | 204 | ||||
| -rw-r--r-- | lua/user/luasnip.lua | 127 | ||||
| -rw-r--r-- | lua/user/opts.lua | 1 | ||||
| -rw-r--r-- | lua/user/pack.lua | 5 |
7 files changed, 250 insertions, 140 deletions
diff --git a/lua/user/autopairs.lua b/lua/user/autopairs.lua index 577e571..fc39d2e 100644 --- a/lua/user/autopairs.lua +++ b/lua/user/autopairs.lua @@ -11,9 +11,19 @@ npairs.setup { javascript = { "string", "template_string" }, java = false, }, + map = "<M-e>", + pairs_map = { +['<'] = '>', +}, disable_filetype = { "TelescopePrompt", "spectre_panel" }, + disable_in_macro = true, + disable_in_visualblock = true, + enalbe_moveright = true, + enable_afterquote = true, -- add bracket pairs after quote + enable_check_bracket_line = true, --- check bracket in same line + enable_bracket_in_quote = true, -- + break_undo = true, -- switch for basic rule break undo sequence fast_wrap = { - map = "<M-e>", chars = { "{", "[", "(", '"', "'" }, pattern = string.gsub([[ [%'%"%)%>%]%)%}%,] ]], "%s+", ""), offset = 0, -- Offset from pattern match diff --git a/lua/user/cmp.lua b/lua/user/cmp.lua index 77a4943..4dc7c45 100644 --- a/lua/user/cmp.lua +++ b/lua/user/cmp.lua @@ -1,7 +1,7 @@ -- Setup nvim-cmp. ---vim.opt.completeopt = "menu,menuone,noselect" -vim.g.completeopt = "menu,menuone,noselect,noinsert" +vim.opt.completeopt = "menu,menuone,noselect" +--vim.g.completeopt = "menu,menuone,noselect,noinsert" local cmp_status_ok, cmp = pcall(require, "cmp") if not cmp_status_ok then return @@ -39,7 +39,7 @@ require("symbols-outline").setup(opts) -- exclude = {}, --}) -require("luasnip.loaders.from_vscode").lazy_load() +--require("luasnip.loaders.from_vscode").lazy_load() local lspkind = require("lspkind") local kind_icons = { Text = "", @@ -70,17 +70,24 @@ local kind_icons = { } cmp.setup({ snippet = { - expand = function(args) - require("luasnip").lsp_expand(args.body) - end, + --expand = function(args) + -- require("luasnip").lsp_expand(args.body) + --end, + expand = function(args) + local luasnip = require("luasnip") + if not luasnip then + return + end + luasnip.lsp_expand(args.body) + end, }, mapping = cmp.mapping.preset.insert({ -- ["<CR>"] = cmp.mapping.confirm({ -- behavior = cmp.ConfirmBehavior.Replace, -- select = true, -- }), - ["<C-k>"] = cmp.mapping(cmp.mapping.select_prev_item(), { 'i', 'c' }), - ["<C-j>"] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 'c' }), + --["<C-k>"] = cmp.mapping(cmp.mapping.select_prev_item(), { 'i', 'c' }), + --["<C-j>"] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 'c' }), ['<C-y>'] = cmp.mapping.confirm({ select = true }), --["<C-e>"] = cmp.mapping.close(), ['<C-e>'] = cmp.mapping({ @@ -102,10 +109,12 @@ cmp.setup({ sources = cmp.config.sources({ { name = "path" }, - { name = "nvim_lua" }, + --{ name = "nvim_lua" }, { name = "gh_issues" }, { name = "nvim_lsp", keyword_length = 3 }, - { name = "luasnip", keyword_length = 4 }, + { name = 'luasnip', option = { use_show_condition = false } }, + --{ name = "luasnip" }, + --{ name = "luasnip", keyword_length = 4 }, --{ name = "buffer", keyword_length = 3 }, { name = "buffer", option = { get_bufnrs = function() return vim.api.nvim_list_bufs() @@ -144,11 +153,11 @@ cmp.setup({ format = lspkind.cmp_format { with_text = true, menu = { - buffer = "[buf]", nvim_lsp = "[LSP]", + luasnip = "[snip]", + buffer = "[buf]", nvim_lua = "[api]", path = "[path]", - luasnip = "[snip]", gh_issues = "[issues]", }, }, @@ -198,7 +207,7 @@ cmp.setup({ experimental = { ghost_text = true, hl_group = 'Nontext', - native_menu = false, + --native_menu = false, }, view = { @@ -236,8 +245,8 @@ cmp.setup.cmdline({ '/', '?' }, { cmp.setup.cmdline(":", { mapping = { - ["<C-k>"] = cmp.mapping(cmp.mapping.select_prev_item(), { 'i', 'c' }), - ["<C-j>"] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 'c' }), + ["<C-p>"] = cmp.mapping(cmp.mapping.select_prev_item(), { 'i', 'c' }), + ["<C-n>"] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 'c' }), ["<C-y>"] = cmp.mapping(cmp.mapping.confirm({ select = true }), { 'i', 'c' }), ["<C-e>"] = cmp.mapping(cmp.mapping.close(), { 'i', 'c' }), ["<C-u>"] = cmp.mapping(cmp.mapping.scroll_docs(-4), { 'i', 'c' }), diff --git a/lua/user/colorscheme.lua b/lua/user/colorscheme.lua index 3ded54c..dc0145d 100644 --- a/lua/user/colorscheme.lua +++ b/lua/user/colorscheme.lua @@ -1,6 +1,6 @@ -- Colorscheme -- ayu gruvbox molokai onedark srcery everblush vscode edge nightfly doom-one -local colorscheme = "doom-one" +local colorscheme = "onedark" local status_ok, _ = pcall(vim.cmd, "colorscheme " .. colorscheme) if not status_ok then vim.notify("colorscheme " .. colorscheme .. " not found!") diff --git a/lua/user/keys.lua b/lua/user/keys.lua index 4515cbc..1a2994b 100644 --- a/lua/user/keys.lua +++ b/lua/user/keys.lua @@ -1,17 +1,24 @@ --[[ key.lua ]] -- Shorten function name -local map = vim.api.nvim_set_keymap +--local keymap = vim.api.nvim_set_keymap +local keymap = vim.keymap -local function new_desc(d) - return { desc = d } -end - -local d = new_desc - -local opts = { noremap = true, silent = true } +--local function new_desc(d) +-- return { desc = d } +--end +-- +--local d = new_desc + +--local opts = { noremap = true, silent = true } +local term_opts = { noremap = true, silent = false } + local map = function(mode, l, r, opts) + opts = opts or {} + opts.silent = true + opts.noremap = true + keymap.set(mode, l, r, opts) + end -local term_opts = { silent = true } --------------- Standard Operations --------------- -- Semi-colon as leader key @@ -19,12 +26,12 @@ vim.g.mapleader = ";" --vim.g.maplocalleader = ";" -- "jj" to exit insert-mode -map("i", "jj", "<esc>", opts) +map("i", "jj", "<esc>") -- save quickly --map("n", ";w", ":w<CR>", d("Save buffer")) ---map("n", "<leader>so", ":luafile %<CR>", opts) +--map("n", "<leader>so", ":luafile %<CR>") --vim.cmd([[ --let $my_vimrc = $localappdata.'/nvim/init.lua' @@ -32,32 +39,40 @@ map("i", "jj", "<esc>", opts) --]]) --vim.api.nvim_set_keymap("n", "<leader><CR>", "<cmd>lua ReloadConfig()<CR>", { noremap = true, silent = false }) -vim.api.nvim_set_keymap("n", "<leader><CR>", "<cmd>luafile ~/.config/nvim/init.lua<CR>", { noremap = true, silent = false }) +map("n", "<leader><CR>", "<cmd>luafile ~/.config/nvim/init.lua<CR>", print ("Nvim configuration reloaded")) +-- +-- vim.notify("Nvim configuration reloaded!", vim.log.levels.INFO) + --vim.api.nvim_set_keymap('n', '<Leader>qr', '<cmd>:lua require("plugins.telescope").reload()<CR>', { noremap = true, silent = true }) --Easier split navigations, just ctrl-j instead of ctrl-w then j -map("n", "<C-J>", "<C-W><C-J>", opts) -map("n", "<C-K>", "<C-W><C-K>", opts) -map("n", "<C-L>", "<C-W><C-L>", opts) -map("n", "<C-H>", "<C-W><C-H>", opts) +--map("n", "<C-J>", "<C-W><C-J>") +--map("n", "<C-K>", "<C-W><C-K>") +--map("n", "<C-L>", "<C-W><C-L>") +--map("n", "<C-H>", "<C-W><C-H>") -- Combine buffers list with buffer name -map("n", "<Leader>b", ":buffers<CR>:buffer<Space>", opts) +map("n", "<Leader>b", ":buffers<CR>:buffer<Space>") -- Map buffer next, prev and delete to <leader+(n/p/d)> -map("n", "<leader>n", ":bn<cr>", opts) -map("n", "<leader>p", ":bp<cr>", opts) -map("n", "<leader>d", ":bd<cr>", opts) +map("n", "<leader>n", ":bn<cr>") +map("n", "<leader>p", ":bp<cr>") +map("n", "<leader>d", ":bd<cr>") -- Disable default completion. -map('i', '<C-n>', '<Nop>', opts) -map('i', '<C-p>', '<Nop>', opts) +map('i', '<C-n>', '<Nop>') +map('i', '<C-p>', '<Nop>') -- Set alt + j/k to switch lines of texts or simply move them -map("n", "<A-k>", ':let save_a=@a<Cr><Up>"add"ap<Up>:let @a=save_a<Cr>', opts) -map("n", "<A-j>", ':let save_a=@a<Cr>"add"ap:let @a=save_a<Cr>', opts) +map("n", "<A-k>", ':let save_a=@a<Cr><Up>"add"ap<Up>:let @a=save_a<Cr>') +map("n", "<A-j>", ':let save_a=@a<Cr>"add"ap:let @a=save_a<Cr>') + +map("i", "<C-l>", "<Del>") + +map("n", "<leader><C-l>", "<Cmd>!clear<CR>") + +map("n", "<leader>y", ":BufferPick<CR>") -map("n", "<leader><C-l>", "<Cmd>!clear<CR>", opts) vim.cmd([[ inoremap <A-h> <left> inoremap <A-j> <down> @@ -87,74 +102,74 @@ vim.cmd([[ ]]) -- move block easily -map("n", "<", "<<", d("Decrease indent")) -map("n", ">", ">>", d("Increase indent")) -map("x", "<", "<gv", d("Increase indent")) -map("x", ">", ">gv", d("Decrease indent")) +map("n", "<", "<<", term_opts) +map("n", ">", ">>", term_opts) +map("x", "<", "<gv", term_opts) +map("x", ">", ">gv", term_opts) -- Resize Panes -map("n", "<Leader>+", ":resize +5<CR>", opts) -map("n", "<Leader>-", ":resize -5<CR>", opts) -map("n", "<Leader><", ":vertical resize +5<CR>", opts) -map("n", "<Leader>>", ":vertical resize -5<CR>", opts) -map("n", "<Leader>=", "<C-w>=", opts) +map("n", "<Leader>+", ":resize +5<CR>") +map("n", "<Leader>-", ":resize -5<CR>") +map("n", "<Leader><", ":vertical resize +5<CR>") +map("n", "<Leader>>", ":vertical resize -5<CR>") +map("n", "<Leader>=", "<C-w>=") -- New tab -map("n", "<C-T>e", ":tabedit", opts) +map("n", "<C-T>e", ":tabedit") -- create tab like window -map("n", "<C-T>h", ":tabprevious<CR>", d("Goto previous tab")) -map("n", "<C-T>l", ":tabnext<CR>", d("Goto next tab")) -map("n", "<C-T>n", ":tabnew<CR>", d("Create a new tab")) +map("n", "<C-T>h", ":tabprevious<CR>") +map("n", "<C-T>l", ":tabnext<CR>") +map("n", "<C-T>n", ":tabnew<CR>") -- Vim TABs -map("n", "<leader>1", "1gt<CR>", opts) -map("n", "<leader>2", "2gt<CR>", opts) -map("n", "<leader>3", "3gt<CR>", opts) -map("n", "<leader>4", "4gt<CR>", opts) -map("n", "<leader>5", "5gt<CR>", opts) -map("n", "<leader>6", "6gt<CR>", opts) -map("n", "<leader>7", "7gt<CR>", opts) -map("n", "<leader>8", "8gt<CR>", opts) -map("n", "<leader>9", "9gt<CR>", opts) -map("n", "<leader>0", "10gt<CR>", opts) +map("n", "<leader>1", "1gt<CR>") +map("n", "<leader>2", "2gt<CR>") +map("n", "<leader>3", "3gt<CR>") +map("n", "<leader>4", "4gt<CR>") +map("n", "<leader>5", "5gt<CR>") +map("n", "<leader>6", "6gt<CR>") +map("n", "<leader>7", "7gt<CR>") +map("n", "<leader>8", "8gt<CR>") +map("n", "<leader>9", "9gt<CR>") +map("n", "<leader>0", "10gt<CR>") -- Split window -map("n", "<leader>h", ":split<CR>", opts) -map("n", "<leader>v", ":vsplit<CR>", opts) -map("n", "<leader>c", "<C-w>c", opts) +map("n", "<leader>h", ":split<CR>") +map("n", "<leader>v", ":vsplit<CR>") +map("n", "<leader>c", "<C-w>c") -- Toggle set number -map("n", "<leader>$", ":NumbersToggle<CR>", opts) -map("n", "<leader>%", ":NumbersOnOff<CR>", opts) +map("n", "<leader>$", ":NumbersToggle<CR>") +map("n", "<leader>%", ":NumbersOnOff<CR>") -- Change mode to executable -map("n", "<leader>x", ":!chmod +x %<CR>", opts) +map("n", "<leader>x", ":!chmod +x %<CR>") -- Paste without replace clipboard -map("v", "p", '"_dP', opts) +map("v", "p", '"_dP') -- Paste end of line ---map("n", ",", "$p", opts) +--map("n", ",", "$p") vim.cmd([[ nmap , $p ]]) -- Select entire buffer -map("v", "<aa>", "gg<S-v>G", opts) +map("v", "<aa>", "gg<S-v>G") -- Delete without changing the registers ---map('n', 'x', '"_x', opts) +--map('n', 'x', '"_x') -- Select all text in current buffer --map('n', '<leader>a', ':keepjumps normal! ggVG<cr>') -- Swap two pieces of text, use x to cut in visual mode, then use Ctrl-x in -- visual mode to select text to swap with -map("v", "<C-X>", "<Esc>`.``gvP``P", opts) +map("v", "<C-X>", "<Esc>`.``gvP``P") -- Search and replace -map("v", "<leader>sr", 'y:%s/<C-r><C-r>"//g<Left><Left>c', opts) +map("v", "<leader>sr", 'y:%s/<C-r><C-r>"//g<Left><Left>c') --vnoremap ; :call Get_visual_selection()<cr> -- --function! Get_visual_selection() @@ -192,40 +207,45 @@ vim.cmd([[ map <leader>s :up \| saveas! %:p:r-<C-R>=strftime("%y.%m.%d-%H:%M")<CR>-bak.<C-R>=expand("%:e")<CR> \| 3sleep \| e #<CR> ]]) +-- Execute this file +--map("n", "<leader><leader>x", ":call scripts#save_and_exec()<CR>", print("save & exec")) +vim.cmd([[ + " Execute this file + nnoremap <leader><leader>x :call scripts#save_and_exec()<CR>\|:echom "save & exec . . ."<CR> + +]]) -------------- Telescope -------------- --Telescope find_files cwd=.. -map("n", "<leader>fc", "<cmd>lua require('telescope.builtin').commands()<cr>", opts) +map("n", "<leader>fc", "<cmd>lua require('telescope.builtin').commands()<cr>") map( "n", "<leader>ft", - "<cmd>lua require('telescope.builtin').builtin(require('telescope.themes').get_dropdown({}))<cr>", - opts -) + "<cmd>lua require('telescope.builtin').builtin(require('telescope.themes').get_dropdown({}))<cr>") -map("n", "<leader>fg", "<cmd>lua require('telescope.builtin').live_grep()<cr>", opts) -map("n", "<leader>fb", "<cmd>lua require('telescope.builtin').current_buffer_fuzzy_find()<cr>", opts) +map("n", "<leader>fg", "<cmd>lua require('telescope.builtin').live_grep()<cr>") +map("n", "<leader>fb", "<cmd>lua require('telescope.builtin').current_buffer_fuzzy_find()<cr>") - map("n", "<leader>fd", "<cmd>lua require('telescope.builtin').diagnostics()<cr>", opts) ---map("n", "<leader>fz", ":FZF<CR>", opts) ---map("t", [[<Esc><Esc>]], [[<C-\><C-N>]], opts) + map("n", "<leader>fd", "<cmd>lua require('telescope.builtin').diagnostics()<cr>") +--map("n", "<leader>fz", ":FZF<CR>") +--map("t", [[<Esc><Esc>]], [[<C-\><C-N>]]) --map("n", "ff", ":NvimTreeToggle<CR>", {}) map("n", "<leader>f", ":NvimTreeToggle<CR>", {}) -- This <Esc><Esc> avoids crashing fzf menu running in TERMINAL MODE (:q if you do) -- Find files in config dirs --key_map("n", "<leader>e", ":lua require('plugins.telescope').find_configs()<CR>", opts) ---map("n", "<leader>f.", "<cmd>lua require('plugins.telescope').find_configs({})<cr>", opts) -map("n", "<leader>ft", "<cmd>lua require('plugins.telescope').file_explorer({})<cr>", opts) ---map("n", "<leader>fd", "<cmd>lua require('plugins.telescope').find_notes({})<cr>", opts) -map("n", "<leader>fm", "<cmd>lua require('telescope').extensions.media_files.media_files({})<cr>", opts) +--map("n", "<leader>f.", "<cmd>lua require('plugins.telescope').find_configs({})<cr>") +map("n", "<leader>ft", "<cmd>lua require('plugins.telescope').file_explorer({})<cr>") +--map("n", "<leader>fd", "<cmd>lua require('plugins.telescope').find_notes({})<cr>") +map("n", "<leader>fm", "<cmd>lua require('telescope').extensions.media_files.media_files({})<cr>") -- registers picker -map("n", "<leader>r", "<cmd>lua require('telescope.builtin').registers({})<CR>", opts) +map("n", "<leader>r", "<cmd>lua require('telescope.builtin').registers({})<CR>") -- find files including gitignored --keymap( -- "n", -- "<leader>fg", --- "<cmd>lua require('telescope.builtin').find_files({find_command={'fd','--no-ignore-vcs'}})<CR>", opts) +-- "<cmd>lua require('telescope.builtin').find_files({find_command={'fd','--no-ignore-vcs'}})<CR>") -- open available commands & run it -map("n", "<leader>fc", "<cmd>lua require('telescope.builtin').commands({results_title='Commands Results'})<CR>", opts) +map("n", "<leader>fc", "<cmd>lua require('telescope.builtin').commands({results_title='Commands Results'})<CR>") -------------- Autopairs -------------- Toggle_autopairs = function() @@ -259,7 +279,7 @@ vim.cmd([[ endfunction nnoremap <leader>tb :call Toggle_transparent_background()<CR> ]]) ---keymap('n', '<leader>tb', ':Toggle_transparent_background<CR>', opts) +--keymap('n', '<leader>tb', ':Toggle_transparent_background<CR>') -- Toggle zoom vim.cmd([[ @@ -276,10 +296,10 @@ vim.cmd([[ endfunction command! ZoomToggle call s:ZoomToggle() ]]) -map("n", "<leader>z", ":ZoomToggle<CR>", opts) +map("n", "<leader>z", ":ZoomToggle<CR>") -- "Zoom" a split window into a tab and/or close it ---keymap('n', '<Leader>,', ':tabnew %<CR>', opts) ---keymap('n', '<Leader>.', ':tabclose<CR>', opts) +--keymap('n', '<Leader>,', ':tabnew %<CR>') +--keymap('n', '<Leader>.', ':tabclose<CR>') -- Open last closed buffer vim.cmd([[ @@ -303,7 +323,7 @@ vim.cmd([[ execute 'b ' . last_buf endfunction ]]) -map("n", "<C-t>", ":call OpenLastClosed() <CR>", opts) +map("n", "<C-t>", ":call OpenLastClosed() <CR>") -- Tabularize vim.cmd([[ @@ -329,8 +349,8 @@ vim.cmd([[ --EasyAlign /--/ --:'<,'>Tabularize /-- -map("n", "<leader>,", ":hide<CR>", opts) -map("n", "<leader>.", ":unhide<CR>", opts) +map("n", "<leader>,", ":hide<CR>") +map("n", "<leader>.", ":unhide<CR>") --" Clean trailing whitespace --nnoremap <leader>ww mz:%s/\s\+$//<cr>:let @/=''<cr>`z @@ -339,12 +359,12 @@ map("n", "<leader>.", ":unhide<CR>", opts) --vim.api.nvim_create_user_command('W', 'w !sudo tee > /dev/null %', {}) -- Copy and Paste with <C-c> and <C-v> ---keymap('n', '<expr> p', (v:register =--= '"' && &clipboard =~ 'unnamed' ? '"*p' : '"' . v:register . 'p')'', opts) +--keymap('n', '<expr> p', (v:register =--= '"' && &clipboard =~ 'unnamed' ? '"*p' : '"' . v:register . 'p')'') -- Use command :Vb for Visual Block or <C-q> since <C-v> is used for Copy --command! Vb normal! <C-v> -- Map <w!!> to save/edit a root permission/read-only file, only works in -- traditional vim and not neovim ---keymap('c', 'w!! %!sudo tee > /dev/null', opts) +--keymap('c', 'w!! %!sudo tee > /dev/null') --" Copying text to the system clipboard. --" --" For some reason Vim no longer wants to talk to the OS X pasteboard through "*. @@ -385,8 +405,8 @@ map("n", "<leader>.", ":unhide<CR>", opts) ---- Open the current file in the default program (on Mac this should just be just `open`) --keymap('n', '<leader>x', ':!xdg-open %<cr><cr>') -map("n", "<leader>ff", "<cmd>lua require('telescope.builtin').find_files()<cr>", opts) ---keymap("n", "<leader>ff", "<cmd>lua require('telescope.builtin').find_files cwd=..()<cr>", opts) +map("n", "<leader>ff", "<cmd>lua require('telescope.builtin').find_files()<cr>") +--keymap("n", "<leader>ff", "<cmd>lua require('telescope.builtin').find_files cwd=..()<cr>") --keymap('n', '<leader>k', ':nohlsearch<CR>') -- --"This unsets the "last search pattern" register by hitting return @@ -407,8 +427,8 @@ vim.cmd([[ ---- http://ddrscott.github.io/blog/2016/yank-without-jank/ --keymap('v', 'y', 'myy`y') --keymap('v', 'Y', 'myY`y') ---keymap("n", "<C-q>", ":q<cr>", opts) ---keymap("n", "<C-M-q>", ":qa!<cr>", opts) +--keymap("n", "<C-q>", ":q<cr>") +--keymap("n", "<C-M-q>", ":qa!<cr>") --" Sort lines --nnoremap <leader>s vip:!sort<cr> @@ -525,7 +545,7 @@ vim.cmd([[ -- ALE: toggle _ALE activity --keymap('n', '<leader>a',[[:ALEToggle<CR>]]) ---keymap('n', '<Leader>cd', ':call fzf#run({'source': 'fd -t d -H . ~', 'sink': 'cd'})<CR>', opts) --- ":lua require('neogen').generate()<CR>", opts) ---keymap("n", "<leader>ww", ":set wrap!<CR>", opts) +--keymap('n', '<Leader>cd', ':call fzf#run({'source': 'fd -t d -H . ~', 'sink': 'cd'})<CR>') +-- ":lua require('neogen').generate()<CR>") +--keymap("n", "<leader>ww", ":set wrap!<CR>") -- diff --git a/lua/user/luasnip.lua b/lua/user/luasnip.lua index 12352e8..7a6066e 100644 --- a/lua/user/luasnip.lua +++ b/lua/user/luasnip.lua @@ -4,7 +4,8 @@ end --local luasnip = require("luasnip") local ls = require "luasnip" -- local types = require "luasnip.util.types" -- -local options = { +--local options = { +ls.config.set_config { history = true, updateevents = "TextChanged,TextChangedI", -- Autosnippets: @@ -17,45 +18,113 @@ local options = { }, -- }, -- } --- <c-k> is my expansion key --- this will expand the current item or jump to the next item within the snippet. -vim.keymap.set({ "i", "s" }, "<c-.>", function() - if ls.expand_or_jumpable() then - ls.expand_or_jump() - end -end, { silent = true }) +-- ls.expand_or_jump() +-- end +--nd, { silent = true }) -- <c-j> is my jump backwards key. -- this always moves to the previous item within the snippet -vim.keymap.set({ "i", "s" }, "<c-,>", function() - if ls.jumpable(-1) then - ls.jump(-1) - end -end, { silent = true }) +--im.keymap.set({ "i", "s" }, "<C-j>", function() +-- if ls.jumpable(-1) then +-- ls.jump(-1) +-- end +--nd, { silent = true }) -- <c-l> is selecting within a list of options. -- This is useful for choice nodes (introduced in the forthcoming episode 2) -vim.keymap.set("i", "<c-l>", function() - if ls.choice_active() then - ls.change_choice(1) - end -end) +--vim.keymap.set("i", "<c-l>", function() +-- if ls.choice_active() then +-- ls.change_choice(1) +-- end +--end) -vim.keymap.set("i", "<c-c>", require "luasnip.extras.select_choice") +--vim.keymap.set("i", "<c-z>", require "luasnip.extras.select_choice") -- shorcut to source my luasnips file again, which will reload my snippets -vim.keymap.set("n", "<leader><leader>s", "<cmd>source ~/.config/nvim/lua/plugins/luasnip.lua<CR>") +--vim.keymap.set("n", "<leader><leader>s", "<cmd>source ~/.config/nvim/lua/user/plugins/luasnip.lua<CR>") -- ls.parser.parse_snippet(<text>, <VS**** style snippet>) -ls.snippets = { - all = { - -- Available in any filetype - ls.parser.parse_snippet("expand", "-- this is what was expanded!"), - }, - lua = { - -- Lua specific snippets go here. - }, -} +--ls.snippets = { +-- all = { +-- -- Available in any filetype +-- ls.parser.parse_snippet("expand", "-- this is what was expanded!"), +--s.snippets = { +-- all = { +-- -- Available in any filetype +-- ls.parser.parse_snippet("expand", "-- this is what was expanded!"), +-- }, +-- lua = { +-- -- Lua specific snippets go here. +-- ls.parser.parse_snippet("lf", "local $1 = function($2)\n $0\nend") +-- }, +-- +--}) +local snip = ls.snippet +local node = ls.snippet_node +local text = ls.text_node +local insert = ls.insert_node +local func = ls.function_node +local choice = ls.choice_node +local dynamicn = ls.dynamic_node + +local date = function() return {os.date('%Y-%m-%d')} end + +ls.add_snippets(nil, { + all = { + --snip({ + -- trig = "date", + -- namr = "Date", + -- dscr = "Date in the form of YYYY-MM-DD", + --}, { + -- func(date, {}), + --}), + snip({ + trig = "meta", + namr = "Metadata", + dscr = "Yaml metadata format for markdown" +}, +{ + }), + }, +}) +--local opts = { noremap = true, silent = true } +--keymap("i", "<C-j>", "<cmd>lua require'luasnip'.jump(1)<CR>", opts) +--keymap("s", "<C-j>", "<cmd>lua require'luasnip'.jump(1)<CR>", opts) +--keymap("i", "<C-k>", "<cmd>lua require'luasnip'.jump(-1)<CR>", opts) +--local keymap = vim.api.nvim_set_keymap +local keymap = vim.keymap +local term_opts = { noremap = true, silent = false } + local map = function(mode, l, r, opts) + opts = opts or {} + opts.silent = true + opts.noremap = true + keymap.set(mode, l, r, opts) + end + +map("i", "<C-j>", "<Plug>luasnip-expand-or-jump<CR>") +map("i", "<C-k>", "<Plug>luasnip-jump-prev * <Cmd>lua require'luasnip'.jump(-1)<CR>") +map("s", "<C-j>", "<Plug>luasnip-expand-or-jump<CR>") +map("s", "<C-k>", "<Plug>luasnip-jump-prev * <Cmd>lua require'luasnip'.jump(-1)<CR>") +--keymap("s", "<C-k>", "<cmd>lua require'luasnip'.jump(-1)<CR>", opts) +--map("i", "<C-j>", "<Plug>luasnip-expand-or-jump<CR>") + +--! <Plug>luasnip-expand-repeat * <Cmd>lua require'luasnip'.expand_repeat()<CR> +--! <Plug>luasnip-delete-check * <Cmd>lua require'luasnip'.unlink_current_if_deleted()<CR> +--i <Plug>luasnip-jump-prev * <Cmd>lua require'luasnip'.jump(-1)<CR> +--i <Plug>luasnip-jump-next * <Cmd>lua require'luasnip'.jump(1)<CR> +--i <Plug>luasnip-prev-choice * <Cmd>lua require'luasnip'.change_choice(-1)<CR> +--i <Plug>luasnip-next-choice * <Cmd>lua require'luasnip'.change_choice(1)<CR> +--i <Plug>luasnip-expand-snippet * <Cmd>lua require'luasnip'.expand()<CR> +--i <Plug>luasnip-expand-or-jump * <Cmd>lua require'luasnip'.expand_or_jump()<CR> + + + + + + + + + diff --git a/lua/user/opts.lua b/lua/user/opts.lua index 51b3628..3200cd5 100644 --- a/lua/user/opts.lua +++ b/lua/user/opts.lua @@ -53,6 +53,7 @@ vim.opt.ttimeoutlen = 10 -- -- Indent/tab vim.opt.breakindent = true -- vim.opt.autoindent = true -- Indent according to previous line. +vim.opt.copyindent = true -- Copy indent from the previous line vim.opt.smarttab = false -- vim.opt.tabstop = 2 -- vim.opt.expandtab = true -- Indent according to previous line. diff --git a/lua/user/pack.lua b/lua/user/pack.lua index 8df4216..55b52cd 100644 --- a/lua/user/pack.lua +++ b/lua/user/pack.lua @@ -174,7 +174,8 @@ return packer.startup(function(use) use("saadparwaiz1/cmp_luasnip") -- snippets - use("L3MON4D3/LuaSnip") --snippet engine + --use("L3MON4D3/LuaSnip") --snippet engine + use({"L3MON4D3/LuaSnip", tag = "v<CurrentMajor>.*"}) use("rafamadriz/friendly-snippets") -- a bunch of snippets to use --use("github/copilot.vim") --use({ @@ -301,7 +302,7 @@ return packer.startup(function(use) -- Utilities use("nathom/filetype.nvim") - use("christoomey/vim-tmux-navigator") + --use("christoomey/vim-tmux-navigator") --use("preservim/vimux") use("myusuf3/numbers.vim") use("windwp/nvim-autopairs") |
