" disable vim modelines for security reasons set modelines=0 set nomodeline " Uncomment the following to have Vim jump to the last position when " reopening a file if has("autocmd") au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif endif set nocompatible set hidden " automatically close preview window after suggestion autocmd CompleteDone * pclose " Pathogen "execute pathogen#infect() "call pathogen#infect() "call pathogen#helptags() set statusline=%<\ %n:%f\ %m%r%y%=%-35.(line:\ %l\ of\ %L,\ col:\ %c%V\ (%P)%) filetype plugin indent on syntax on set relativenumber set mouse=a set mousehide set cursorline set backspace=indent,eol,start set hlsearch set showmatch set incsearch set autoindent set history=1000 " use system clipboard as default buffer " unnamedplus corresponds to the + register on Linux, " representing system clipboard (not X11 clipboard) set clipboard=unnamedplus set expandtab set shiftwidth=4 set tabstop=4 set softtabstop=4 " enable truecolor support let &t_8f = "\[38;2;%lu;%lu;%lum" let &t_8b = "\[48;2;%lu;%lu;%lum" set termguicolors let base16colorspace=256 colorscheme base16-tomorrow-night "colorscheme Tomorrow-Night "colorscheme base16-default-dark set background=dark " use default terminal background to retain transparency highlight Normal guibg=NONE highlight NonText guibg=NONE highlight SignColumn guibg=NONE " Use the same symbols as TextMate for tabstops and EOLs set listchars=tab:▸\ ,eol:¬ " default tab completion with supertab let g:SuperTabDefaultCompletionType = "context" " LanguageClient " Required for operations modifying multiple buffers like rename. set hidden nnoremap :call LanguageClient_contextMenu() let g:LanguageClient_serverCommands = { 'haskell': ['hie-wrapper', '--lsp'] } " enable LanguageClient functions only if a server mapping exists function LC_maps() if has_key(g:LanguageClient_serverCommands, &filetype) nnoremap K :call LanguageClient#textDocument_hover() nnoremap gd :call LanguageClient#textDocument_definition() nnoremap :call LanguageClient#textDocument_rename() set omnifunc=LanguageClient#complete set completefunc=LanguageClient#complete endif endfunction autocmd FileType * call LC_maps() au FileType python setlocal tabstop=4 expandtab shiftwidth=4 softtabstop=4 au FileType haskell setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 " haskell-vim 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 au FileType markdown setlocal tabstop=4 expandtab shiftwidth=4 softtabstop=4 au FileType pandoc setlocal tabstop=4 expandtab shiftwidth=4 softtabstop=4 au FileType nix setlocal tabstop=2 expandtab shiftwidth=2 softtabstop=2 set ofu=syntaxcomplete#Complete " nmap "+gP " imap a "vmap "+y " ALE linter settings let g:ale_linters = { 'python': ['flake8'] } " vim-pandoc settings let g:pandoc#modules#disabled = ["spell"] set textwidth=0 set wrapmargin=0