diff options
| author | Max Christian Pohle | 2018-01-11 00:45:57 +0100 | 
|---|---|---|
| committer | Max Christian Pohle | 2018-01-11 00:45:57 +0100 | 
| commit | 278a0bbbc1e141bab8bc9aa798e2f4a5bfc6efbb (patch) | |
| tree | 770d5e31f4086375f47097823691c56fbc2e9caf | |
| parent | 61196ac4c36fe524d4cba8b7bbba78d379b29163 (diff) | |
| download | vim-karlmarks-278a0bbbc1e141bab8bc9aa798e2f4a5bfc6efbb.tar.bz2 vim-karlmarks-278a0bbbc1e141bab8bc9aa798e2f4a5bfc6efbb.zip  | |
Experimental neovim alternatives included
| -rw-r--r-- | vimrc-full | 123 | 
1 files changed, 70 insertions, 53 deletions
| @@ -845,62 +845,76 @@ if has("python") | |||
| 845 | " let g:UltiSnipsExpandTrigger="<c-tab>" | 845 | " let g:UltiSnipsExpandTrigger="<c-tab>" | 
| 846 | " let g:UltiSnipsListSnippets="<c-s-tab>" | 846 | " let g:UltiSnipsListSnippets="<c-s-tab>" | 
| 847 | 847 | ||
| 848 | " YouCompleteMe: ===================================================================================================== | 848 | if has('nvim') | 
| 849 | " Plug 'Valloric/MatchTagAlways' " highlights the closing tag/brace/... | 849 | Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } | 
| 850 | Plug 'Valloric/YouCompleteMe' | 850 | Plug 'tweekmonster/deoplete-clang2' | 
| 851 | let g:ycm_error_symbol = '✖' " insert this as an error symbol in the gutter bar/sign column | 851 | " Use deoplete. | 
| 852 | let g:ycm_warning_symbol = '➔' " insert this as a warning symbol in the gutter bar/sign coloumn | 852 | let g:deoplete#enable_at_startup = 1 | 
| 853 | 853 | else | |
| 854 | let g:ycm_autoclose_preview_window_after_insertion = 0 | 854 | |
| 855 | let g:ycm_auto_trigger = 1 | 855 | " YouCompleteMe: ===================================================================================================== | 
| 856 | let g:ycm_collect_identifiers_from_tags_files = 1 " Let YCM read tags from Ctags file | 856 | " Plug 'Valloric/MatchTagAlways' " highlights the closing tag/brace/... | 
| 857 | let g:ycm_confirm_extra_conf = 0 " security is overrated ;) | 857 | Plug 'Valloric/YouCompleteMe' | 
| 858 | 858 | let g:ycm_error_symbol = '✖' " insert this as an error symbol in the gutter bar/sign column | |
| 859 | let g:ycm_key_list_previous_completion = ['Up'] | 859 | let g:ycm_warning_symbol = '➔' " insert this as a warning symbol in the gutter bar/sign coloumn | 
| 860 | let g:ycm_key_list_select_completion = ['Down'] | 860 | |
| 861 | 861 | let g:ycm_autoclose_preview_window_after_insertion = 0 | |
| 862 | " Plug 'vim-scripts/dbext.vim' " dependency to allow db related completions | 862 | let g:ycm_auto_trigger = 1 | 
| 863 | " let g:ycm_server_python_interpreter = 'python3' | 863 | let g:ycm_collect_identifiers_from_tags_files = 1 " Let YCM read tags from Ctags file | 
| 864 | " let g:ycm_python_binary_path = '/usr/bin/python3' " the python interpreter of choice (for code checking) | 864 | let g:ycm_confirm_extra_conf = 0 " security is overrated ;) | 
| 865 | " let g:ycm_add_preview_to_completeopt = 1 " reuse existing preview window | 865 | |
| 866 | " let g:ycm_seed_identifiers_with_syntax = 1 " Completion for programming language's keyword | 866 | let g:ycm_key_list_previous_completion = ['Up'] | 
| 867 | " let g:ycm_complete_in_comments = 1 " Completion in comments | 867 | let g:ycm_key_list_select_completion = ['Down'] | 
| 868 | " let g:ycm_complete_in_strings = 1 " Completion in string | 868 | |
| 869 | " let g:ycm_min_num_of_chars_for_completion = 6 " we normally avoid identifier based completion, it just helps with long words. Use semantic completions with <C-Space> instead (terrible idea, html snippets not working!) | 869 | " Plug 'vim-scripts/dbext.vim' " dependency to allow db related completions | 
| 870 | " let g:ycm_min_num_identifier_candidate_chars = 4 | 870 | " let g:ycm_server_python_interpreter = 'python3' | 
| 871 | " let g:ycm_max_num_identifier_candidates = 10 | 871 | " let g:ycm_python_binary_path = '/usr/bin/python3' " the python interpreter of choice (for code checking) | 
| 872 | " let g:ycm_max_num_candidates = 50 | 872 | " let g:ycm_add_preview_to_completeopt = 1 " reuse existing preview window | 
| 873 | " let g:ycm_use_ultisnips_completer = 1 " Default 1, just ensure | 873 | " let g:ycm_seed_identifiers_with_syntax = 1 " Completion for programming language's keyword | 
| 874 | " let g:ycm_key_list_select_completion = ['<Down>'] | 874 | " let g:ycm_complete_in_comments = 1 " Completion in comments | 
| 875 | " let g:ycm_key_list_previous_completion = ['<Up>'] | 875 | " let g:ycm_complete_in_strings = 1 " Completion in string | 
| 876 | " let g:ycm_global_ycm_extra_conf = '.ycm_extra_conf.py' | 876 | " let g:ycm_min_num_of_chars_for_completion = 6 " we normally avoid identifier based completion, it just helps with long words. Use semantic completions with <C-Space> instead (terrible idea, html snippets not working!) | 
| 877 | " let g:ycm_semantic_triggers = { 'c': [ 're!.' ] } | 877 | " let g:ycm_min_num_identifier_candidate_chars = 4 | 
| 878 | " " let g:ycm_disable_for_files_larger_than_kb = 16384 " we have faaast computers, don't we? | 878 | " let g:ycm_max_num_identifier_candidates = 10 | 
| 879 | " let g:ycm_show_diagnostics_ui = 0 | 879 | " let g:ycm_max_num_candidates = 50 | 
| 880 | " " disable <tab>-key for YCM so that it can be used with ultisnips | 880 | " let g:ycm_use_ultisnips_completer = 1 " Default 1, just ensure | 
| 881 | " let g:ycm_key_list_select_completion=[] | 881 | " let g:ycm_key_list_select_completion = ['<Down>'] | 
| 882 | " let g:ycm_key_list_previous_completion=[] | 882 | " let g:ycm_key_list_previous_completion = ['<Up>'] | 
| 883 | " let g:ycm_global_ycm_extra_conf = '.ycm_extra_conf.py' | ||
| 884 | " let g:ycm_semantic_triggers = { 'c': [ 're!.' ] } | ||
| 885 | " " let g:ycm_disable_for_files_larger_than_kb = 16384 " we have faaast computers, don't we? | ||
| 886 | " let g:ycm_show_diagnostics_ui = 0 | ||
| 887 | " " disable <tab>-key for YCM so that it can be used with ultisnips | ||
| 888 | " let g:ycm_key_list_select_completion=[] | ||
| 889 | " let g:ycm_key_list_previous_completion=[] | ||
| 890 | endif | ||
| 883 | 891 | ||
| 884 | 892 | ||
| 885 | " SYNTASTIC: ========================================================================================================= | 893 | " SYNTASTIC: ========================================================================================================= | 
| 886 | Plug 'scrooloose/syntastic' | 894 | if has('nvim') | 
| 887 | set statusline+=%#warningmsg# | 895 | Plug 'w0rp/ale' | 
| 888 | set statusline+=%{SyntasticStatuslineFlag()} | 896 | else | 
| 889 | let g:LatexBox_latexmk_preview_continuously = 1 | 897 | |
| 890 | let g:LatexBox_viewer = "evince" | 898 | |
| 891 | let g:syntastic_always_populate_loc_list = 1 | 899 | Plug 'scrooloose/syntastic' | 
| 892 | let g:syntastic_auto_loc_list = 0 | 900 | set statusline+=%#warningmsg# | 
| 893 | let g:syntastic_check_on_open = 1 | 901 | set statusline+=%{SyntasticStatuslineFlag()} | 
| 894 | let g:syntastic_check_on_wq = 0 | 902 | let g:LatexBox_latexmk_preview_continuously = 1 | 
| 895 | " let g:syntastic_quiet_messages = {"type":"style"} | 903 | let g:LatexBox_viewer = "evince" | 
| 896 | " | 904 | let g:syntastic_always_populate_loc_list = 1 | 
| 897 | " E221: multiple spaces before Operator | 905 | let g:syntastic_auto_loc_list = 0 | 
| 898 | let g:syntastic_python_flake8_args = '--max-complexity=10 --max-line-length=120 --exclude venv --doctests --exit-zero --ignore=E221' | 906 | let g:syntastic_check_on_open = 1 | 
| 899 | " filter ( = do not display) style/formatting errors and warnings | 907 | let g:syntastic_check_on_wq = 0 | 
| 900 | let g:syntastic_error_symbol = '✖' | 908 | " let g:syntastic_quiet_messages = {"type":"style"} | 
| 901 | let g:syntastic_style_error_symbol = '✗' | 909 | " | 
| 902 | let g:syntastic_warning_symbol = '➔' | 910 | " E221: multiple spaces before Operator | 
| 903 | let g:syntastic_style_warning_symbol = '≈' | 911 | let g:syntastic_python_flake8_args = '--max-complexity=10 --max-line-length=120 --exclude venv --doctests --exit-zero --ignore=E221' | 
| 912 | " filter ( = do not display) style/formatting errors and warnings | ||
| 913 | let g:syntastic_error_symbol = '✖' | ||
| 914 | let g:syntastic_style_error_symbol = '✗' | ||
| 915 | let g:syntastic_warning_symbol = '➔' | ||
| 916 | let g:syntastic_style_warning_symbol = '≈' | ||
| 917 | endif | ||
| 904 | 918 | ||
| 905 | " JEDI: ============================================================================================================== | 919 | " JEDI: ============================================================================================================== | 
| 906 | Plug 'davidhalter/jedi-vim' " jedi gets used to display python function signatures | 920 | Plug 'davidhalter/jedi-vim' " jedi gets used to display python function signatures | 
| @@ -1014,6 +1028,9 @@ function! ExtendColorTheme() | |||
| 1014 | autocmd InsertEnter * set list | 1028 | autocmd InsertEnter * set list | 
| 1015 | autocmd InsertLeave * set nolist | 1029 | autocmd InsertLeave * set nolist | 
| 1016 | 1030 | ||
| 1031 | " highlight double words (its unlikely they are right) | ||
| 1032 | autocmd InsertLeave * syntax match Convention /\v<(\w+)\_s+\1>/ containedin=ALL | ||
| 1033 | |||
| 1017 | " Show trailing whitepace and spaces before a tab as part of the syntax highlighting | 1034 | " Show trailing whitepace and spaces before a tab as part of the syntax highlighting | 
| 1018 | highlight! link Convention Error | 1035 | highlight! link Convention Error | 
| 1019 | autocmd BufEnter,InsertLeave * syntax match Convention /\s\+$\| \+\ze\t/ containedin=ALL | 1036 | autocmd BufEnter,InsertLeave * syntax match Convention /\s\+$\| \+\ze\t/ containedin=ALL | 
