diff options
Diffstat (limited to '.config/vim/.vimrc')
-rw-r--r-- | .config/vim/.vimrc | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/.config/vim/.vimrc b/.config/vim/.vimrc new file mode 100644 index 0000000..e8e9417 --- /dev/null +++ b/.config/vim/.vimrc @@ -0,0 +1,111 @@ +runtime ftplugin/man.vim +set runtimepath^=$HOME/.config/vim/.vim +set viminfo= +set number +set relativenumber +set title +set bg=dark +set go=a +set mouse=a +set nohlsearch +set clipboard+=unnamedplus +set noshowmode +set noruler +set laststatus=0 +set noshowcmd +set nocompatible +set autoindent +set cindent +set smartindent +set nowrap +set ignorecase +set smartcase +set laststatus=2 +set incsearch +set wildignore=*.o,*.obj,*.bak,*.exe + +" Use pathogen (plugin manager) + +filetype off +execute pathogen#infect() +execute pathogen#helptags() +syntax on +filetype plugin on +filetype plugin indent on + +" Automatically use black on a Python file +autocmd BufWritePost *.py !black --line-length=79 % + +" Pymode config +let g:pymode = 1 +let g:pymode_warnings = 0 +let g:pymode_trim_whitespaces = 1 +let g:pymode_options = 1 +let g:pymode_options_max_line_length = 79 +let g:pymode_options_colorcolumn = 1 +let g:pymode_indent = 1 +let g:pymode_indent_hanging_width = &shiftwidth +let g:pymode_indent_hanging_width = 4 +let g:pymode_doc = 1 + +" Automatically source .vimrc after saving +autocmd BufWritePost ~/.vimrc source $MYVIMRC + +" Automatically source .inputrc after saving +autocmd BufWritePost ~/.inputrc !bind -f ~/.inputrc + +" Automatically deletes all trailing whitespace and newlines at end of file on save. & reset cursor position +autocmd BufWritePre * let currPos = getpos(".") +autocmd BufWritePre * %s/\s\+$//e +autocmd BufWritePre * %s/\n\+\%$//e +autocmd BufWritePre * cal cursor(currPos[1], currPos[2]) + +" Mappings +noremap <BS> dBx +nnoremap s o<Esc> +nnoremap S o<Esc>k +nnoremap Y y$ +nnoremap - ddp +nnoremap _ ddkP +nnoremap <C-J> "+yy +nnoremap <C-K> <ESC>"+p +nnoremap <space> i<space><esc> +nnoremap <silent> <F7> :tabnew ~/.vimrc<CR> +nnoremap <silent> <F8> :TlistToggle<CR> +nnoremap <silent> <F9> :NERDTree<CR> +vnoremap sb "zdi<b><C-R>z</b><Esc> : to do końca nie działa +vnoremap sp "zdi<p><C-R>z</p><Esc> +inoremap <C-d> <Esc>ddi +inoremap <C-y> <Esc>yyi +inoremap <C-p> <Esc>pi +inoremap <Space><Space> <Esc>/<++><CR>"_c4l + +" show existing tab with 4 spaces width +set tabstop=4 +" when indenting with '>', use 4 spaces width +set shiftwidth=4 +" On pressing tab, insert 4 spaces +set expandtab + +let g:pymode = 0 + +" Haskell +let g:haskell_enable_quantification = 1 " to enable highlighting of `forall` +let g:haskell_enable_recursivedo = 1 " to enable highlighting of `mdo` and `rec` +let g:haskell_enable_arrowsyntax = 1 " to enable highlighting of `proc` +let g:haskell_enable_pattern_synonyms = 1 " to enable highlighting of `pattern` +let g:haskell_enable_typeroles = 1 " to enable highlighting of type roles +let g:haskell_enable_static_pointers = 1 " to enable highlighting of `static` +let g:haskell_backpack = 1 " to enable highlighting of backpack keywords +let g:haskell_indent_if = 3 +let g:haskell_indent_case = 2 +let g:haskell_indent_let = 4 +let g:haskell_indent_where = 6 +let g:haskell_indent_before_where = 2 +let g:haskell_indent_after_bare_where = 2 +let g:haskell_indent_do = 2 +let g:haskell_indent_in = 1 +let g:cabal_indent_section = 2 +let g:haskell_indent_case_alternative = 1 +let g:haskell_indent_guard = 2 +let g:hindent_on_save = 1 |