diff options
| -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 |
