nixos-configs/common/modules/neovim/config/base.vim

51 lines
1.2 KiB
VimL

" make tabs only 2 spaces
set tabstop=2
set shiftwidth=2
set expandtab
set smartindent
set number
set relativenumber
set undofile
set undodir=/home/matt/.cache/nvim/
" set dot icon in place of trailing whitespaces
set list listchars=tab:\ \ ,nbsp:␣,trail:•,extends:⟩,precedes:⟨
" use vscode keybinds for snippets completion
inoremap <silent><expr> <TAB>
\ coc#pum#visible() ? coc#_select_confirm() :
\ coc#expandableOrJumpable() ? "\<C-r>=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\<CR>" :
\ CheckBackspace() ? "\<TAB>" :
\ coc#refresh()
function! CheckBackspace() abort
let col = col('.') - 1
return !col || getline('.')[col - 1] =~# '\s'
endfunction
let g:coc_snippet_next = '<tab>'
" support scss @
autocmd FileType scss setl iskeyword+=@-@
" remove highlight on words
nnoremap <silent> <esc> :noh<cr><esc>
" Minimap config
let g:minimap_width = 6
let g:minimap_auto_start = 1
let g:minimap_auto_start_win_enter = 1
let g:minimap_git_colors = 1
" Auto open Neo-Tree on big enough window
function! OpenTree() abort
if &columns > 100
Neotree show
Neotree close
Neotree show
endif
endfunction
autocmd VimEnter * call OpenTree()