vim-config/plugins.toml
2020-12-04 23:17:32 +01:00

520 lines
14 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[[plugins]]
repo = 'mileszs/ack.vim'
[[plugins]]
repo = 'vim-scripts/cmdalias.vim'
[[plugins]]
repo = 'Raimondi/delimitMate'
hook_add = '''
let g:delimitMate_matchpairs = "(:),[:],{:}"
let g:delimitMate_expand_cr = 1
let g:delimitMate_expand_space = 1
let g:delimitMate_autoclose = 1
'''
[[plugins]]
repo = 'vim-scripts/genindent.vim'
[[plugins]]
repo = 'scrooloose/nerdcommenter'
hook_add = '''
let NERDSpaceDelims=1
let NERDCreateDefaultMappings=0
'''
[[plugins]]
repo = 'scrooloose/nerdtree'
on_event = 'NERDTreeToggle'
hook_add = '''
let g:NERDTreeMapActivateNode = '<CR>'
let g:NERDTreeMapCustomOpen = ''
let g:NERDTreeMapOpenExpl = 'n'
let g:NERDTreeMapJumpNextSibling = ''
" let g:NERDTreeMapOpenSplit = ''
" use NERDTree instead of netrw
autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | exe 'cd '.argv()[0] | endif
'''
[[plugins]]
repo = 'Xuyuanp/nerdtree-git-plugin'
on_event = 'NERDTreeToggle'
[[plugins]]
repo = 'xolox/vim-easytags'
[[plugins]]
repo = 'xolox/vim-misc'
[[plugins]]
repo = 'nathanaelkane/vim-indent-guides'
[[plugins]]
repo = 'Shougo/vimproc.vim'
build = 'make'
[[plugins]]
repo = 'sjbach/lusty'
[[plugins]]
repo = 'nixprime/cpsm'
build = 'sh -c "PY3=ON ./install.sh"'
[[plugins]]
repo = 'liuchengxu/vista.vim'
hook_add = '''
let g:vista#renderer#enable_icon = 0
let g:vista_ctags_cmd = {
\ 'haskell': 'hasktags -x -o - -c',
\ 'yaml': 'hasktags -x -o - -c',
\ }
'''
[[plugins]]
repo = 'sbdchd/neoformat'
hook_add = '''
let g:neoformat_enabled_haskell = ['brittany']
'''
[[plugins]]
repo = 'AndrewRadev/bufferize.vim'
[[plugins]]
repo = 'vmchale/dhall-vim'
[[plugins]]
repo = 'Shougo/echodoc.vim'
hook_add = '''
" set cmdheight=2
let g:echodoc#enable_at_startup = 1
let g:echodoc#type = 'signature'
'''
[[plugins]]
repo = 'tpope/vim-scriptease'
[[plugins]]
repo = 'Konfekt/FastFold'
hook_add = '''
let g:fastfold_savehook = 1
let g:fastfold_fold_command_suffixes = ['x','X','a','A','o','O','c','C']
let g:fastfold_fold_movement_commands = [']z', '[z', 'zj', 'zk']
let g:markdown_folding = 1
let g:tex_fold_enabled = 1
let g:vimsyn_folding = 'af'
let g:xml_syntax_folding = 1
let g:html_syntax_folding = 1
let g:javaScript_fold = 1
let g:sh_fold_enabled= 7
let g:ruby_fold = 1
let g:perl_fold = 1
let g:perl_fold_blocks = 1
let g:r_syntax_folding = 1
let g:rust_fold = 1
let g:haskell_fold = 1
'''
[[plugins]]
repo = 'editorconfig/editorconfig-vim'
hook_add = '''
" overwrite nonsense from editorconfig
let g:EditorConfig_max_line_indicator = 'none'
" let g:EditorConfig_preserve_formatoptions = 1
'''
[[plugins]]
repo = 'hasufell/ghcup.vim'
[[plugins]]
repo = 'junegunn/vim-easy-align'
[[plugins]]
repo = 'dominikduda/vim_current_word'
hook_add = '''
let g:vim_current_word#highlight_current_word = 0
hi default link CurrentWordTwins CursorColumn
'''
#[[plugins]]
# repo = 'vim-airline/vim-airline'
#[[plugins]]
# repo = 'vim-airline/vim-airline-themes'
[[plugins]]
repo = 'mkitt/tabline.vim'
[[plugins]]
repo = 'kshenoy/vim-signature'
# finder
[[plugins]]
repo = 'liuchengxu/vim-clap'
build = 'make'
hook_add = '''
autocmd Filetype clap_input inoremap <silent> <buffer> <kPageDown> <C-R>=clap#navigation#scroll('down')<CR>
autocmd Filetype clap_input inoremap <silent> <buffer> <kPageUp> <C-R>=clap#navigation#scroll('up')<CR>
autocmd Filetype clap_input nnoremap <silent> <buffer> <kPageDown> <C-R>=clap#navigation#scroll('down')<CR>
autocmd Filetype clap_input nnoremap <silent> <buffer> <kPageUp> <C-R>=clap#navigation#scroll('up')<CR>
let g:clap_popup_move_manager = {
\ "\<kPageUp>": "\<PageUp>",
\ "\<kPageDown>": "\<PageDown>",
\ }
let g:clap_layout = {'relative': 'editor', 'width': '95%', 'height': '33%', 'row': '33%', 'col': '5%'}
let g:clap_use_pure_python = 1
function! MultiGrep(...) abort
let opts = map(copy(a:000), "printf('++query=%s', v:val)")
execute 'Clap grep' join(opts, ' ')
endfunction
command! -nargs=* Rag call MultiGrep(<f-args>)
let g:clap_provider_generated_tags = {
\ 'source': {-> Tags__source()},
\ 'sink': {line -> Tags__sink(line)},
\}
function! Tags__source ()
return flatten(map(tagfiles(), {_, file -> filter(readfile(file), 'stridx(v:val, "!_TAG") != 0')}))
endfunc
function! Tags__sink (line)
" Let vim handle the tag
execute 'tag' split(a:line, '\t')[0]
endfunc
'''
# scm
[[plugins]]
repo = 'tpope/vim-fugitive'
[[plugins]]
repo = 'tpope/vim-rhubarb'
[[plugins]]
repo = 'tommcdo/vim-fubitive'
[[plugins]]
repo = 'airblade/vim-gitgutter'
hook_add = '''
" https://github.com/airblade/vim-gitgutter/issues/696
autocmd ColorScheme * highlight! link SignColumn LineNr
'''
# local vimrc
[[plugins]]
repo = 'LucHermitte/lh-vim-lib'
[[plugins]]
repo = 'LucHermitte/local_vimrc'
# completion
#[[plugins]]
#repo = 'Valloric/YouCompleteMe'
#build = './install.py --clang-completer --go-completer --rust-completer --system-boost --system-libclang'
#on_ft = ['c', 'go', 'clojure']
#hook_add = '''
# youcompleteme
# let g:ycm_filetype_blacklist = {
# \ 'notes' : 1,
# \ 'markdown' : 1,
# \ 'text' : 1,
# \ 'java' : 1,
# \}
# let g:ycm_confirm_extra_conf = 0
# let g:ycm_global_ycm_extra_conf='~/.vim/.ycm_extra_conf.py'
# let g:ycm_collect_identifiers_from_tags_files = 1
# let g:ycm_seed_identifiers_with_syntax = 0
# " let g:ycm_always_populate_location_list = 1
# let g:ycm_autoclose_preview_window_after_completion = 1
# let g:ycm_key_invoke_completion = '<C-Space>'
# let g:ycm_key_list_select_completion = ['<TAB>']
# let g:ycm_key_list_previous_completion = ['<S-TAB>']
# " nnoremap <F4> :YcmCompleter GoToDefinition<CR>
# let g:ycm_server_log_level = 'error'
# let g:ycm_semantic_triggers = {'haskell' : ['. ', '$ ']}
# let g:ycm_goto_buffer_command = 'horizontal-split'
#'''
[[plugins]]
repo = 'Shougo/deoplete.nvim'
hook_add = '''
let g:deoplete#enable_at_startup = 0
'''
[[plugins]]
repo = 'roxma/nvim-yarp'
on_if = '!has("nvim")'
[[plugins]]
repo = 'roxma/vim-hug-neovim-rpc'
on_if = '!has("nvim")'
# linting/compilation
[[plugins]]
repo = 'dense-analysis/ale'
# build = 'bash -c "cp -R ~/.vim/ale_linters ."'
on_ft = ['sh', 'vim']
hook_add = '''
let g:ale_enabled = 1
let g:ale_haskell_hie_executable = $HOME . '/.ghcup/bin/haskell-language-server-wrapper'
let g:ale_linters = {'haskell':['hie'], 'c':[]}
let g:ale_linters_explicit = 1
let g:ale_haskell_argon_error_level = 14
let g:ale_haskell_argon_warn_level = 10
let g:ale_haskell_argon_info_level = 6
'''
# LSP
[[plugins]]
repo = 'autozimu/LanguageClient-neovim'
rev = 'dev'
build = 'bash ./install.sh'
hook_add = '''
" Required for operations modifying multiple buffers like rename.
set hidden
let g:LanguageClient_autoStart = 0
let g:LanguageClient_diagnosticsEnable = 1
let g:LanguageClient_diagnosticsList = "Quickfix"
let g:LanguageClient_diagnosticsDisplay = {
\ 1: {
\ "name": "Error",
\ "texthl": "ALEError",
\ "signText": "✖",
\ "signTexthl": "ALEErrorSign",
\ "virtualTexthl": "Error",
\ },
\ 2: {
\ "name": "Warning",
\ "texthl": "ALEWarning",
\ "signText": "⚠",
\ "signTexthl": "ALEWarningSign",
\ "virtualTexthl": "Virtual",
\ },
\ 3: {
\ "name": "Information",
\ "texthl": "ALEInfo",
\ "signText": "",
\ "signTexthl": "ALEInfoSign",
\ "virtualTexthl": "Virtual",
\ },
\ 4: {
\ "name": "Hint",
\ "texthl": "ALEInfo",
\ "signText": "➤",
\ "signTexthl": "ALEInfoSign",
\ "virtualTexthl": "Virtual",
\ },
\ }
" hi link ALEError Error
hi ALEError term=underline cterm=underline ctermfg=Red gui=undercurl guisp=Red
hi link ALEWarning Warning
hi Virtual cterm=italic ctermfg=10 gui=italic guifg=#4b5558
hi link ALEInfo SpellCap
let $LANGUAGECLIENT_DEBUG=1
let g:LanguageClient_loggingLevel='DEBUG'
let g:LanguageClient_virtualTextPrefix = ''
let g:LanguageClient_loggingFile = expand('~/LanguageClient.log')
let g:LanguageClient_serverStderr = expand('~/LanguageServer.log')
let g:LanguageClient_rootMarkers = {'haskell': ['cabal.project', '*.cabal', 'stack.yaml'] }
let g:LanguageClient_serverCommands = {
\ 'haskell': ['haskell-language-server-wrapper', '--lsp', '--logfile', $HOME.'/hls-server.log'],
\ }
'''
#[[plugins]]
#repo = 'prabirshrestha/vim-lsp'
#hook_add = '''
# function! s:on_lsp_buffer_enabled() abort
# setlocal omnifunc=lsp#complete
# setlocal signcolumn=yes
# if exists('+tagfunc') | setlocal tagfunc=lsp#tagfunc | endif
# nmap <buffer> gd <plug>(lsp-definition)
# nmap <buffer> gr <plug>(lsp-references)
# " nmap <buffer> gi <plug>(lsp-implementation)
# " nmap <buffer> gt <plug>(lsp-type-definition)
# nmap <buffer> <leader>rn <plug>(lsp-rename)
# nmap <buffer> .g <Plug>(lsp-previous-diagnostic)
# nmap <buffer> ,g <Plug>(lsp-next-diagnostic)
# nmap <buffer> T <plug>(lsp-hover)
# nmap <buffer> <leader>la <plug>(lsp-code-action)
# nmap <buffer> <leader>sd <plug>(lsp-document-diagnostics)
#
# " refer to doc to add more commands
# endfunction
#
# augroup lsp_install
# au!
# " call s:on_lsp_buffer_enabled only for languages that has the server registered.
# autocmd User lsp_buffer_enabled call s:on_lsp_buffer_enabled()
# augroup END
#
# let g:lsp_auto_enable = 0
#
# " command -nargs=0 LspStart call lsp#activate()
#'''
# snippets
#[[plugins]]
#repo = 'Shougo/neosnippet.vim'
#[[plugins]]
#repo = 'honza/vim-snippets'
# multi language
[[plugins]]
repo = 'luochen1990/rainbow'
on_ft = ['clojure', 'haskell', 'python']
hook_add = '''
let g:rainbow_conf = {
\ 'guifgs': ['#DC322F', 'royalblue3', 'darkorange3', 'seagreen3'],
\ 'ctermfgs': ['lightred', 'lightblue', 'lightyellow', 'lightcyan', 'lightmagenta'],
\}
let g:rainbow_active = 1
'''
# haskell
[[plugins]]
repo = 'neovimhaskell/haskell-vim'
on_ft = ['haskell', 'cabal']
hook_add = '''
let g:haskell_classic_highlighting = 1
let g:haskell_indent_disable = 1
" let g:haskell_enable_quantification = 1
" let g:haskell_enable_recursivedo = 1
" let g:haskell_enable_arrowsyntax = 1
" let g:haskell_enable_pattern_synonyms = 1
" let g:haskell_enable_typeroles = 1
let g:haskell_indent_if = 0
let g:haskell_indent_case = 4
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 = 4
let g:haskell_indent_in = 0
let g:haskell_indent_guard = 4
" let g:haskell_disable_TH = 1
'''
[[plugins]]
repo = 'Twinside/vim-hoogle'
on_ft = ['haskell']
hook_source = '''
nnoremap <leader>ho :Hoogle<CR>
nnoremap <leader>hc :HoogleClose<CR>
'''
[[plugins]]
repo = 'alx741/vim-stylishask'
on_ft = ['haskell']
hook_add = '''
let g:stylishask_on_save = 0
'''
[[plugins]]
repo = 'fatih/vim-go'
on_ft = ['go']
hook_post_source = 'GoInstallBinaries'
# rust
[[plugins]]
repo = 'rust-lang/rust.vim'
on_ft = ['rust']
# javascript
[[plugins]]
repo = 'pangloss/vim-javascript'
on_ft = ['javascript']
# python
[[plugins]]
repo = 'python-mode/python-mode'
on_ft = ['python']
#[[plugins]]
# repo = 'zchee/deoplete-jedi'
# on_ft = ['python']
#[[plugins]]
# repo = 'davidhalter/jedi-vim'
# on_ft = ['python']
[[plugins]]
repo = 'manicmaniac/coconut.vim'
on_ft = ['python']
[[plugins]]
repo = 'alfredodeza/pytest.vim'
on_ft = ['python']
[[plugins]]
repo = 'idanarye/vim-vebugger'
on_ft = ['python']
# scala
[[plugins]]
repo = 'derekwyatt/vim-scala'
on_ft = ['scala']
# typescript
[[plugins]]
repo = 'leafgarland/typescript-vim'
on_ft = ['typescript']
[[plugins]]
repo = 'Quramy/tsuquyomi'
on_ft = ['typescript']
# color and beauty
# [[plugins]]
# repo = 'tomasiser/vim-code-dark'
# [[plugins]]
# repo = 'romainl/Apprentice'
# [[plugins]]
# repo = 'chriskempson/base16-vim'
# [[plugins]]
# repo = 'fneu/breezy'
# [[plugins]]
# repo = 'romainl/Disciple'
# [[plugins]]
# repo = 'wimstefan/Lightning'
# [[plugins]]
# repo = 'NLKNguyen/papercolor-theme'
# [[plugins]]
# repo = 'flazz/vim-colorschemes'
[[plugins]]
repo = 'overcache/NeoSolarized'
hook_add = '''
let g:neosolarized_contrast = 'normal'
let g:neosolarized_visibility = 'normal'
let g:neosolarized_vertSplitBgTrans = 0
let g:neosolarized_bold = 1
let g:neosolarized_underline = 1
let g:neosolarized_italic = 1
set background=dark
colorscheme NeoSolarized
'''
# repo = 'reedes/vim-colors-pencil'
# [[plugins]]
# repo = 'whatyouhide/vim-gotham'
# [[plugins]]
# repo = 'noahfrederick/vim-hemisu'
# [[plugins]]
# repo = 'morhetz/gruvbox'
# toml
[[plugins]]
repo = 'https://github.com/cespare/vim-toml'
# unmanaged
[[plugins]]
name = 'L9'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'L9'
[[plugins]]
name = 'ScrollColor'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'ScrollColor'
[[plugins]]
name = 'bufonly'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'bufonly'
[[plugins]]
name = 'colorschemedgrade'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'colorschemedegrade'
[[plugins]]
name = 'exheres-syntax'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'exheres-syntax-20160115'
[[plugins]]
name = 'fontzoom'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'fontzoom'
on_if = '!has("nvim")'
[[plugins]]
name = 'fuzzyfinder'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'fuzzyfinder'
[[plugins]]
name = 'log'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'log'
#[[plugins]]
#repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
#rtp = 'paredit'
#[[plugins]]
#repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
#rtp = 'tslime'
[[plugins]]
name = 'txtfmt'
repo = 'https://gogs.hasufell.de/hasufell/vim-unmanaged.git'
rtp = 'txtfmt'