vim: Add vim configuration

Inital vim config.
This commit is contained in:
Jens Sauer 2020-11-23 22:58:15 +01:00
parent 52b19c4d1d
commit 66da1b9ad0
15 changed files with 308 additions and 0 deletions

15
.gitmodules vendored
View File

@ -1,3 +1,18 @@
[submodule "shell/.config/base16-shell"]
path = shell/.config/base16-shell
url = https://github.com/chriskempson/base16-shell.git
[submodule "vim/.vim/bundle/Vundle.vim"]
path = vim/.vim/bundle/Vundle.vim
url = https://github.com/VundleVim/Vundle.vim.git
[submodule "vim/.vim/bundle/base16-vim"]
path = vim/.vim/bundle/base16-vim
url = https://github.com/chriskempson/base16-vim.git
[submodule "vim/.vim/bundle/vim-better-whitespace"]
path = vim/.vim/bundle/vim-better-whitespace
url = https://github.com/ntpeters/vim-better-whitespace.git
[submodule "vim/.vim/bundle/vim-fugitive"]
path = vim/.vim/bundle/vim-fugitive
url = https://github.com/tpope/vim-fugitive.git
[submodule "vim/.vim/bundle/vim-gitgutter"]
path = vim/.vim/bundle/vim-gitgutter
url = https://github.com/airblade/vim-gitgutter.git

View File

@ -0,0 +1 @@
/usr/share/vim-youcompleteme/autoload/youcompleteme.vim

@ -0,0 +1 @@
Subproject commit b255382d6242d7ea3877bf059d2934125e0c4d95

@ -0,0 +1 @@
Subproject commit 6191622d5806d4448fa2285047936bdcee57a098

@ -0,0 +1 @@
Subproject commit a05c728a962cdc7285f31ae5814cb64404fa7efc

@ -0,0 +1 @@
Subproject commit ab26e9fdb328cc351933f8d6178178e8ce5c8381

@ -0,0 +1 @@
Subproject commit 44bb472bac2fa96c1444fcc02ad981152e56735b

162
vim/.vim/doc/tags Normal file
View File

@ -0,0 +1,162 @@
.tern-sub-project youcompleteme.txt /*.tern-sub-project*
:UltiSnipsAddFiletypes youcompleteme.txt /*:UltiSnipsAddFiletypes*
:YcmCompleter youcompleteme.txt /*:YcmCompleter*
:YcmDebugInfo youcompleteme.txt /*:YcmDebugInfo*
:YcmDiags youcompleteme.txt /*:YcmDiags*
:YcmForceCompileAndDiagnostics youcompleteme.txt /*:YcmForceCompileAndDiagnostics*
:YcmRestartServer youcompleteme.txt /*:YcmRestartServer*
:YcmShowDetailedDiagnostic youcompleteme.txt /*:YcmShowDetailedDiagnostic*
:YcmToggleLogs youcompleteme.txt /*:YcmToggleLogs*
CTRL-sub-U youcompleteme.txt /*CTRL-sub-U*
ClearCompilationFlagCache youcompleteme.txt /*ClearCompilationFlagCache*
Ctrl-sub-C youcompleteme.txt /*Ctrl-sub-C*
E227:-mapping-already-exists-for-blah youcompleteme.txt /*E227:-mapping-already-exists-for-blah*
E887:-Sorry-this-command-is-disabled-the-Python-s-site-module-could-not-be-loaded youcompleteme.txt /*E887:-Sorry-this-command-is-disabled-the-Python-s-site-module-could-not-be-loaded*
Fatal-Python-error:-PyThreadState_Get:-no-current-thread youcompleteme.txt /*Fatal-Python-error:-PyThreadState_Get:-no-current-thread*
FixIt youcompleteme.txt /*FixIt*
GLIBC_2.XX-not-found() youcompleteme.txt /*GLIBC_2.XX-not-found()*
GetDoc youcompleteme.txt /*GetDoc*
GetDocImprecise youcompleteme.txt /*GetDocImprecise*
GetParent youcompleteme.txt /*GetParent*
GetType youcompleteme.txt /*GetType*
GetTypeImprecise youcompleteme.txt /*GetTypeImprecise*
GoTo youcompleteme.txt /*GoTo*
GoToDeclaration youcompleteme.txt /*GoToDeclaration*
GoToDefinition youcompleteme.txt /*GoToDefinition*
GoToImplementation youcompleteme.txt /*GoToImplementation*
GoToImplementationElseDeclaration youcompleteme.txt /*GoToImplementationElseDeclaration*
GoToImprecise youcompleteme.txt /*GoToImprecise*
GoToInclude youcompleteme.txt /*GoToInclude*
GoToReferences youcompleteme.txt /*GoToReferences*
ImportError youcompleteme.txt /*ImportError*
LONG_BIT-definition-appears-wrong-for-platform youcompleteme.txt /*LONG_BIT-definition-appears-wrong-for-platform*
R6034-An-application-has-made-an-attempt-to-load-the-C-runtime-library-incorrectly. youcompleteme.txt /*R6034-An-application-has-made-an-attempt-to-load-the-C-runtime-library-incorrectly.*
RefactorRename-new-name youcompleteme.txt /*RefactorRename-new-name*
ReloadSolution youcompleteme.txt /*ReloadSolution*
RestartServer youcompleteme.txt /*RestartServer*
Vim:-Caught-deadly-signal-SEGV youcompleteme.txt /*Vim:-Caught-deadly-signal-SEGV*
YcmQuickFixOpened youcompleteme.txt /*YcmQuickFixOpened*
g:ycm_add_preview_to_completeopt youcompleteme.txt /*g:ycm_add_preview_to_completeopt*
g:ycm_allow_changing_updatetime youcompleteme.txt /*g:ycm_allow_changing_updatetime*
g:ycm_always_populate_location_list youcompleteme.txt /*g:ycm_always_populate_location_list*
g:ycm_auto_start_csharp_server youcompleteme.txt /*g:ycm_auto_start_csharp_server*
g:ycm_auto_stop_csharp_server youcompleteme.txt /*g:ycm_auto_stop_csharp_server*
g:ycm_auto_trigger youcompleteme.txt /*g:ycm_auto_trigger*
g:ycm_autoclose_preview_window_after_completion youcompleteme.txt /*g:ycm_autoclose_preview_window_after_completion*
g:ycm_autoclose_preview_window_after_insertion youcompleteme.txt /*g:ycm_autoclose_preview_window_after_insertion*
g:ycm_cache_omnifunc youcompleteme.txt /*g:ycm_cache_omnifunc*
g:ycm_collect_identifiers_from_comments_and_strings youcompleteme.txt /*g:ycm_collect_identifiers_from_comments_and_strings*
g:ycm_collect_identifiers_from_tags_files youcompleteme.txt /*g:ycm_collect_identifiers_from_tags_files*
g:ycm_complete_in_comments youcompleteme.txt /*g:ycm_complete_in_comments*
g:ycm_complete_in_strings youcompleteme.txt /*g:ycm_complete_in_strings*
g:ycm_confirm_extra_conf youcompleteme.txt /*g:ycm_confirm_extra_conf*
g:ycm_csharp_insert_namespace_expr youcompleteme.txt /*g:ycm_csharp_insert_namespace_expr*
g:ycm_csharp_server_port youcompleteme.txt /*g:ycm_csharp_server_port*
g:ycm_disable_for_files_larger_than_kb youcompleteme.txt /*g:ycm_disable_for_files_larger_than_kb*
g:ycm_echo_current_diagnostic youcompleteme.txt /*g:ycm_echo_current_diagnostic*
g:ycm_enable_diagnostic_highlighting youcompleteme.txt /*g:ycm_enable_diagnostic_highlighting*
g:ycm_enable_diagnostic_signs youcompleteme.txt /*g:ycm_enable_diagnostic_signs*
g:ycm_error_symbol youcompleteme.txt /*g:ycm_error_symbol*
g:ycm_extra_conf_globlist youcompleteme.txt /*g:ycm_extra_conf_globlist*
g:ycm_extra_conf_vim_data youcompleteme.txt /*g:ycm_extra_conf_vim_data*
g:ycm_filepath_completion_use_working_dir youcompleteme.txt /*g:ycm_filepath_completion_use_working_dir*
g:ycm_filetype_blacklist youcompleteme.txt /*g:ycm_filetype_blacklist*
g:ycm_filetype_specific_completion_to_disable youcompleteme.txt /*g:ycm_filetype_specific_completion_to_disable*
g:ycm_filetype_whitelist youcompleteme.txt /*g:ycm_filetype_whitelist*
g:ycm_filter_diagnostics youcompleteme.txt /*g:ycm_filter_diagnostics*
g:ycm_global_ycm_extra_conf youcompleteme.txt /*g:ycm_global_ycm_extra_conf*
g:ycm_goto_buffer_command youcompleteme.txt /*g:ycm_goto_buffer_command*
g:ycm_keep_logfiles youcompleteme.txt /*g:ycm_keep_logfiles*
g:ycm_key_detailed_diagnostics youcompleteme.txt /*g:ycm_key_detailed_diagnostics*
g:ycm_key_invoke_completion youcompleteme.txt /*g:ycm_key_invoke_completion*
g:ycm_key_list_previous_completion youcompleteme.txt /*g:ycm_key_list_previous_completion*
g:ycm_key_list_select_completion youcompleteme.txt /*g:ycm_key_list_select_completion*
g:ycm_log_level youcompleteme.txt /*g:ycm_log_level*
g:ycm_max_diagnostics_to_display youcompleteme.txt /*g:ycm_max_diagnostics_to_display*
g:ycm_min_num_identifier_candidate_chars youcompleteme.txt /*g:ycm_min_num_identifier_candidate_chars*
g:ycm_min_num_of_chars_for_completion youcompleteme.txt /*g:ycm_min_num_of_chars_for_completion*
g:ycm_open_loclist_on_ycm_diags youcompleteme.txt /*g:ycm_open_loclist_on_ycm_diags*
g:ycm_python_binary_path youcompleteme.txt /*g:ycm_python_binary_path*
g:ycm_seed_identifiers_with_syntax youcompleteme.txt /*g:ycm_seed_identifiers_with_syntax*
g:ycm_semantic_triggers youcompleteme.txt /*g:ycm_semantic_triggers*
g:ycm_server_python_interpreter youcompleteme.txt /*g:ycm_server_python_interpreter*
g:ycm_show_diagnostics_ui youcompleteme.txt /*g:ycm_show_diagnostics_ui*
g:ycm_use_ultisnips_completer youcompleteme.txt /*g:ycm_use_ultisnips_completer*
g:ycm_warning_symbol youcompleteme.txt /*g:ycm_warning_symbol*
import-vim youcompleteme.txt /*import-vim*
install.py youcompleteme.txt /*install.py*
libpython youcompleteme.txt /*libpython*
libpython2.7.a-...-relocation-R_X86_64_32 youcompleteme.txt /*libpython2.7.a-...-relocation-R_X86_64_32*
vim-sub-autoclose youcompleteme.txt /*vim-sub-autoclose*
youcompleteme youcompleteme.txt /*youcompleteme*
youcompleteme#GetErrorCount youcompleteme.txt /*youcompleteme#GetErrorCount*
youcompleteme#GetWarningCount youcompleteme.txt /*youcompleteme#GetWarningCount*
youcompleteme-autocommands youcompleteme.txt /*youcompleteme-autocommands*
youcompleteme-c youcompleteme.txt /*youcompleteme-c*
youcompleteme-c-family-languages youcompleteme.txt /*youcompleteme-c-family-languages*
youcompleteme-c-family-semantic-completion youcompleteme.txt /*youcompleteme-c-family-semantic-completion*
youcompleteme-client-server-architecture youcompleteme.txt /*youcompleteme-client-server-architecture*
youcompleteme-commands youcompleteme.txt /*youcompleteme-commands*
youcompleteme-completion-doesnt-work-with-c-standard-library-headers youcompleteme.txt /*youcompleteme-completion-doesnt-work-with-c-standard-library-headers*
youcompleteme-completion-string-ranking youcompleteme.txt /*youcompleteme-completion-string-ranking*
youcompleteme-configuring-tern-for-node-support youcompleteme.txt /*youcompleteme-configuring-tern-for-node-support*
youcompleteme-configuring-tern-for-requirejs-support youcompleteme.txt /*youcompleteme-configuring-tern-for-requirejs-support*
youcompleteme-contact youcompleteme.txt /*youcompleteme-contact*
youcompleteme-contributor-code-of-conduct youcompleteme.txt /*youcompleteme-contributor-code-of-conduct*
youcompleteme-diagnostic-display youcompleteme.txt /*youcompleteme-diagnostic-display*
youcompleteme-diagnostic-highlighting-groups youcompleteme.txt /*youcompleteme-diagnostic-highlighting-groups*
youcompleteme-explanation youcompleteme.txt /*youcompleteme-explanation*
youcompleteme-faq youcompleteme.txt /*youcompleteme-faq*
youcompleteme-fedora-linux-x64 youcompleteme.txt /*youcompleteme-fedora-linux-x64*
youcompleteme-freebsd-openbsd youcompleteme.txt /*youcompleteme-freebsd-openbsd*
youcompleteme-full-installation-guide youcompleteme.txt /*youcompleteme-full-installation-guide*
youcompleteme-functions youcompleteme.txt /*youcompleteme-functions*
youcompleteme-general youcompleteme.txt /*youcompleteme-general*
youcompleteme-general-semantic-completion youcompleteme.txt /*youcompleteme-general-semantic-completion*
youcompleteme-general-usage youcompleteme.txt /*youcompleteme-general-usage*
youcompleteme-go youcompleteme.txt /*youcompleteme-go*
youcompleteme-goto-commands youcompleteme.txt /*youcompleteme-goto-commands*
youcompleteme-i-cant-complete-python-packages-in-virtual-environment. youcompleteme.txt /*youcompleteme-i-cant-complete-python-packages-in-virtual-environment.*
youcompleteme-i-get-an-internal-compiler-error-when-installing youcompleteme.txt /*youcompleteme-i-get-an-internal-compiler-error-when-installing*
youcompleteme-i-get-annoying-messages-in-vims-status-area-when-i-type youcompleteme.txt /*youcompleteme-i-get-annoying-messages-in-vims-status-area-when-i-type*
youcompleteme-i-get-weird-window-at-top-of-my-file-when-i-use-semantic-engine youcompleteme.txt /*youcompleteme-i-get-weird-window-at-top-of-my-file-when-i-use-semantic-engine*
youcompleteme-i-have-homebrew-python-and-or-macvim-cant-compile-sigabrt-when-starting youcompleteme.txt /*youcompleteme-i-have-homebrew-python-and-or-macvim-cant-compile-sigabrt-when-starting*
youcompleteme-i-hear-that-ycm-only-supports-python-2-is-that-true youcompleteme.txt /*youcompleteme-i-hear-that-ycm-only-supports-python-2-is-that-true*
youcompleteme-im-trying-to-use-homebrew-vim-with-ycm-im-getting-segfaults youcompleteme.txt /*youcompleteme-im-trying-to-use-homebrew-vim-with-ycm-im-getting-segfaults*
youcompleteme-installation youcompleteme.txt /*youcompleteme-installation*
youcompleteme-intro youcompleteme.txt /*youcompleteme-intro*
youcompleteme-introduction youcompleteme.txt /*youcompleteme-introduction*
youcompleteme-is-there-sort-of-ycm-mailing-list-i-have-questions youcompleteme.txt /*youcompleteme-is-there-sort-of-ycm-mailing-list-i-have-questions*
youcompleteme-it-appears-that-ycm-is-not-working youcompleteme.txt /*youcompleteme-it-appears-that-ycm-is-not-working*
youcompleteme-javascript youcompleteme.txt /*youcompleteme-javascript*
youcompleteme-javascript-semantic-completion youcompleteme.txt /*youcompleteme-javascript-semantic-completion*
youcompleteme-license youcompleteme.txt /*youcompleteme-license*
youcompleteme-mac-os-x youcompleteme.txt /*youcompleteme-mac-os-x*
youcompleteme-miscellaneous-commands youcompleteme.txt /*youcompleteme-miscellaneous-commands*
youcompleteme-multi-file-refactor youcompleteme.txt /*youcompleteme-multi-file-refactor*
youcompleteme-on-very-rare-occasions-vim-crashes-when-i-tab-through-completion-menu youcompleteme.txt /*youcompleteme-on-very-rare-occasions-vim-crashes-when-i-tab-through-completion-menu*
youcompleteme-options youcompleteme.txt /*youcompleteme-options*
youcompleteme-python youcompleteme.txt /*youcompleteme-python*
youcompleteme-python-semantic-completion youcompleteme.txt /*youcompleteme-python-semantic-completion*
youcompleteme-quick-feature-summary youcompleteme.txt /*youcompleteme-quick-feature-summary*
youcompleteme-quick-start youcompleteme.txt /*youcompleteme-quick-start*
youcompleteme-refactoring-fixit-commands youcompleteme.txt /*youcompleteme-refactoring-fixit-commands*
youcompleteme-references youcompleteme.txt /*youcompleteme-references*
youcompleteme-rust youcompleteme.txt /*youcompleteme-rust*
youcompleteme-rust-semantic-completion youcompleteme.txt /*youcompleteme-rust-semantic-completion*
youcompleteme-semantic-completion-for-other-languages youcompleteme.txt /*youcompleteme-semantic-completion-for-other-languages*
youcompleteme-semantic-information-commands youcompleteme.txt /*youcompleteme-semantic-information-commands*
youcompleteme-sometimes-it-takes-much-longer-to-get-semantic-completions-than-normal youcompleteme.txt /*youcompleteme-sometimes-it-takes-much-longer-to-get-semantic-completions-than-normal*
youcompleteme-tips-tricks youcompleteme.txt /*youcompleteme-tips-tricks*
youcompleteme-typescript youcompleteme.txt /*youcompleteme-typescript*
youcompleteme-ubuntu-linux-x64 youcompleteme.txt /*youcompleteme-ubuntu-linux-x64*
youcompleteme-user-guide youcompleteme.txt /*youcompleteme-user-guide*
youcompleteme-why-did-ycm-stop-using-syntastic-for-diagnostics-display youcompleteme.txt /*youcompleteme-why-did-ycm-stop-using-syntastic-for-diagnostics-display*
youcompleteme-why-does-ycm-demand-such-recent-version-of-vim youcompleteme.txt /*youcompleteme-why-does-ycm-demand-such-recent-version-of-vim*
youcompleteme-why-isnt-ycm-just-written-in-plain-vimscript-ffs youcompleteme.txt /*youcompleteme-why-isnt-ycm-just-written-in-plain-vimscript-ffs*
youcompleteme-windows youcompleteme.txt /*youcompleteme-windows*
youcompleteme-writing-new-semantic-completers youcompleteme.txt /*youcompleteme-writing-new-semantic-completers*
youcompleteme-ycm-auto-inserts-completion-strings-i-dont-want youcompleteme.txt /*youcompleteme-ycm-auto-inserts-completion-strings-i-dont-want*
youcompleteme-ycm-conflicts-with-ultisnips-tab-key-usage youcompleteme.txt /*youcompleteme-ycm-conflicts-with-ultisnips-tab-key-usage*
youcompleteme-ycm-does-not-read-identifiers-from-my-tags-files youcompleteme.txt /*youcompleteme-ycm-does-not-read-identifiers-from-my-tags-files*
youcompleteme-ycmcompleter-subcommands youcompleteme.txt /*youcompleteme-ycmcompleter-subcommands*

View File

@ -0,0 +1 @@
/usr/share/vim-youcompleteme/doc/youcompleteme.txt

View File

@ -0,0 +1,2 @@
setl tw=72
setl fo=aw

View File

@ -0,0 +1,8 @@
setlocal suffixesadd+=.md
setlocal shiftwidth=3
setlocal tabstop=3
setlocal shiftround
setlocal smartindent
setlocal autoindent
setlocal expandtab
setlocal textwidth=72

View File

@ -0,0 +1,8 @@
setlocal suffixesadd+=.rst
setlocal shiftwidth=3
setlocal tabstop=3
setlocal shiftround
setlocal smartindent
setlocal autoindent
setlocal expandtab
setlocal textwidth=72

View File

@ -0,0 +1 @@
/usr/share/vim/addons/plugin/powerline.vim

View File

@ -0,0 +1 @@
/usr/share/vim-youcompleteme/plugin/youcompleteme.vim

104
vim/.vimrc Normal file
View File

@ -0,0 +1,104 @@
runtime! debian.vim
runtime! defaults.vim
set nocompatible
filetype off
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
"Plugin 'kien/ctrlp.vim'
"Plugin 'bling/vim-airline'
Plugin 'airblade/vim-gitgutter'
"Plugin 'majutsushi/tagbar'
"Plugin 'Valloric/YouCompleteMe'
"Plugin 'rdnetto/YCM-Generator'
Plugin 'ntpeters/vim-better-whitespace'
"Plugin 'altercation/vim-colors-solarized'
Plugin 'chriskempson/base16-vim'
"Plugin 'vim-airline/vim-airline-themes'
"Plugin 'jiangmiao/auto-pairs'
" All of your Plugins must be added before the following line
call vundle#end() " required
syntax on
filetype plugin indent on
set number
set title
set cursorline
set noshowmode
set mouse=a
set tabstop=8
set softtabstop=8
set shiftwidth=8
set noexpandtab
set background=dark
" colorscheme solarized
let base16colorspace=256
colorscheme base16-solarflare
" Key Bindings
let mapleader="-"
nmap <silent> <F8> :TagbarToggle<CR>
nnoremap <silent> <tab> :if &modifiable && !&readonly && &modified <CR> :write<CR> :endif<CR>:bnext<CR>
nnoremap <silent> <s-tab> :if &modifiable && !&readonly && &modified <CR> :write<CR> :endif<CR>:bprevious<CR>
nnoremap <silent> <leader>s :call SolarizedToggle() <CR>
" 80 characters line
set colorcolumn=81
highlight ColorColumn ctermbg=black
highlight OverLength ctermbg=black ctermfg=darkred
highlight ExtraWhitespace ctermbg=DarkRed
autocmd BufRead * EnableWhitespace
let g:airline_theme='solarized'
" let g:airline_powerline_fonts = 1
let g:airline#extensions#tabline#enabled = 1
let g:airline#parts#ffenc#skip_expected_string='utf-8[unix]'
let g:airline#extensions#whitespace#mixed_indent_algo = 2
let g:ycm_collect_identifiers_from_tags_files = 1
let g:ycm_seed_identifiers_with_syntax = 1
let g:ycm_extra_conf_globlist = ['~/mimir/*']
"highlight YcmErrorSection ctermbg=DarkRed ctermfg=Black
let g:ycm_filetype_blacklist = {
\ 'tagbar': 1,
\ 'notes': 1,
\ 'markdown': 1,
\ 'netrw': 1,
\ 'unite': 1,
\ 'text': 1,
\ 'vimwiki': 1,
\ 'pandoc': 1,
\ 'infolog': 1,
\ 'mail': 1,
\ 'rst' : 1
\}
set completeopt-=preview
function! SolarizedToggle()
if &background == 'dark'
set background=light
else
set background=dark
endif
endfunction
" Powerline
python3 from powerline.vim import setup as powerline_setup
python3 powerline_setup()
python3 del powerline_setup
set laststatus=2
set showtabline=2