dot-files/neovim/neovim.md

2.2 KiB

set nocompatible " Required to read a vim (not vi) config correctly set completeopt=preview " Completation mode: preview

" Vim-airline settings let g:airline_powerline_fonts = 1 let g:airline#extensions#tabline#enabled = 1 let g:airline_theme='term' let g:airline#extensions#whitespace#enabled = 0

" Python settings let g:python3_host_prog = '/usr/bin/python3.9' let g:loaded_python_provider = 0

" Default 4 tab spaces set tabstop=4 set shiftwidth=4 set expandtab " change it based on filetype autocmd Filetype ruby setlocal ts=2 sw=2 autocmd Filetype slim setlocal ts=2 sw=2

" set cindent set encoding=utf-8 set nu set hidden
set noshowmode " Disabling backups and swap files (cause problem in servers, messy dirs etc.) " You might want to comment this if you are on an unstable system set nobackup set nowritebackup set noswapfile

" Use Ctrl+Q to close buffer noremap :bd " Map Ctrl+N for NerdTree map :NERDTreeToggle inoremap pumvisible() ? "<c-n>" : "<tab>" " Map ; to search files (fd) map ; :Files " Map , to match in files (ripgrep) map ' :Rg " Map /ln to disable highlighting nmap ln :noh " Windows splitting and movement (move windows with hjkl keys) function! WinMove(key) let t:curwin = winnr() exec "wincmd ".a:key if (t:curwin == winnr()) if (match(a:key,'[jk]')) wincmd v else wincmd s endif exec "wincmd ".a:key endif endfunction

nnoremap :call WinMove('h') nnoremap :call WinMove('j') nnoremap :call WinMove('k') nnoremap :call WinMove('l')

" Using Plug for plugins call plug#begin('~/.vim/plugged')

Plug 'preservim/nerdtree' " NerdTree for browsing directories Plug 'neoclide/coc.nvim', { 'branch': 'release' } " CoC for completion, works similar to VSCode Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } " Fuzzy finder Plug 'junegunn/fzf.vim' Plug 'vim-airline/vim-airline' " Status/tabline for vim Plug 'vim-airline/vim-airline-themes' Plug 'jiangmiao/auto-pairs' " Brackets management plugins Plug 'machakann/vim-sandwich' Plug 'airblade/vim-gitgutter' " Git plugin

call plug#end()

filetype plugin indent on syntax enable