etc/vimrc
2018-06-01 09:50:42 +02:00

194 lines
4.5 KiB
VimL

se nocompatible
call plug#begin('~/.vim/plugged')
Plug 'tpope/vim-sensible'
Plug 'ntpeters/vim-better-whitespace'
Plug 'nathanaelkane/vim-indent-guides'
Plug 'chrisbra/Recover.vim'
" Plug 'Valloric/YouCompleteMe', { 'do': './install.sh --clang-completer --system-libclang' }
Plug 'Shougo/vimproc.vim' , { 'do': 'make -f make_unix.mak' }
Plug 'junegunn/fzf', { 'dir': '~/.fzf' }
Plug 'junegunn/fzf.vim'
Plug 'ciaranm/securemodelines'
Plug 'chrisbra/SudoEdit.vim'
Plug 'majutsushi/tagbar'
Plug 'bling/vim-airline'
Plug 'tomtom/tcomment_vim'
" Plug 'jalcine/cmake.vim' --slow
Plug 'roxma/nvim-completion-manager'
Plug 'editorconfig/editorconfig-vim'
" vim-sleuth?
Plug 'kchmck/vim-coffee-script'
Plug 'pangloss/vim-javascript'
Plug 'mtscout6/vim-cjsx'
Plug 'mxw/vim-jsx'
Plug 'othree/html5.vim'
Plug 'digitaltoad/vim-jade'
Plug 'marijnh/tern_for_vim'
Plug 'ledger/vim-ledger'
Plug 'dag/vim2hs'
Plug 'eagletmt/ghcmod-vim'
Plug 'eagletmt/neco-ghc'
" clojure
Plug 'tpope/vim-leiningen'
Plug 'tpope/vim-projectionist'
Plug 'tpope/vim-dispatch'
Plug 'tpope/vim-fireplace'
Plug 'jnwhiteh/vim-golang'
Plug 'Blackrush/vim-gocode'
Plug 'zah/nimrod.vim'
Plug 'wting/rust.vim'
Plug 'racer-rust/vim-racer', { 'for': 'rust' }
Plug 'cespare/vim-toml'
Plug 'derekwyatt/vim-scala'
" Plug 'ensime/ensime-vim'
Plug 'dogrover/vim-pentadactyl'
Plug 'superbrothers/vim-vimperator'
Plug 'idris-hackers/idris-vim'
Plug 'tpope/vim-fugitive' " git integration
Plug 'airblade/vim-gitgutter'
Plug 'lervag/vimtex'
Plug 'ludovicchabant/vim-gutentags'
Plug 'kana/vim-textobj-user'
Plug 'kana/vim-textobj-indent'
Plug 'rhysd/vim-grammarous'
Plug 'tpope/vim-surround'
Plug 'tpope/vim-characterize'
Plug 'peterhoeg/vim-qml'
Plug 'ekalinin/Dockerfile.vim'
Plug 'jvoorhis/coq.vim'
Plug 'LnL7/vim-nix'
Plug 'urbit/hoon.vim'
Plug 'ahf/twelf-syntax'
Plug 'c-cube/vim-tptp'
Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
Plug 'nanotech/jellybeans.vim'
Plug '~/dgapt', { 'rtp': 'vim' }
" Plug '~/lean.vim'
Plug 'leanprover/lean.vim'
Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' }
Plug 'Shougo/echodoc.vim'
Plug 'rickhowe/diffchar.vim'
Plug 'raichoo/smt-vim'
Plug 'tkztmk/vim-vala'
Plug 'wlangstroth/vim-racket'
call plug#end()
filetype plugin indent on
set tw=0 expandtab ts=8 sts=2 sw=2 sm ai si
set noml mls=5 " scan 5 lines for modelines
syn on " enable syntax highlighting
set hls " highlight search
set bg=dark " dark background
se foldlevel=99
set vb " turn on the "visual bell" - which is much quieter than the "audio blink"
set nobackup
se bs=2
set mouse=
set title
colors jellybeans
au syntax java set ts=4 sts=4 sw=4
au BufNewFile,BufRead *.s set ft=tptp
au BufNewFile,BufRead *.s.out set ft=tptp
au BufNewFile,BufRead *.tptp set ft=tptp
au BufNewFile,BufRead *.smt2 set ft=smt
au BufReadCmd *.epub call zip#Browse(expand("<amatch>"))
au FileType scala nnoremap <silent> <c-]> :EnDeclaration<cr>
au syntax haskell setl omnifunc=necoghc#omnifunc
let g:necoghc_enable_detailed_browse=1
let g:haskell_conceal = 0
call tcomment#type#Define('nix', '# %s')
call tcomment#type#Define('chaskell', '-- %s')
call tcomment#type#Define('vala', '// %s')
au syntax tex setl iskeyword+=:
au syntax tex syn region texZone start="\\begin{clilisting}" end="\\end{clilisting}\|%stopzone\>"
au syntax tex syn region texZone start="\\begin{tacticslisting}" end="\\end{tacticslisting}\|%stopzone\>"
au syntax tex syn region texZone start="\\begin{tacticsoutput}" end="\\end{tacticsoutput}\|%stopzone\>"
" disable annoying "file is read-only" warnings
au FileChangedRO * set noreadonly
nnoremap <c-p> :FZF<cr>
" nnoremap <silent> K :call LanguageClient_textDocument_hover()<CR>
" nnoremap <silent> gd :call LanguageClient_textDocument_definition()<CR>
" let g:cm_completekeys = "\<Plug>(cm_completefunc)"
" " call LanguageClient_setLoggingLevel('DEBUG')
" let g:LanguageClient_trace = 'verbose'
" let g:LanguageClient_autoStart = 1
" let g:LanguageClient_serverCommands = {
" \ 'lean': ['node', '/home/gebner/lean-client-js/lean-language-server/lib/index.js', '--stdio'],
" \ }
let g:gutentags_cache_dir="~/.config/nvim/gutentags"
let g:vimtex_compiler_progname = 'nvr'
augroup my_cm_setup
autocmd!
autocmd User CmSetup call cm#register_source({
\ 'name' : 'vimtex',
\ 'priority': 8,
\ 'scoping': 1,
\ 'scopes': ['tex'],
\ 'abbreviation': 'tex',
\ 'cm_refresh_patterns': g:vimtex#re#ncm,
\ 'cm_refresh': {'omnifunc': 'vimtex#complete#omnifunc'},
\ })
augroup END