Dolphin type neovim.
| 1 | imap jj <Esc> |
| 2 | let mapleader=" " |
| 3 | filetype plugin indent on |
| 4 | nmap ,, A,<Esc> |
| 5 | nmap ;; A;<Esc> |
| 6 | set mouse=a |
| 7 | set number |
| 8 | set hidden |
| 9 | set expandtab |
| 10 | set autoindent |
| 11 | set smartindent |
| 12 | set shiftwidth=4 |
| 13 | set tabstop=4 |
| 14 | set encoding=utf8 |
| 15 | set history=5000 |
| 16 | set autoread |
| 17 | colorscheme habamax |
| 18 | highlight Normal ctermbg=none " Remove background color |
| 19 | :au FocusLost * :wa " Auto save when focus is lost |
| 20 | :au BufLeave * :wa " Auto save when buffer is left |
| 21 | vnoremap p "0p |
| 22 | nmap <leader>f gg=G<C-o> |
| 23 | nmap <leader>t :Telescope find_files<CR> |
| 24 | nmap <leader>z :FZF<CR> |
| 25 | nmap <C-n> :bnext<CR> |
| 26 | nmap <C-p> :bprevious<CR> |
| 27 | nmap <C-k> :bd<CR> :bn<CR> :NERDTreeFind<CR><CR> |
| 28 | nmap <leader>w <C-w><C-w> |
| 29 | nmap <M-w> <C-w><C-w> |
| 30 | nmap <leader>ev :e $MYVIMRC<CR> |
| 31 | |
| 32 | |
| 33 | " Vim-Plug settings |
| 34 | call plug#begin() |
| 35 | Plug 'preservim/nerdtree' | |
| 36 | \ Plug 'Xuyuanp/nerdtree-git-plugin' | |
| 37 | \ Plug 'ryanoasis/vim-devicons' |
| 38 | Plug 'neoclide/coc.nvim', {'branch': 'release'} |
| 39 | Plug 'github/copilot.vim' |
| 40 | Plug 'vim-airline/vim-airline-themes' |
| 41 | Plug 'tpope/vim-commentary' |
| 42 | Plug 'nvim-lua/plenary.nvim' |
| 43 | Plug 'nvim-telescope/telescope.nvim', { 'tag': '0.1.5' } |
| 44 | Plug 'akinsho/toggleterm.nvim', |
| 45 | Plug 'vim-airline/vim-airline', |
| 46 | Plug 'tpope/vim-fugitive', |
| 47 | Plug 'rbong/vim-flog', |
| 48 | Plug 'tpope/vim-capslock', |
| 49 | Plug 'Shougo/denite.nvim', |
| 50 | Plug 'junegunn/fzf', |
| 51 | Plug 'prabirshrestha/vim-lsp', |
| 52 | call plug#end() |
| 53 | |
| 54 | |
| 55 | " NERDTree settings |
| 56 | nnoremap <leader>n :NERDTreeFind<CR> |
| 57 | autocmd VimEnter * NERDTree |
| 58 | |
| 59 | |
| 60 | " Code Completion |
| 61 | nmap <silent> gd <Plug>(coc-definition)zz |
| 62 | nmap <silent> gy <Plug>(coc-type-definition)zz |
| 63 | nmap <silent> gr <Plug>(coc-references)zz |
| 64 | nmap <silent> [g <Plug>(coc-diagnostic-prev)zz |
| 65 | nmap <silent> ]g <Plug>(coc-diagnostic-next)zz |
| 66 | nnoremap <silent> <space>s :<C-u>CocList -I symbols<cr> |
| 67 | nnoremap <silent> <space>d :<C-u>CocList diagnostics<cr> |
| 68 | nmap <leader>do <Plug>(coc-codeaction) |
| 69 | nmap <leader>rn <Plug>(coc-rename) |
| 70 | let g:coc_global_extensions = [ |
| 71 | \ 'coc-tsserver', |
| 72 | \ 'coc-json', |
| 73 | \ 'coc-css', |
| 74 | \ 'coc-eslint', |
| 75 | \ 'coc-prettier', |
| 76 | \ 'coc-jedi' |
| 77 | \ ] |
| 78 | " Make <CR> to accept selected completion item or notify coc.nvim to format |
| 79 | " <C-g>u breaks current undo, please make your own choice |
| 80 | inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm() |
| 81 | \: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>" |
| 82 | |
| 83 | |
| 84 | " Airline settings |
| 85 | set laststatus=2 |
| 86 | let g:airline#extensions#tabline#enabled = 1 |
| 87 | let g:airline#extensions#capslock#enabled = 1 |
| 88 | let g:airline_powerline_fonts = 1 |
| 89 | let g:airline_statusline_ontop=0 |
| 90 | let g:airline_theme='bubblegum' |
| 91 | let g:airline#extensions#tabline#formatter = 'default' |
| 92 | set guifont=Hack |
| 93 | |
| 94 | |
| 95 | " Toggleterm settings |
| 96 | lua require("toggleterm").setup({ |
| 97 | \ direction = 'float', |
| 98 | \ open_mapping = [[<c-\>]], |
| 99 | \ }) |
| 100 | |
| 101 | " Ensure the screen centers on jumping command |
| 102 | nmap <silent> <C-y> <C-y>zz |
| 103 | nmap <silent> <C-u> <C-u>zz |
| 104 | nmap <silent> <C-d> <C-d>zz |
| 105 | nmap <silent> <C-b> <C-b>zz |
| 106 | nmap <silent> <C-f> <C-f>zz |
| 107 | nmap <silent> <C-o> <C-o>zz |
| 108 | nmap <silent> <C-i> <C-i>zz |
| 109 | nmap <silent> <C-t> <C-t>zz |
| 110 | nmap <silent> <C-g> <C-g>zz |