dotfiles/config/vim/pluginconfig.vim

188 lines
5.4 KiB
VimL
Raw Permalink 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.

""" ALE """
" nmap <F3> :ALEFix<CR>
"
" let g:ale_sign_error = '×'
" let g:ale_sign_warning = '!'
" let g:ale_completion_enabled = 1
" let g:ale_fixers = ['autopep8', 'shfmt', 'uncrustify', 'remove_trailing_lines', 'trim_whitespace', 'phpcbf']
" let g:ale_php_phpcs_standard = '/srv/http/machines/ruleset.xml'
" For PHP, install https://pear.php.net/package/PHP_CodeSniffer
""" UNDOTREE """
nmap <F7> :UndotreeToggle<CR>
""" VIM-AIRLINE """
set noshowmode
set laststatus=2
let g:airline_powerline_fonts = 1
let g:airline#extensions#tabline#enabled = 1
let g:airline_section_a = airline#section#create(['mode'])
let g:airline_section_b = airline#section#create(['branch', 'hunks'])
" let g:airline_section_z = airline#section#create(['%B', '@', '%l', ':', '%c'])
let g:airline_theme = 'base16_monokai'
let airline#extensions#languageclient#error_symbol = '✖ '
let airline#extensions#languageclient#warning_symbol = '⚠ '
""" FZF """
let g:fzf_layout = { 'down': '~40%' }
let g:fzf_colors =
\ { 'fg': ['fg', 'Normal'],
\ 'bg': ['bg', 'Normal'],
\ 'hl': ['fg', 'Comment'],
\ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
\ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
\ 'hl+': ['fg', 'Statement'],
\ 'info': ['fg', 'PreProc'],
\ 'border': ['fg', 'Ignore'],
\ 'prompt': ['fg', 'Conditional'],
\ 'pointer': ['fg', 'Exception'],
\ 'marker': ['fg', 'Keyword'],
\ 'spinner': ['fg', 'Label'],
\ 'header': ['fg', 'Comment'] }
let g:fzf_command_prefix = 'Fzf'
nmap gF :FzfFiles<CR>
nmap gf :FzfGFiles<CR>
nmap gb :FzfBuffers<CR>
nmap gL :FzfLines<CR>
nmap gl :FzfBLines<CR>
nmap gT :FzfTags<CR>
nmap gt :FzfBTags<CR>
nmap gm :FzfMarks<CR>
nmap gw :FzfWindows<CR>
nmap gh :FzfHistory<CR>
nmap gH :FzfHistory:<CR>
nmap gS :FzfHistory/<CR>
nmap gs :FzfSnippets<CR>
" TODO `gd` → go to tag matching selected word, or show a list with that
" of tags pre-filtered with that word
""" SUPERTAB """
let g:SuperTabDefaultCompletionType = "<c-n>" " Go down when completing
let g:SuperTabContextDefaultCompletionType = "<c-n>"
""" LanguageTool """
let g:languagetool_jar = "/usr/share/java/languagetool/languagetool-commandline.jar"
""" vim-pandoc """
let g:pandoc#modules#disabled = ["folding"]
let g:pandoc#spell#enabled = 0
let g:pandoc#syntax#conceal#use = 0
""" LanguageClient-neovim """
" let g:LanguageClient_serverCommands = {
" \ 'python': ['pyls'],
" \ 'sh': ['bash-language-server', 'start'],
" \ }
" let g:LanguageClient_loggingFile = expand('~/.cache/vim/LanguageClient.log')
"
"
" 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> gD :call LanguageClient#textDocument_references()<CR>
" nnoremap <buffer> <silent> <F2> :call LanguageClient#textDocument_rename()<CR>
" nnoremap <buffer> <silent> <F3> :call LanguageClient#textDocument_formatting()<CR>
" set completefunc=LanguageClient#complete
" set omnifunc=LanguageClient#complete
" endif
" endfunction
" autocmd FileType * call LC_maps()
""" vim-lsp """
" (providers are automatically detected thanks to vim-lsp-settings.
" You can even install some locally using :LspInstallServer)
nnoremap gd :LspDefinition<CR>
nnoremap gD :LspDeclaration<CR>
nnoremap <F3> :LspDocumentFormat<CR>
vnoremap <F3> :LspDocumentRangeFormat<CR>
nnoremap gE :LspNextDiagnostic<CR>
nnoremap ge :LspNextError<CR>
nnoremap <F2> :LspRename<CR>
let g:lsp_signs_enabled = 1
let g:lsp_diagnostics_echo_cursor = 1
let g:lsp_signs_error = {'text': '✗'}
let g:lsp_signs_warning = {'text': '‼'}
let g:lsp_signs_information = {'text': ''}
let g:lsp_signs_hint = {'text': '?'}
let g:lsp_highlight_references_enabled = 1
""" deoplete """
let g:deoplete#enable_at_startup = 1
inoremap <silent><expr> <TAB>
\ pumvisible() ? "\<C-n>" :
\ <SID>check_back_space() ? "\<TAB>" :
\ deoplete#manual_complete()
function! s:check_back_space() abort "{{{
let col = col('.') - 1
return !col || getline('.')[col - 1] =~ '\s'
endfunction"}}}
" suggested by ssemshi to make it not too slow
" let g:deoplete#auto_complete_delay = 100
call deoplete#custom#option({
\ 'auto_complete_delay': 100,
\ 'smart_case': v:true,
\ })
""" asyncomplete """
" let g:asyncomplete_auto_popup = 1
" inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
" inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
" inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<cr>"
" imap <c-space> <Plug>(asyncomplete_force_refresh)
""" asyncomplete-file
" au User asyncomplete_setup call asyncomplete#register_source(asyncomplete#sources#file#get_source_options({
" \ 'name': 'file',
" \ 'whitelist': ['*'],
" \ 'priority': 10,
" \ 'completor': function('asyncomplete#sources#file#completor')
" \ }))
""" vista.vim """
nmap <F8> :Vista!!<CR>
let g:vista_icon_indent = ["▸ ", ""]
let g:vista#renderer#enable_icon = 0
" The default icons can't be suitable for all the filetypes, you can extend it as you wish.
let g:vista#renderer#icons = {
\ "function": "f",
\ "variable": "x",
\ }
" EasyAlign
" Align GitHub-flavored Markdown tables
au FileType markdown vmap <Bar> :EasyAlign*<Bar><Enter>
" SmoothScroll
noremap <silent> <C-K> :call smooth_scroll#up(20, 5, 1)<CR>
noremap <silent> <C-J> :call smooth_scroll#down(20, 5, 1)<CR>
" gutentags
let g:gutentags_cache_dir = expand('~/.cache/vim/tags')