96 lines
2.4 KiB
Plaintext
96 lines
2.4 KiB
Plaintext
" speedie's neovim configuration
|
|
" purely for productivity, no bloat
|
|
|
|
syntax on
|
|
|
|
set rnu
|
|
set mouse=a
|
|
set clipboard=unnamedplus
|
|
set title
|
|
set hidden
|
|
set smarttab
|
|
set autoindent
|
|
set expandtab
|
|
set noswapfile
|
|
set nocursorline
|
|
set laststatus=0
|
|
set undolevels=10000
|
|
set softtabstop=4
|
|
set shiftwidth=4
|
|
set tabstop=4
|
|
set spelllang=en_us
|
|
set spellsuggest=best,5
|
|
set foldmethod=indent
|
|
set laststatus=0
|
|
|
|
set termguicolors
|
|
set t_Co=256
|
|
set t_ut=
|
|
set background=dark
|
|
colorscheme elflord
|
|
|
|
fu! SaveSession()
|
|
execute 'mksession! ' . getcwd() . '/.session.nvim'
|
|
endfunction
|
|
|
|
fu! RestoreSession()
|
|
if argc() == 0
|
|
if filereadable(getcwd() . '/.session.nvim')
|
|
execute 'so ' . getcwd() . '/.session.nvim'
|
|
if bufexists(1)
|
|
for l in range(1, bufnr('$'))
|
|
if zufwinnr(l) == -1
|
|
exec 'sbuffer ' . l
|
|
endif
|
|
endfor
|
|
endif
|
|
|
|
silent execute '!rm -f ' . getcwd() . '/.session.nvim'
|
|
endif
|
|
endif
|
|
endfunction
|
|
|
|
autocmd BufReadPre *.md set spell
|
|
autocmd BufWritePre * %s/\s\+$//e
|
|
autocmd BufWritePre * %s/\t/ /e
|
|
autocmd BufWritePre Makefile %s/ /\t/e
|
|
autocmd VimLeave * call SaveSession()
|
|
autocmd VimEnter * nested call RestoreSession()
|
|
|
|
highlight Normal ctermfg=grey ctermbg=lightgray guifg=#ffffff guibg=#222222
|
|
highlight Folded ctermfg=grey ctermbg=lightgray guifg=#afeeee guibg=#333333
|
|
highlight SpellBad guisp=red gui=undercurl guifg=none guibg=none ctermfg=none ctermbg=none term=underline cterm=undercurl
|
|
highlight SpellCap guisp=yellow gui=undercurl guifg=none guibg=none ctermfg=none ctermbg=none term=underline cterm=undercurl
|
|
|
|
filetype plugin indent on
|
|
|
|
nnoremap <C-h> <C-w>h
|
|
nnoremap <C-j> <C-w>j
|
|
nnoremap <C-k> <C-w>k
|
|
nnoremap <C-l> <C-w>l
|
|
nnoremap <C-s> :split<cr>
|
|
nnoremap <C-w> :vsplit<cr>
|
|
nnoremap <C-q> :only<cr>
|
|
nnoremap <C-t> :term<cr>
|
|
|
|
nnoremap <F2> :set spell!<cr>
|
|
nnoremap <F3> :set spelllang=en_us<cr>
|
|
nnoremap <F4> :set spelllang=sv_se<cr>
|
|
nnoremap <F7> :silent execute '!setxkbmap us'<cr>
|
|
nnoremap <F8> :silent execute '!setxkbmap se'<cr>
|
|
nnoremap <C-e> [s1z=
|
|
nnoremap <C-r> 1z=
|
|
|
|
nnoremap H :vertical resize -10<cr>
|
|
nnoremap J :resize -10<cr>
|
|
nnoremap K :resize +10<cr>
|
|
nnoremap L :vertical resize +10<cr>
|
|
|
|
nnoremap d "_d
|
|
xnoremap d "_d
|
|
xnoremap p "_dP
|
|
nnoremap c "_c
|
|
|
|
let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
|
|
let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
|