From 0dd996f2c3151c5915b6b1f127f0655c2f83d9d4 Mon Sep 17 00:00:00 2001 From: Max Christian Pohle Date: Sun, 11 Jun 2017 01:45:25 +0200 Subject: Bugfixes, switched from airline to lightline --- compton.conf | 2 +- doc/shortcuts.txt | 1 + vimrc-full | 94 +++++++++++++++++--------------- ycm_extra_conf.py | 158 +++++------------------------------------------------- 4 files changed, 65 insertions(+), 190 deletions(-) diff --git a/compton.conf b/compton.conf index 79a3606..f83ce40 100644 --- a/compton.conf +++ b/compton.conf @@ -61,4 +61,4 @@ wintypes: #opacity-rule = ["90:class_g = 'URxvt'", "90:class_g = ''" ]; -opacity-rule = ["90:class_g = 'xfce4-terminal'", "90:class_g = 'Xfce4-terminal'", "90:class_g = 'termite'", "90:class_g = 'i3bar'", "90:class_g = 'i3-frame'" ]; +opacity-rule = ["90:class_g = 'xfce4-terminal'", "90:class_g = 'Xfce4-terminal'", "90:class_g = 'termite'", "90:class_g = 'i3bar'", "90:class_g = 'i3-frame'", "90:class_g = 'Gnome-terminal'", "90:class_g = 'gnome-terminal-server'" ]; diff --git a/doc/shortcuts.txt b/doc/shortcuts.txt index 8c0d773..a01c7a1 100644 --- a/doc/shortcuts.txt +++ b/doc/shortcuts.txt @@ -79,6 +79,7 @@ ma = set marker a-z (a in this case) s = splits buffer horizontally (same as screen) w = moves the cursor to the next window and back [dir] = moves the cursor in that direction (use hjkl or arrow keys) +[HK] = make a vertical split horizontal and vice versa [vimdiff] diff --git a/vimrc-full b/vimrc-full index e605d38..fac043b 100644 --- a/vimrc-full +++ b/vimrc-full @@ -166,49 +166,51 @@ nnoremap :TagbarToggle| " bind TagBar to Hotkey Ct set laststatus=2 | " required by AirLine, without status line does not appear until a window split set background=light | -Plug 'vim-airline/vim-airline' | " beautification of the mode line -let g:airline_section_c = "%F" | " was: %F -let g:airline_detect_modified = 1 | -let g:airline_detect_paste = 0 | -let g:airline_exclude_preview = 0 | -let g:airline_inactive_collapse = 1 | -let g:airline_powerline_fonts = 1 | -let g:airline_skip_empty_sections = 1 | -" let g:airline_extensions = [] | - -let g:airline#extensions#tabline#enabled = 1 | -let g:airline#extensions#tabline#left_alt_sep = '' | -let g:airline#extensions#tabline#left_sep = '' | -let g:airline#extensions#tabline#right_alt_sep = '' | -let g:airline#extensions#tabline#right_sep = '' | -let g:airline#extensions#tabline#fnamemod = ':t' | " let airline just show the filename without its path -let g:airline#extensions#tabline#disable_refresh = 0 | -let g:airline#extensions#tabline#enabled = 1 | -let g:airline#extensions#tabline#show_buffers = 1 | -let g:airline#extensions#tabline#show_tabs = 0 | -let g:airline#extensions#tabline#ignore_bufadd_pat = '\c\vgundo|undotree|vimfiler|tagbar|nerd_tree|preview|^$' - -let g:airline_extensions#branch#enabled = 1 | -let g:airline_extensions#whitespace#enabled = 1 | -let b:airline_whitespace_checks = ['indent', 'trailing', 'long', 'mixed-indent-file'] - -if has('python') - let g:airline_extensions#syntastic#enabled = 1 | - let g:airline_extensions#ycm#enabled = 1 | -endif - -let g:airline#extensions#tagbar#flags = 'f' | " even though the airline extension is off this controls :h tagbar-extend -let g:airline#extensions#tagbar#enabled = 0 | - -" AIRLINE_Theme: -Plug 'vim-airline/vim-airline-themes' | " airline themes to match any light and dark terminal using :AirlineTheme -let base16colorspace=256 | -let g:airline_theme='base16' | " specifies which colorscheme should airline uses -let g:airline#themes#base16#constant = 0 | -" let g:solarized_base16 = 1 -" let g:airline_base16_improved_contrast = 1 -" let g:airline_theme='badcat' | " specifies which colorscheme should airline uses -" let g:airline_theme='papercolor' | " specifies which colorscheme should ionirline uses +Plug 'itchyny/lightline.vim' + +" Plug 'vim-airline/vim-airline' | " beautification of the mode line +" let g:airline_section_c = "%F" | " was: %F +" let g:airline_detect_modified = 1 | +" let g:airline_detect_paste = 0 | +" let g:airline_exclude_preview = 0 | +" let g:airline_inactive_collapse = 1 | +" let g:airline_powerline_fonts = 1 | +" let g:airline_skip_empty_sections = 1 | +" let g:airline_extensions = [] | +" +" let g:airline#extensions#tabline#enabled = 1 | +" let g:airline#extensions#tabline#left_alt_sep = '' | +" let g:airline#extensions#tabline#left_sep = '' | +" let g:airline#extensions#tabline#right_alt_sep = '' | +" let g:airline#extensions#tabline#right_sep = '' | +" let g:airline#extensions#tabline#fnamemod = ':t' | " let airline just show the filename without its path +" let g:airline#extensions#tabline#disable_refresh = 1 | " refresh airline on bufadd ? +" let g:airline#extensions#tabline#enabled = 1 | +" let g:airline#extensions#tabline#show_buffers = 1 | +" let g:airline#extensions#tabline#show_tabs = 0 | +" let g:airline#extensions#tabline#ignore_bufadd_pat = '\c\vgundo|undotree|vimfiler|tagbar|nerd_tree|preview|^$' +" +" let g:airline_extensions#branch#enabled = 1 | +" let g:airline_extensions#whitespace#enabled = 0 | " airlines whitespace check is slow :/ +" let b:airline_whitespace_checks = ['indent', 'trailing', 'long', 'mixed-indent-file'] +" +" if has('python') +" let g:airline_extensions#syntastic#enabled = 1 | +" let g:airline_extensions#ycm#enabled = 1 | +" endif +" +" let g:airline#extensions#tagbar#flags = 'f' | " even though the airline extension is off this controls :h tagbar-extend +" let g:airline#extensions#tagbar#enabled = 0 | +" +" " AIRLINE_Theme: +" Plug 'vim-airline/vim-airline-themes' | " airline themes to match any light and dark terminal using :AirlineTheme +" let base16colorspace=256 | +" let g:airline_theme='base16' | " specifies which colorscheme should airline uses +" let g:airline#themes#base16#constant = 0 | +" " let g:solarized_base16 = 1 +" " let g:airline_base16_improved_contrast = 1 +" " let g:airline_theme='badcat' | " specifies which colorscheme should airline uses +" " let g:airline_theme='papercolor' | " specifies which colorscheme should ionirline uses " Autocompleter: ===================================== if has("python") @@ -593,7 +595,7 @@ if has("autocmd") " autocmd BufEnter * @f augroup END - autocmd VimEnter * set nobuflisted + " autocmd VimEnter * set nobuflisted endif @@ -659,6 +661,7 @@ let g:netrw_winsize = 20 | " window size in percent highlight WordBold cterm=bold gui=bold +let w:m1 = 0 function! HighlightWordUnderCursor() if(exists('w:m1') && w:m1 > 0) call matchdelete(w:m1) @@ -670,6 +673,9 @@ function! HighlightWordUnderCursor() endif endfunction autocmd! CursorHold,CursorHoldI * call HighlightWordUnderCursor() +if version >= 702 " clean up (see: http://vim.wikia.com/wiki/VimTip396) + autocmd BufWinLeave * call clearmatches() +endif " au BufNewFile,BufRead,BufEnter *.cpp,*.hpp set omnifunc=omni#cpp#complete#Main " Enable omni completion. diff --git a/ycm_extra_conf.py b/ycm_extra_conf.py index c4cc609..092887d 100644 --- a/ycm_extra_conf.py +++ b/ycm_extra_conf.py @@ -1,145 +1,13 @@ -# Generated by YCM Generator at 2015-09-05 13:02:32.549813 - -# This file is NOT licensed under the GPLv3, which is the license for the rest -# of YouCompleteMe. -# -# Here's the license text for this file: -# -# This is free and unencumbered software released into the public domain. -# -# Anyone is free to copy, modify, publish, use, compile, sell, or -# distribute this software, either in source code form or as a compiled -# binary, for any purpose, commercial or non-commercial, and by any -# means. -# -# In jurisdictions that recognize copyright laws, the author or authors -# of this software dedicate any and all copyright interest in the -# software to the public domain. We make this dedication for the benefit -# of the public at large and to the detriment of our heirs and -# successors. We intend this dedication to be an overt act of -# relinquishment in perpetuity of all present and future rights to this -# software under copyright law. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -# IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -# For more information, please refer to - -import os -import ycm_core - -flags = [ - '-x', - 'c', - '-D_GNU_SOURCE', - '-I./', - '-I/usr/include', - '-I/usr/local/include', - '-Wall', - '-I', '../submodules/', - '-I', 'lib/', - '-I', 'submodules/qdecoder/src/', -] - - -# Set this to the absolute path to the folder (NOT the file!) containing the -# compile_commands.json file to use that instead of 'flags'. See here for -# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html -# -# You can get CMake to generate this file for you by adding: -# set( CMAKE_EXPORT_COMPILE_COMMANDS 1 ) -# to your CMakeLists.txt file. -# -# Most projects will NOT need to set this to anything; you can just change the -# 'flags' list of compilation flags. Notice that YCM itself uses that approach. -compilation_database_folder = '' - -if os.path.exists( compilation_database_folder ): - database = ycm_core.CompilationDatabase( compilation_database_folder ) -else: - database = None - -SOURCE_EXTENSIONS = [ '.cpp', '.cxx', '.cc', '.c', '.m', '.mm' ] - -def DirectoryOfThisScript(): - return os.path.dirname( os.path.abspath( __file__ ) ) - - -def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): - if not working_directory: - return list( flags ) - new_flags = [] - make_next_absolute = False - path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] - for flag in flags: - new_flag = flag - - if make_next_absolute: - make_next_absolute = False - if not flag.startswith( '/' ): - new_flag = os.path.join( working_directory, flag ) - - for path_flag in path_flags: - if flag == path_flag: - make_next_absolute = True - break - - if flag.startswith( path_flag ): - path = flag[ len( path_flag ): ] - new_flag = path_flag + os.path.join( working_directory, path ) - break - - if new_flag: - new_flags.append( new_flag ) - return new_flags - - -def IsHeaderFile( filename ): - extension = os.path.splitext( filename )[ 1 ] - return extension in [ '.h', '.hxx', '.hpp', '.hh' ] - - -def GetCompilationInfoForFile( filename ): - # The compilation_commands.json file generated by CMake does not have entries - # for header files. So we do our best by asking the db for flags for a - # corresponding source file, if any. If one exists, the flags for that file - # should be good enough. - if IsHeaderFile( filename ): - basename = os.path.splitext( filename )[ 0 ] - for extension in SOURCE_EXTENSIONS: - replacement_file = basename + extension - if os.path.exists( replacement_file ): - compilation_info = database.GetCompilationInfoForFile( - replacement_file ) - if compilation_info.compiler_flags_: - return compilation_info - return None - return database.GetCompilationInfoForFile( filename ) - - -def FlagsForFile( filename, **kwargs ): - if database: - # Bear in mind that compilation_info.compiler_flags_ does NOT return a - # python list, but a "list-like" StringVec object - compilation_info = GetCompilationInfoForFile( filename ) - if not compilation_info: - return None - - final_flags = MakeRelativePathsInFlagsAbsolute( - compilation_info.compiler_flags_, - compilation_info.compiler_working_dir_ ) - - else: - relative_to = DirectoryOfThisScript() - final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) - - return { - 'flags': final_flags, - 'do_cache': True - } - +def FlagsForFile(filename, **kwargs): + return { + 'flags': [ + '-x', + 'c', + '-isystem', + '/usr/include', + '-isystem', + '-isystem', + '-I', + '.', + ], + } -- cgit v1.2.3