diff options
Diffstat (limited to 'nvim/plugin')
-rw-r--r-- | nvim/plugin/colors.vim | 33 | ||||
-rw-r--r-- | nvim/plugin/git.vim | 8 | ||||
-rw-r--r-- | nvim/plugin/harpoon.vim | 19 | ||||
-rw-r--r-- | nvim/plugin/lsp.vim | 24 | ||||
-rw-r--r-- | nvim/plugin/navigation.vim | 33 | ||||
-rw-r--r-- | nvim/plugin/netrw.vim | 4 | ||||
-rw-r--r-- | nvim/plugin/plenary.vim | 2 | ||||
-rw-r--r-- | nvim/plugin/refactoring.vim | 9 | ||||
-rw-r--r-- | nvim/plugin/sets.vim | 34 | ||||
-rw-r--r-- | nvim/plugin/telescope.vim | 16 | ||||
-rw-r--r-- | nvim/plugin/vimspector.vim | 12 |
11 files changed, 194 insertions, 0 deletions
diff --git a/nvim/plugin/colors.vim b/nvim/plugin/colors.vim new file mode 100644 index 0000000..d200e2a --- /dev/null +++ b/nvim/plugin/colors.vim @@ -0,0 +1,33 @@ +let g:theprimeagen_colorscheme = "gruvbox" +fun! ColorMyPencils() + let g:gruvbox_contrast_dark = 'hard' + if exists('+termguicolors') + let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum" + let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum" + endif + let g:gruvbox_invert_selection='0' + + set background=dark + if has('nvim') + call luaeval('vim.cmd("colorscheme " .. _A[1])', [g:theprimeagen_colorscheme]) + else + " TODO: What the way to use g:theprimeagen_colorscheme + colorscheme gruvbox + endif + + highlight ColorColumn ctermbg=0 guibg=grey + hi SignColumn guibg=none + hi CursorLineNR guibg=None + highlight Normal guibg=none + " highlight LineNr guifg=#ff8659 + " highlight LineNr guifg=#aed75f + highlight LineNr guifg=#5eacd3 + highlight netrwDir guifg=#5eacd3 + highlight qfFileName guifg=#aed75f + hi TelescopeBorder guifg=#5eacd +endfun +call ColorMyPencils() + +" Vim with me +nnoremap <leader>cmp :call ColorMyPencils()<CR> +nnoremap <leader>vwb :let g:theprimeagen_colorscheme = diff --git a/nvim/plugin/git.vim b/nvim/plugin/git.vim new file mode 100644 index 0000000..11c26dd --- /dev/null +++ b/nvim/plugin/git.vim @@ -0,0 +1,8 @@ +nnoremap <leader>ga :Git fetch --all<CR> +nnoremap <leader>grum :Git rebase upstream/master<CR> +nnoremap <leader>grom :Git rebase origin/master<CR> + +nmap <leader>gh :diffget //3<CR> +nmap <leader>gu :diffget //2<CR> +nmap <leader>gs :G<CR> + diff --git a/nvim/plugin/harpoon.vim b/nvim/plugin/harpoon.vim new file mode 100644 index 0000000..46c3a31 --- /dev/null +++ b/nvim/plugin/harpoon.vim @@ -0,0 +1,19 @@ +lua require("theprimeagen") + +" Terminal commands +" ueoa is first through fourth finger left hand home row. +" This just means I can crush, with opposite hand, the 4 terminal positions +" +" These functions are stored in harpoon. A plugn that I am developing +nnoremap <silent><leader>a :lua require("harpoon.mark").add_file()<CR> +nnoremap <silent><C-e> :lua require("harpoon.ui").toggle_quick_menu()<CR> +nnoremap <silent><leader>tc :lua require("harpoon.cmd-ui").toggle_quick_menu()<CR> + +nnoremap <silent><C-h> :lua require("harpoon.ui").nav_file(1)<CR> +nnoremap <silent><C-t> :lua require("harpoon.ui").nav_file(2)<CR> +nnoremap <silent><C-n> :lua require("harpoon.ui").nav_file(3)<CR> +nnoremap <silent><C-s> :lua require("harpoon.ui").nav_file(4)<CR> +nnoremap <silent><leader>tu :lua require("harpoon.term").gotoTerminal(1)<CR> +nnoremap <silent><leader>te :lua require("harpoon.term").gotoTerminal(2)<CR> +nnoremap <silent><leader>cu :lua require("harpoon.term").sendCommand(1, 1)<CR> +nnoremap <silent><leader>ce :lua require("harpoon.term").sendCommand(1, 2)<CR> diff --git a/nvim/plugin/lsp.vim b/nvim/plugin/lsp.vim new file mode 100644 index 0000000..2d4672d --- /dev/null +++ b/nvim/plugin/lsp.vim @@ -0,0 +1,24 @@ +" Do this in lua?? maybe... +" vim.o is short for something teej thinks makes sense. +set completeopt=menu,menuone,noselect +let g:completion_matching_strategy_list = ['exact', 'substring', 'fuzzy'] + +fun! LspLocationList() + " lua vim.lsp.diagnostic.set_loclist({open_loclist = false}) +endfun + +nnoremap <leader>vd :lua vim.lsp.buf.definition()<CR> +nnoremap <leader>vi :lua vim.lsp.buf.implementation()<CR> +nnoremap <leader>vsh :lua vim.lsp.buf.signature_help()<CR> +nnoremap <leader>vrr :lua vim.lsp.buf.references()<CR> +nnoremap <leader>vrn :lua vim.lsp.buf.rename()<CR> +nnoremap <leader>vh :lua vim.lsp.buf.hover()<CR> +nnoremap <leader>vca :lua vim.lsp.buf.code_action()<CR> +nnoremap <leader>vsd :lua vim.lsp.diagnostic.show_line_diagnostics(); vim.lsp.util.show_line_diagnostics()<CR> +nnoremap <leader>vn :lua vim.lsp.diagnostic.goto_next()<CR> +nnoremap <leader>vll :call LspLocationList()<CR> + +augroup THE_PRIMEAGEN_LSP + autocmd! + autocmd! BufWrite,BufEnter,InsertLeave * :call LspLocationList() +augroup END diff --git a/nvim/plugin/navigation.vim b/nvim/plugin/navigation.vim new file mode 100644 index 0000000..4db3e4c --- /dev/null +++ b/nvim/plugin/navigation.vim @@ -0,0 +1,33 @@ +nnoremap <C-Left> :call AfPPAlternatePluthPluth()<CR> +nnoremap <C-Up> :call AfPPAlternate()<CR> +inoremap <C-Left> <esc>:call AfPPAlternatePluthPluth()<CR> +inoremap <C-Up> <esc>:call AfPPAlternate()<CR> +nnoremap <C-k> :cnext<CR>zz +nnoremap <C-j> :cprev<CR>zz +nnoremap <leader>k :lnext<CR>zz +nnoremap <leader>j :lprev<CR>zz +nnoremap <C-q> :call ToggleQFList(1)<CR> +nnoremap <leader>q :call ToggleQFList(0)<CR> + +let g:the_primeagen_qf_l = 0 +let g:the_primeagen_qf_g = 0 + +fun! ToggleQFList(global) + if a:global + if g:the_primeagen_qf_g == 1 + let g:the_primeagen_qf_g = 0 + cclose + else + let g:the_primeagen_qf_g = 1 + copen + end + else + if g:the_primeagen_qf_l == 1 + let g:the_primeagen_qf_l = 0 + lclose + else + let g:the_primeagen_qf_l = 1 + lopen + end + endif +endfun diff --git a/nvim/plugin/netrw.vim b/nvim/plugin/netrw.vim new file mode 100644 index 0000000..7988327 --- /dev/null +++ b/nvim/plugin/netrw.vim @@ -0,0 +1,4 @@ +let g:netrw_browse_split = 0 +let g:netrw_banner = 0 +let g:netrw_winsize = 25 + diff --git a/nvim/plugin/plenary.vim b/nvim/plugin/plenary.vim new file mode 100644 index 0000000..c282c9a --- /dev/null +++ b/nvim/plugin/plenary.vim @@ -0,0 +1,2 @@ +nmap <leader>tt <Plug>PlenaryTestFile + diff --git a/nvim/plugin/refactoring.vim b/nvim/plugin/refactoring.vim new file mode 100644 index 0000000..78f3756 --- /dev/null +++ b/nvim/plugin/refactoring.vim @@ -0,0 +1,9 @@ +lua require("theprimeagen") + +lua require("refactoring").setup({}) + +vnoremap <silent> <leader>rr :lua require("theprimeagen.telescope").refactors()<CR> +nnoremap <silent> <leader>rr :lua require("theprimeagen.telescope").refactors()<CR> +nnoremap <silent> <leader>df :lua require("refactoring").debug.printf({below = false})<CR> +nnoremap <silent> <leader>db :lua require("refactoring").debug.printf({below = true})<CR> + diff --git a/nvim/plugin/sets.vim b/nvim/plugin/sets.vim new file mode 100644 index 0000000..b691eb2 --- /dev/null +++ b/nvim/plugin/sets.vim @@ -0,0 +1,34 @@ +set guicursor= +set relativenumber +set nohlsearch +set hidden +set noerrorbells +set tabstop=4 softtabstop=4 +set shiftwidth=4 +set expandtab +set smartindent +set nu +set nowrap +set noswapfile +set nobackup +set undodir=~/.vim/undodir +set undofile +set incsearch +set termguicolors +set scrolloff=8 +" set noshowmode +set signcolumn=yes +set isfname+=@-@ +" set ls=0 + +" Give more space for displaying messages. +set cmdheight=1 + +" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable +" delays and poor user experience. +set updatetime=50 + +" Don't pass messages to |ins-completion-menu|. +set shortmess+=c + +set colorcolumn=80 diff --git a/nvim/plugin/telescope.vim b/nvim/plugin/telescope.vim new file mode 100644 index 0000000..fdd9603 --- /dev/null +++ b/nvim/plugin/telescope.vim @@ -0,0 +1,16 @@ +lua require("theprimeagen") + +nnoremap <leader>ps :lua require('telescope.builtin').grep_string({ search = vim.fn.input("Grep For > ")})<CR> +nnoremap <C-p> :lua require('telescope.builtin').git_files()<CR> +nnoremap <Leader>pf :lua require('telescope.builtin').find_files()<CR> + +nnoremap <leader>pw :lua require('telescope.builtin').grep_string { search = vim.fn.expand("<cword>") }<CR> +nnoremap <leader>pb :lua require('telescope.builtin').buffers()<CR> +nnoremap <leader>vh :lua require('telescope.builtin').help_tags()<CR> +nnoremap <leader>vrc :lua require('theprimeagen.telescope').search_dotfiles({ hidden = true })<CR> +nnoremap <leader>va :lua require('theprimeagen.telescope').anime_selector()<CR> +nnoremap <leader>vc :lua require('theprimeagen.telescope').chat_selector()<CR> +nnoremap <leader>gc :lua require('theprimeagen.telescope').git_branches()<CR> +nnoremap <leader>gw :lua require('telescope').extensions.git_worktree.git_worktrees()<CR> +nnoremap <leader>gm :lua require('telescope').extensions.git_worktree.create_git_worktree()<CR> +nnoremap <leader>td :lua require('theprimeagen.telescope').dev()<CR> diff --git a/nvim/plugin/vimspector.vim b/nvim/plugin/vimspector.vim new file mode 100644 index 0000000..deba533 --- /dev/null +++ b/nvim/plugin/vimspector.vim @@ -0,0 +1,12 @@ +fun! GotoWindow(id) + call win_gotoid(a:id) + MaximizerToggle +endfun + +" Debugger remaps +nnoremap <leader>m :MaximizerToggle!<CR> + +" <Plug>VimspectorStop +" <Plug>VimspectorPause +" <Plug>VimspectorAddFunctionBreakpoint + |