112 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			112 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
" 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 number
 | 
						|
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 = "\<Esc>[38;2;%lu;%lu;%lum"
 | 
						|
"let &t_8b = "\<Esc>[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 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 <F5> :call LanguageClient_contextMenu()<CR>
 | 
						|
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 <buffer> <silent> K :call LanguageClient#textDocument_hover()<cr>
 | 
						|
    nnoremap <buffer> <silent> gd :call LanguageClient#textDocument_definition()<CR>
 | 
						|
    nnoremap <buffer> <silent> <F2> :call LanguageClient#textDocument_rename()<CR>
 | 
						|
  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 nix setlocal tabstop=2 expandtab shiftwidth=2 softtabstop=2
 | 
						|
set ofu=syntaxcomplete#Complete
 | 
						|
" nmap <C-V> "+gP
 | 
						|
" imap <C-V> <ESC><C-V>a
 | 
						|
"vmap <C-C> "+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
 |