From 7b7be7912c3e974b4a13e803a402b3dfb5a4d0dc Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 15 Mar 2020 11:35:00 +0100 Subject: Initial neovim setup. --- init.vim | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 init.vim diff --git a/init.vim b/init.vim new file mode 100644 index 0000000..05e4b79 --- /dev/null +++ b/init.vim @@ -0,0 +1,69 @@ +filetype on +syntax on +colorscheme nord "substrata +set number +filetype indent on +set nowrap +set tabstop=2 +set shiftwidth=2 +set expandtab +set smartindent +set autoindent +set guioptions-=T +set statusline=%q%m%r\ %f%=%y\ %c,%l/%L\ %{FugitiveStatusline()} + +" highlight cursor line +set cursorline + +" highlight search matches +set hlsearch + +" show matching parenthesis/brackets +set showmatch + +" remove whitespace on write +autocmd BufWritePre * :%s/\s\+$//e + +" press esc to cancel search +noremap :nohlsearch:echo + +" Arrow keys move visually up/down. +noremap gk +noremap gj + +" toggle nerdtree with ctrl-o +map :NERDTreeToggle + +" Toggle word-wrap mode +" This will also fix movement keys so they move by visual +" lines instead of physical lines in word-wrap mode. +" See https://vim.fandom.com/wiki/Move_cursor_by_display_lines_when_wrapping +noremap w :call ToggleWrap() +function ToggleWrap() + if &wrap + echo "Wrap OFF" + setlocal nowrap + set virtualedit=all + silent! nunmap + silent! nunmap + silent! nunmap + silent! nunmap + silent! iunmap + silent! iunmap + silent! iunmap + silent! iunmap + else + echo "Wrap ON" + setlocal wrap linebreak nolist + set virtualedit= + setlocal display+=lastline + noremap gk + noremap gj + noremap g + noremap g + inoremap gk + inoremap gj + inoremap g + inoremap g + endif +endfunction -- cgit v1.2.3