1
0

merge plugin configuration

put everything into one place
This commit is contained in:
valeth 2016-04-29 19:58:19 +02:00
parent ffa2bec669
commit afe55434c5
44 changed files with 189 additions and 299 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@
*.old *.old
*.pyc *.pyc
.netrwhist .netrwhist
.init.vim-rplugin~

View File

@ -1,12 +0,0 @@
" python3 plugins
call remote#host#RegisterPlugin('python3', '/home/valeth/User/data/nvim/plugins/deoplete.nvim/rplugin/python3/deoplete', [
\ {'sync': 1, 'name': '_deoplete', 'opts': {}, 'type': 'function'},
\ ])
" ruby plugins
" python plugins

189
init.vim
View File

@ -244,7 +244,167 @@ augroup END
" Plugins {{{ " Plugins {{{
call plug#begin(g:vim_data_home . '/plugins') call plug#begin(g:vim_data_home . '/plugins')
runtime! plugins/**/*.vim
" deoplete {{{
" run 'UpdateRemotePlugins' first
Plug 'Shougo/deoplete.nvim'
Plug 'Shougo/neco-syntax'
Plug 'Shougo/neoinclude.vim', { 'for': ['c', 'cpp'] }
Plug 'Rip-Rip/clang_complete', { 'for': ['c', 'cpp'] }
Plug 'zchee/deoplete-jedi', { 'for': 'python' }
Plug 'eagletmt/neco-ghc', { 'for': 'haskell' }
let g:deoplete#enable_at_startup = 1
" }}}
" ctrlp.vim {{{
Plug 'kien/ctrlp.vim'
let g:ctrlp_cmd = "CtrlPBuffer"
let g:ctrlp_prompt_mappings = {
\ 'ToggleType(1)': ['<c-l>', '<c-f>', '<c-up>'],
\ 'ToggleType(-1)': ['<c-h>', '<c-b>', '<c-down>'],
\ }
" }}}
" Gundo {{{
Plug 'vim-scripts/Gundo', { 'on': 'GundoToggle' }
let g:gundo_width = 60
let g:gundo_preview_height = 30
let g:gundo_right = 1
nnoremap <silent> <leader>gu :GundoToggle<CR>
vnoremap <silent> <leader>gu <ESC>:GundoToggle<CR>
" }}}
" latexsuite {{{
set grepprg=grep\ -nH\ $*
let g:tex_flavor = "latex"
let g:tex_fold_enabled = 1
let g:Imap_UsePlaceHolders = 0
let g:Tex_ViewRule_dvi = ""
let g:Tex_ViewRule_ps = ""
let g:Tex_ViewRule_pdf = ""
let g:Tex_ViewRuleComplete_dvi = "pgrep okular.*$* || xdg-open &"
let g:Tex_ViewRuleComplete_ps = ""
let g:Tex_ViewRuleComplete_pdf = "pgrep okular.*$* || xdg-open &"
let g:Tex_DefaultTargetFormat = "pdf"
nnoremap <SID> <Plug>Tex_Help
inoremap <SID> <Plug>Tex_Help
nnoremap <SID> <Plug>IMAP_JumpForward
vnoremap <SID> <Plug>IMAP_JumpForward
"noremap <buffer> <F5> :w<CR> :!pdflatex -shell-escape "%" && { pgrep ".*%:p || xdg-open %:p:r.pdf }<CR>
" }}}
" nerdtree {{{
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'scrooloose/nerdtree-git-plugin', { 'on': 'NERDTreeToggle' }
au bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | endif
noremap <silent> <leader>nt :NERDTreeToggle<CR>
vnoremap <silent> <leader>nt <ESC>:NERDTreeToggle<CR>
" }}}
" syntastic {{{
Plug 'scrooloose/syntastic', {'for': ['c', 'cpp', 'python', 'sh']}
let g:syntastic_enable_signs = 1
let g:syntastic_check_on_open = 1
let g:syntastic_enable_highlighting = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_c_check_header = 1
let g:syntastic_cpp_remove_include_errors = 1
let g:syntastic_cpp_check_header = 1
let g:syntastic_cpp_auto_refresh_includes = 1
let g:syntastic_tex_checkers = ["false"]
let g:syntastic_error_symbol = '!'
let g:syntastic_warning_symbol = '?'
nnoremap <leader>syn :SyntasticToggleMode<CR>
vnoremap <leader>syn <ESC>:SyntasticToggleMode<CR>
" }}}
" tagbar {{{
Plug 'majutsushi/tagbar'
nnoremap <silent> <leader>tag :TagbarToggle<CR>
vnoremap <silent> <leader>tag <ESC>:TagbarToggle<CR>
" }}}
" powerline/airline {{{
Plug 'bling/vim-airline'
"set showtabline=2
set laststatus=2
set noshowmode
"let g:powerline_pycmd = "py3"
"let g:powerline_pyeval = g:powerline_pycmd . "eval"
let g:airline#extensions#tabline#enabled = 1
let g:airline_powerline_fonts = 1
let g:airline_theme='dark'
" }}}
" scratch.vim {{{
Plug 'mtth/scratch.vim', { 'on': 'Scratch' }
" allow autohiding
set hidden
let g:scratch_persistence_file = g:vim_data_home . "/scratch.vim"
" }}}
" vim-pandoc {{{
Plug 'vim-pandoc/vim-pandoc'
Plug 'vim-pandoc/vim-pandoc-syntax'
" the filetypes for which vim-pandoc should be used
let g:pandoc#filetypes#handles = [ "markdown", "pandoc" ]
" enable pandoc for markdown
let g:pandoc#filetypes#pandoc_markdown = 1
" disable the spellchecker
let g:pandoc#spell#enabled = 0
" don't use the conceal functionality
let g:pandoc#syntax#conceal#use = 0
" would you please use the defined foldcolums settings, thanks
let g:pandoc#folding#fdc = &fdc
" }}}
" vim-tmux-navigator {{{
Plug 'christoomey/vim-tmux-navigator'
" use Alt instead of Ctrl
let g:tmux_navigator_no_mappings = 1
nnoremap <silent> <M-h> :TmuxNavigateLeft<cr>
nnoremap <silent> <M-j> :TmuxNavigateDown<cr>
nnoremap <silent> <M-k> :TmuxNavigateUp<cr>
nnoremap <silent> <M-l> :TmuxNavigateRight<cr>
nnoremap <silent> <M-\> :TmuxNavigatePrevious<cr>
" }}}
Plug 'Konfekt/FastFold'
Plug 'Raimondi/delimitMate'
Plug 'vim-scripts/fish-syntax'
Plug 'valeth/sprak.vim', { 'for': 'sprak' }
Plug 'hoelzro/vim-polyglot'
Plug 'vim-scripts/gnupg'
Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
Plug 'tpope/vim-fugitive', { 'on': ['Gstatus', 'Gcommit']}
Plug 'airblade/vim-gitgutter'
Plug 'editorconfig/editorconfig-vim'
Plug 'tomasr/molokai'
Plug 'junegunn/seoul256.vim'
Plug 'NLKNguyen/papercolor-theme'
Plug 'chriskempson/tomorrow-theme'
call plug#end() call plug#end()
" }}} " }}}
@ -269,9 +429,36 @@ function! ToggleBackground()
endif endif
endfunction endfunction
function! ToggleSeoul256()
if g:colors_name == 'seoul256'
colorscheme seoul256-light
else
colorscheme seoul256
endif
endfunction
function! ToggleTomorrow()
if g:colors_name == 'Tomorrow-Night'
colorscheme Tomorrow
else
colorscheme Tomorrow-Night
endif
endfunction
"let g:molokai_original = 1
"let g:rehash256 = 1
"colorscheme molokai "colorscheme molokai
" Theme Range Default
" ----- ----- -------
" seoul256 233 - 239 237
" seoul256-light 252 - 256 253
let g:seoul256_background = 237
let g:seoul256_light_background = 254
colorscheme seoul256 colorscheme seoul256
"colorscheme PaperColor "colorscheme PaperColor
"colorscheme Tomorrow-Night "colorscheme Tomorrow-Night
" }}} " }}}

View File

@ -1 +0,0 @@
Plug 'Konfekt/FastFold'

View File

@ -1 +0,0 @@
"Plug 'jiangmiao/auto-pairs'

View File

@ -1 +0,0 @@
Plug 'Rip-Rip/clang_complete', { 'for': ['c', 'cpp'] }

View File

@ -1 +0,0 @@
"Plug 'godlygeek/csapprox'

View File

@ -1,7 +0,0 @@
Plug 'kien/ctrlp.vim'
let g:ctrlp_cmd = "CtrlPBuffer"
let g:ctrlp_prompt_mappings = {
\ 'ToggleType(1)': ['<c-l>', '<c-f>', '<c-up>'],
\ 'ToggleType(-1)': ['<c-h>', '<c-b>', '<c-down>'],
\ }

View File

@ -1 +0,0 @@
"Plug 'zchee/deoplete-clang', { 'for': ['c', 'cpp'] }

View File

@ -1 +0,0 @@
Plug 'zchee/deoplete-jedi', { 'for': 'python' }

View File

@ -1,7 +0,0 @@
function! DoRemote(arg)
UpdateRemotePlugins
endfunction
Plug 'Shougo/deoplete.nvim', { 'do': function('DoRemote') }
let g:deoplete#enable_at_startup = 1

View File

@ -1 +0,0 @@
Plug 'vim-scripts/fish-syntax'

View File

@ -1 +0,0 @@
Plug 'vim-scripts/gnupg'

View File

@ -1,10 +0,0 @@
if v:version >= 703
Plug 'vim-scripts/Gundo', { 'on': 'GundoToggle' }
endif
let g:gundo_width = 60
let g:gundo_preview_height = 30
let g:gundo_right = 1
nnoremap <silent> <leader>gu :GundoToggle<CR>
vnoremap <silent> <leader>gu <ESC>:GundoToggle<CR>

View File

@ -1,5 +0,0 @@
"Plug 'lukerandall/haskellmode-vim', { 'for': 'haskell' }
let g:haddock_browser="/usr/bin/firefox"
"au BufEnter *.hs compiler ghc

View File

@ -1,18 +0,0 @@
set grepprg=grep\ -nH\ $*
let g:tex_flavor = "latex"
let g:tex_fold_enabled = 1
let g:Imap_UsePlaceHolders = 0
let g:Tex_ViewRule_dvi = ""
let g:Tex_ViewRule_ps = ""
let g:Tex_ViewRule_pdf = ""
let g:Tex_ViewRuleComplete_dvi = "pgrep okular.*$* || xdg-open &"
let g:Tex_ViewRuleComplete_ps = ""
let g:Tex_ViewRuleComplete_pdf = "pgrep okular.*$* || xdg-open &"
let g:Tex_DefaultTargetFormat = "pdf"
nnoremap <SID> <Plug>Tex_Help
inoremap <SID> <Plug>Tex_Help
nnoremap <SID> <Plug>IMAP_JumpForward
vnoremap <SID> <Plug>IMAP_JumpForward
"noremap <buffer> <F5> :w<CR> :!pdflatex -shell-escape "%" && { pgrep ".*%:p || xdg-open %:p:r.pdf }<CR>

View File

@ -1,4 +0,0 @@
Plug 'tomasr/molokai'
"let g:molokai_original = 1
let g:rehash256 = 1

View File

@ -1 +0,0 @@
Plug 'eagletmt/neco-ghc', { 'for': 'haskell' }

View File

@ -1 +0,0 @@
Plug 'Shougo/neco-syntax'

View File

@ -1 +0,0 @@
Plug 'Shougo/neoinclude.vim', { 'for': ['c', 'cpp'] }

View File

@ -1 +0,0 @@
"Plug 'scrooloose/nerdcommenter'

View File

@ -1,6 +0,0 @@
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'scrooloose/nerdtree-git-plugin', { 'on': 'NERDTreeToggle' }
au bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | endif
noremap <silent> <leader>nt :NERDTreeToggle<CR>
vnoremap <silent> <leader>nt <ESC>:NERDTreeToggle<CR>

View File

@ -1 +0,0 @@
Plug 'NLKNguyen/papercolor-theme'

View File

@ -1,8 +0,0 @@
"set noshowmode
"if has('windows')
"set showtabline=2
"endif
let g:powerline_pycmd = "py3"
let g:powerline_pyeval = g:powerline_pycmd . "eval"

View File

@ -1,6 +0,0 @@
Plug 'mtth/scratch.vim'
" allow autohiding
set hidden
let g:scratch_persistence_file = g:vim_data_home . "/scratch.vim"

View File

@ -1,27 +0,0 @@
" _____ _ ___ ___ ___ "
" | __|___ ___ _ _| |_ | _| _| "
" |__ | -_| . | | | | _|_ | . | "
" |_____|___|___|___|_|___|___|___|.vim "
"
" seoul256.vim is a low-contrast Vim color scheme based on Seoul Colors.
" Works on 256-color terminal or on GVim
" by Junegunn Choi (https://github.com/junegunn/seoul256.vim)
"
" Theme Range Default
" ----- ----- -------
" seoul256 233 - 239 237
" seoul256-light 252 - 256 253
Plug 'junegunn/seoul256.vim'
let g:seoul256_background = 237
let g:seoul256_light_background = 254
function! ToggleSeoul256()
if g:colors_name == 'seoul256'
colorscheme seoul256-light
else
colorscheme seoul256
endif
endfunction

View File

@ -1 +0,0 @@
Plug 'valeth/sprak.vim', { 'for': 'sprak' }

View File

@ -1,17 +0,0 @@
Plug 'scrooloose/syntastic', {'for': ['c', 'cpp', 'python', 'sh']}
let g:syntastic_enable_signs = 1
let g:syntastic_check_on_open = 1
let g:syntastic_enable_highlighting = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_c_check_header = 1
let g:syntastic_cpp_remove_include_errors = 1
let g:syntastic_cpp_check_header = 1
let g:syntastic_cpp_auto_refresh_includes = 1
let g:syntastic_tex_checkers = ["false"]
let g:syntastic_error_symbol = '!'
let g:syntastic_warning_symbol = '?'
nnoremap <leader>syn :SyntasticToggleMode<CR>
vnoremap <leader>syn <ESC>:SyntasticToggleMode<CR>

View File

@ -1,4 +0,0 @@
Plug 'majutsushi/tagbar'
nnoremap <silent> <leader>tag :TagbarToggle<CR>
vnoremap <silent> <leader>tag <ESC>:TagbarToggle<CR>

View File

@ -1,10 +0,0 @@
Plug 'chriskempson/tomorrow-theme'
function! ToggleTomorrow()
if g:colors_name == 'Tomorrow-Night'
colorscheme Tomorrow
else
colorscheme Tomorrow-Night
endif
endfunction

View File

@ -1 +0,0 @@
Plug 'SirVer/ultisnips'

View File

@ -1,8 +0,0 @@
Plug 'bling/vim-airline'
let g:airline#extensions#tabline#enabled = 1
let g:airline_powerline_fonts = 1
let g:airline_theme='dark'
set laststatus=2
set noshowmode

View File

@ -1 +0,0 @@
Plug 'tpope/vim-commentary'

View File

@ -1 +0,0 @@
Plug 'editorconfig/editorconfig-vim'

View File

@ -1 +0,0 @@
Plug 'tpope/vim-fugitive'

View File

@ -1 +0,0 @@
Plug 'airblade/vim-gitgutter'

View File

@ -1 +0,0 @@
"Plug 'Twinside/vim-haskellConceal', { 'for': 'haskell' }

View File

@ -1 +0,0 @@
"Plug 'Twinside/vim-hoogle', { 'for': 'haskell' }

View File

@ -1,17 +0,0 @@
Plug 'vim-pandoc/vim-pandoc'
Plug 'vim-pandoc/vim-pandoc-syntax'
" the filetypes for which vim-pandoc should be used
let g:pandoc#filetypes#handles = [ "markdown", "pandoc" ]
" enable pandoc for markdown
let g:pandoc#filetypes#pandoc_markdown = 1
" disable the spellchecker
let g:pandoc#spell#enabled = 0
" don't use the conceal functionality
let g:pandoc#syntax#conceal#use = 0
" would you please use the defined foldcolums settings, thanks
let g:pandoc#folding#fdc = &fdc

View File

@ -1 +0,0 @@
Plug 'hoelzro/vim-polyglot'

View File

@ -1 +0,0 @@
Plug 'honza/vim-snippets'

View File

@ -1,10 +0,0 @@
Plug 'christoomey/vim-tmux-navigator'
" use Alt instead of Ctrl
let g:tmux_navigator_no_mappings = 1
nnoremap <silent> <M-h> :TmuxNavigateLeft<cr>
nnoremap <silent> <M-j> :TmuxNavigateDown<cr>
nnoremap <silent> <M-k> :TmuxNavigateUp<cr>
nnoremap <silent> <M-l> :TmuxNavigateRight<cr>
nnoremap <silent> <M-\> :TmuxNavigatePrevious<cr>

View File

@ -1,7 +0,0 @@
"Plug 'Valloric/YouCompleteMe', {'do': 'python2 install.py --clang-completer' }
let g:ycm_global_ycm_extra_conf = g:vim_config_home . "/plugins/youcompleteme/ycm_extra_conf.py"
let g:ycm_autoclose_preview_window_after_completion = 1
let g:ycm_register_as_syntastic_checker = 1
let g:ycm_server_keep_logfile = 1

View File

@ -1,92 +0,0 @@
import os
import ycm_core
# 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
#
# 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 = ""
flags = [ "-Wall", "-Werror", "-std=c11" ]
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
}