" various settings set nobackup number nomodeline cursorline backspace=indent,eol,start set foldmethod=marker ttymouse=xterm2 mouse= " hidden characters set list listchars=tab:\|_,nbsp:x,trail:* " search set hlsearch incsearch ignorecase smartcase " scroll before reaching the first / final line set scrolloff=3 sidescrolloff=15 sidescroll=1 " disable bell set noerrorbells visualbell t_vb= " indentation set tabstop=3 softtabstop=4 shiftwidth=4 smarttab expandtab " termcap fixes set t_Co=256 t_ut= termencoding=utf-8 encoding=utf-8 " status line set wildmenu showcmd ruler laststatus=2 set statusline=[%F]\ %R%H%W%M\ %=[%{&fenc}/%{&ff}]\ %y\ [%4l/%L:%3v] " enable case indentation let g:sh_indent_case_labels=1 " version specific settings if v:version >= 703 set colorcolumn=80 relativenumber formatoptions+=j endif if v:version >= 800 set breakindent keymap=russian-jcukenwintype iminsert=0 imsearch=0 if &term =~ '^[tmux|st|rxvt|xterm]' set termguicolors endif if &term =~ '^[tmux|st]' set t_8f=[38;2;%lu;%lu;%lum t_8b=[48;2;%lu;%lu;%lum endif inoremap cnoremap inoremap cnoremap endif " maps "leader map let mapleader="\" "no more F1 noremap xnoremap snoremap inoremap lnoremap cnoremap "some toggles nnoremap n :setlocal number! nnoremap r :setlocal relativenumber! nnoremap l :setlocal list! nnoremap c :setlocal cursorline! nnoremap v :setlocal wrap! "turn off highlight until next search nnoremap / :noh "home / end noremap H ^ noremap L $ "copy to / paste from clipboard vmap y "+y vmap d "+d nmap p "+p nmap P "+P vmap p "+p vmap P "+P "move macro somewhere I won't accidentally use it noremap Q q noremap q "quit / save nnoremap qq :q nnoremap qf :q! nnoremap qa :qa nnoremap qs :wq nnoremap s :w " mouse toggle fun! s:ToggleMouse() if !exists("s:old_mouse") let s:old_mouse = "a" endif if &mouse == "" let &mouse = s:old_mouse echo "mouse enabled (" . &mouse . ")" else let s:old_mouse = &mouse let &mouse="" echo "mouse disabled" endif endfunction noremap m :call ToggleMouse() " plugins let plugins = expand("$HOME/.vimplugins") if filereadable(plugins) && v:version >= 703 execute 'source ' . fnameescape(plugins) endif set bg=dark colorscheme PaperColor syntax on filetype plugin on