Adopt for vscode neovim plugin
This commit is contained in:
parent
2870ce61ee
commit
6db33686b5
289
init.vim
289
init.vim
@ -1,42 +1,43 @@
|
||||
let HOSTNAME = substitute(system('hostname'), '\n', '', '')
|
||||
" =============Plugins==================
|
||||
call plug#begin()
|
||||
Plug 'morhetz/gruvbox'
|
||||
Plug 'Shougo/denite.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'chemzqm/denite-git'
|
||||
Plug 'tomtom/tcomment_vim'
|
||||
Plug 'bling/vim-airline'
|
||||
Plug 'vim-airline/vim-airline-themes'
|
||||
" Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'tpope/vim-fugitive'
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
Plug 'SirVer/ultisnips'
|
||||
Plug 'honza/vim-snippets'
|
||||
Plug 'vim-scripts/a.vim'
|
||||
Plug 'luochen1990/rainbow'
|
||||
if has("win32")
|
||||
if !exists('g:vscode')
|
||||
call plug#begin()
|
||||
Plug 'morhetz/gruvbox'
|
||||
Plug 'Shougo/denite.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'chemzqm/denite-git'
|
||||
Plug 'tomtom/tcomment_vim'
|
||||
Plug 'bling/vim-airline'
|
||||
Plug 'vim-airline/vim-airline-themes'
|
||||
" Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'tpope/vim-fugitive'
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
Plug 'SirVer/ultisnips'
|
||||
Plug 'honza/vim-snippets'
|
||||
Plug 'vim-scripts/a.vim'
|
||||
Plug 'luochen1990/rainbow'
|
||||
if has("win32")
|
||||
Plug 'autozimu/LanguageClient-neovim', {
|
||||
\ 'branch': 'next',
|
||||
\ 'do': 'powershell -executionpolicy bypass -File install.ps1',
|
||||
\ }
|
||||
else
|
||||
else
|
||||
Plug 'autozimu/LanguageClient-neovim', {
|
||||
\ 'branch': 'next',
|
||||
\ 'do': 'bash install.sh',
|
||||
\ }
|
||||
end
|
||||
Plug 'Shougo/echodoc.vim'
|
||||
Plug 'arakashic/chromatica.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'neoclide/coc.nvim', {'do': { -> coc#util#install()}}
|
||||
Plug 'neoclide/coc-json', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-python', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-yaml', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-highlight', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-snippets', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-lists', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'kkoomen/vim-doge'
|
||||
call plug#end()
|
||||
|
||||
end
|
||||
Plug 'Shougo/echodoc.vim'
|
||||
Plug 'arakashic/chromatica.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'neoclide/coc.nvim', {'do': { -> coc#util#install()}}
|
||||
Plug 'neoclide/coc-json', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-python', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-yaml', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-highlight', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-snippets', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'neoclide/coc-lists', {'do': 'yarn install --frozen-lockfile'}
|
||||
Plug 'kkoomen/vim-doge'
|
||||
call plug#end()
|
||||
endif
|
||||
" =============Paths=====================
|
||||
exec "source " . stdpath('config') . "/" . hostname() . ".vim"
|
||||
" =============Settings==================
|
||||
@ -89,51 +90,61 @@ vnoremap <leader>P "+P
|
||||
autocmd BufEnter,FocusGained * checktime " Check for file modifications
|
||||
|
||||
" =================Look and feel=======================
|
||||
set termguicolors
|
||||
set background=dark
|
||||
colorscheme gruvbox
|
||||
if !exists('g:vscode')
|
||||
set termguicolors
|
||||
set background=dark
|
||||
colorscheme gruvbox
|
||||
endif
|
||||
" =================Filetypes===========================
|
||||
au BufRead,BufNewFile *.simvis set filetype=xml
|
||||
au BufRead,BufNewFile *.simcfg set filetype=cfg
|
||||
au BufRead,BufNewFile *.simcon set filetype=cfg
|
||||
au BufRead,BufNewFile *.simudex set filetype=cfg
|
||||
au BufRead,BufNewFile Jenkinsfile* set filetype=groovy
|
||||
autocmd BufNewFile,BufRead *.manifest set filetype=xml
|
||||
autocmd BufNewFile,BufReadPre SConstruct set filetype=python
|
||||
autocmd BufNewFile,BufReadPre SConscript set filetype=python
|
||||
autocmd FileType xml nnoremap <F10> :% !xmllint.exe "%" --format<CR>
|
||||
autocmd FileType json syntax match Comment +\/\/.\+$+
|
||||
if !exists('g:vscode')
|
||||
au BufRead,BufNewFile *.simvis set filetype=xml
|
||||
au BufRead,BufNewFile *.simcfg set filetype=cfg
|
||||
au BufRead,BufNewFile *.simcon set filetype=cfg
|
||||
au BufRead,BufNewFile *.simudex set filetype=cfg
|
||||
au BufRead,BufNewFile Jenkinsfile* set filetype=groovy
|
||||
autocmd BufNewFile,BufRead *.manifest set filetype=xml
|
||||
autocmd BufNewFile,BufReadPre SConstruct set filetype=python
|
||||
autocmd BufNewFile,BufReadPre SConscript set filetype=python
|
||||
autocmd FileType xml nnoremap <F10> :% !xmllint.exe "%" --format<CR>
|
||||
autocmd FileType json syntax match Comment +\/\/.\+$+
|
||||
endif
|
||||
" =================Windows and Tabs====================
|
||||
" Open a new tab with F2
|
||||
map <silent> <F2> <Esc>:tabnew <CR><ESC>:Explore<CR>
|
||||
imap <silent> <F2> <Esc>:tabnew <CR><ESC>:Explore<CR>
|
||||
map <silent> <S-Right> :tabnext<CR>
|
||||
map <silent> <S-Left> :tabprevious<CR>
|
||||
nmap <silent> <A-Up> :wincmd k<CR>
|
||||
nmap <silent> <A-Down> :wincmd j<CR>
|
||||
nmap <silent> <A-Left> :wincmd h<CR>
|
||||
nmap <silent> <A-Right> :wincmd l<CR>
|
||||
" Open a new vertical split window with Ctrl - F2
|
||||
map <silent> <C-F2> <Esc>:vsplit .<CR>
|
||||
imap <silent> <C-F2> <Esc>:vsplit .<CR>
|
||||
" Open a new horizontal split window with Shift - F2
|
||||
map <silent> <S-F2> <Esc>:split .<CR>
|
||||
imap <silent> <S-F2> <Esc>:split .<CR>
|
||||
if !exists('g:vscode')
|
||||
" Open a new tab with F2
|
||||
map <silent> <F2> <Esc>:tabnew <CR><ESC>:Explore<CR>
|
||||
imap <silent> <F2> <Esc>:tabnew <CR><ESC>:Explore<CR>
|
||||
map <silent> <S-Right> :tabnext<CR>
|
||||
map <silent> <S-Left> :tabprevious<CR>
|
||||
nmap <silent> <A-Up> :wincmd k<CR>
|
||||
nmap <silent> <A-Down> :wincmd j<CR>
|
||||
nmap <silent> <A-Left> :wincmd h<CR>
|
||||
nmap <silent> <A-Right> :wincmd l<CR>
|
||||
" Open a new vertical split window with Ctrl - F2
|
||||
map <silent> <C-F2> <Esc>:vsplit .<CR>
|
||||
imap <silent> <C-F2> <Esc>:vsplit .<CR>
|
||||
" Open a new horizontal split window with Shift - F2
|
||||
map <silent> <S-F2> <Esc>:split .<CR>
|
||||
imap <silent> <S-F2> <Esc>:split .<CR>
|
||||
endif
|
||||
|
||||
" ========================Codestyle========================
|
||||
set tabstop=2 " Size of a tab
|
||||
set shiftwidth=2 " Die Einrückung
|
||||
set expandtab "Tabs get spaces when inserting
|
||||
set softtabstop=0
|
||||
"set autoindent
|
||||
"alignment ansi style (astyle)
|
||||
set cindent " C-Code Style / Automatische Einrückung
|
||||
set cinoptions=(0,u0,U0,:0,=0 "Einrückung wie bei astyle: :0 (switch), =0 (case), (0 (unclosed parentheses),
|
||||
set modeline "Read indent comments (at end of file)
|
||||
if !exists('g:vscode')
|
||||
set tabstop=2 " Size of a tab
|
||||
set shiftwidth=2 " Die Einrückung
|
||||
set expandtab "Tabs get spaces when inserting
|
||||
set softtabstop=0
|
||||
"set autoindent
|
||||
"alignment ansi style (astyle)
|
||||
set cindent " C-Code Style / Automatische Einrückung
|
||||
set cinoptions=(0,u0,U0,:0,=0 "Einrückung wie bei astyle: :0 (switch), =0 (case), (0 (unclosed parentheses),
|
||||
set modeline "Read indent comments (at end of file)
|
||||
endif
|
||||
|
||||
" ======================shortcut=======================
|
||||
map <C-S> <ESC>:wa<CR>
|
||||
imap <C-S> <ESC>:wa<CR>
|
||||
if !exists('g:vscode')
|
||||
map <C-S> <ESC>:wa<CR>
|
||||
imap <C-S> <ESC>:wa<CR>
|
||||
endif
|
||||
"Jump to last modification line
|
||||
map ö `.
|
||||
nnoremap ü :let @/='\<<C-R>=expand("<cword>")<CR>\>'<CR>:set hls<CR>
|
||||
@ -150,48 +161,55 @@ vnoremap < <gv
|
||||
vnoremap > >gv
|
||||
|
||||
" ===========Linewrap and jumping=============================
|
||||
setlocal wrap linebreak nolist
|
||||
set virtualedit=
|
||||
setlocal display+=lastline
|
||||
nnoremap <silent> k gk
|
||||
nnoremap <silent> j gj
|
||||
nnoremap <silent> 0 g0
|
||||
nnoremap <silent> $ g$
|
||||
nnoremap <silent> <Up> gk
|
||||
nnoremap <silent> <Down> gj
|
||||
nnoremap <silent> <Home> g<Home>
|
||||
nnoremap <silent> <End> g<End>
|
||||
vnoremap <silent> <Up> gk
|
||||
vnoremap <silent> <Down> gj
|
||||
vnoremap <silent> <Home> g<Home>
|
||||
vnoremap <silent> <End> g<End>
|
||||
if !exists('g:vscode')
|
||||
setlocal wrap linebreak nolist
|
||||
set virtualedit=
|
||||
setlocal display+=lastline
|
||||
nnoremap <silent> k gk
|
||||
nnoremap <silent> j gj
|
||||
nnoremap <silent> 0 g0
|
||||
nnoremap <silent> $ g$
|
||||
nnoremap <silent> <Up> gk
|
||||
nnoremap <silent> <Down> gj
|
||||
nnoremap <silent> <Home> g<Home>
|
||||
nnoremap <silent> <End> g<End>
|
||||
vnoremap <silent> <Up> gk
|
||||
vnoremap <silent> <Down> gj
|
||||
vnoremap <silent> <Home> g<Home>
|
||||
vnoremap <silent> <End> g<End>
|
||||
endif
|
||||
|
||||
" =================Comments============================
|
||||
map <C-C> :TComment<CR>
|
||||
if !exists('g:vscode')
|
||||
map <C-C> :TComment<CR>
|
||||
endif
|
||||
|
||||
" =========================Deoplete====================
|
||||
let g:deoplete#enable_at_startup = 1
|
||||
let g:deoplete#auto_complete_start_length = 1
|
||||
let g:deoplete#enable_smart_case = 1
|
||||
if !exists('g:vscode')
|
||||
let g:deoplete#enable_at_startup = 1
|
||||
let g:deoplete#auto_complete_start_length = 1
|
||||
let g:deoplete#enable_smart_case = 1
|
||||
endif
|
||||
" =====================A======================
|
||||
" Function for switching between header and c* files
|
||||
map <F5> :wa <CR> :A<CR>
|
||||
imap <F5> <Esc>:wa<CR>:A<CR>i
|
||||
map <C-F5> :AV<CR>
|
||||
imap <C-F5> <Esc>:AV<CR>i
|
||||
map <S-F5> :AT<CR>
|
||||
imap <S-F5> <Esc>:AT<CR>i
|
||||
let g:alternateSearchPath = 'sfr:../source,sfr:../src,sfr:../include,../../include,sfr:../inc,sfr:../h'
|
||||
" Dont create the file if the .cpp or .h is not found
|
||||
let g:alternateNoDefaultAlternate = 1
|
||||
if !exists('g:vscode')
|
||||
" Function for switching between header and c* files
|
||||
map <F5> :wa <CR> :A<CR>
|
||||
imap <F5> <Esc>:wa<CR>:A<CR>i
|
||||
map <C-F5> :AV<CR>
|
||||
imap <C-F5> <Esc>:AV<CR>i
|
||||
map <S-F5> :AT<CR>
|
||||
imap <S-F5> <Esc>:AT<CR>i
|
||||
let g:alternateSearchPath = 'sfr:../source,sfr:../src,sfr:../include,../../include,sfr:../inc,sfr:../h'
|
||||
" Dont create the file if the .cpp or .h is not found
|
||||
let g:alternateNoDefaultAlternate = 1
|
||||
|
||||
" ===================UltiSnips================
|
||||
let g:UltiSnipsExpandTrigger = "<Plug>(ultisnips_expand)"
|
||||
let g:UltiSnipsJumpForwardTrigger = "<Tab>"
|
||||
let g:UltiSnipsJumpBackwardTrigger = "<S-Tab>"
|
||||
" ===========RAINBOW====================
|
||||
let g:rainbow_active = 1
|
||||
let g:rainbow_conf = {
|
||||
" ===================UltiSnips================
|
||||
let g:UltiSnipsExpandTrigger = "<Plug>(ultisnips_expand)"
|
||||
let g:UltiSnipsJumpForwardTrigger = "<Tab>"
|
||||
let g:UltiSnipsJumpBackwardTrigger = "<S-Tab>"
|
||||
" ===========RAINBOW====================
|
||||
let g:rainbow_active = 1
|
||||
let g:rainbow_conf = {
|
||||
\ 'guifgs': ['lightblue', 'darkorange3', 'seagreen3', 'firebrick'],
|
||||
\ 'ctermfgs': ['lightblue', 'lightyellow', 'lightcyan', 'lightmagenta'],
|
||||
\ 'operators': '_,_',
|
||||
@ -223,46 +241,53 @@ let g:rainbow_conf = {
|
||||
\ 'css': 0,
|
||||
\ }
|
||||
\}
|
||||
|
||||
endif
|
||||
" ===================LanguageServer==================
|
||||
if has("win32")
|
||||
if !exists('g:vscode')
|
||||
if has("win32")
|
||||
let g:LanguageClient_serverCommands = {
|
||||
\ 'cpp': ['clangd'],
|
||||
\ }
|
||||
else
|
||||
else
|
||||
let g:LanguageClient_serverCommands = {
|
||||
\ 'cpp': ['cquery',
|
||||
\ '--log-file=/tmp/cq.log',
|
||||
\ '--init={"cacheDirectory":"/tmp/cquery/"}']
|
||||
\ }
|
||||
end
|
||||
nnoremap <silent> K :call LanguageClient#textDocument_hover()<CR>
|
||||
nnoremap <silent> gd :call LanguageClient#textDocument_definition({'gotoCmd': 'tabedit'})<CR>
|
||||
nnoremap <silent> <F3> :call LanguageClient_contextMenu()<CR>
|
||||
vnoremap <silent> <F3> :call LanguageClient_contextMenu()<CR>
|
||||
nnoremap <silent> <F6> :call LanguageClient_textDocument_documentSymbol()<CR>
|
||||
end
|
||||
nnoremap <silent> K :call LanguageClient#textDocument_hover()<CR>
|
||||
nnoremap <silent> gd :call LanguageClient#textDocument_definition({'gotoCmd': 'tabedit'})<CR>
|
||||
nnoremap <silent> <F3> :call LanguageClient_contextMenu()<CR>
|
||||
vnoremap <silent> <F3> :call LanguageClient_contextMenu()<CR>
|
||||
nnoremap <silent> <F6> :call LanguageClient_textDocument_documentSymbol()<CR>
|
||||
|
||||
let g:LanguageClient_hasClientSupport = 0
|
||||
" ===================EchoDoc=========================
|
||||
set cmdheight=2
|
||||
let g:echodoc#enable_at_startup = 1
|
||||
let g:echodoc#type = 'signature'
|
||||
let g:LanguageClient_hasClientSupport = 0
|
||||
" ===================EchoDoc=========================
|
||||
set cmdheight=2
|
||||
let g:echodoc#enable_at_startup = 1
|
||||
let g:echodoc#type = 'signature'
|
||||
endif
|
||||
" ===================FZF=============================
|
||||
nnoremap <C-P> :FZF<CR>
|
||||
let g:fzf_action = {
|
||||
if !exists('g:vscode')
|
||||
nnoremap <C-P> :FZF<CR>
|
||||
let g:fzf_action = {
|
||||
\ 'enter': 'tab split',
|
||||
\ 'ctrl-x': 'split',
|
||||
\ 'ctrl-v': 'vsplit' }
|
||||
endif
|
||||
" ===================Chromatica======================
|
||||
let g:chromatica#enable_at_startup=1
|
||||
if !exists('g:vscode')
|
||||
let g:chromatica#enable_at_startup=1
|
||||
endif
|
||||
|
||||
" ===================COC=============================
|
||||
inoremap <silent><expr> <c-space> coc#refresh()
|
||||
autocmd CursorHold * silent call CocActionAsync('highlight')
|
||||
set updatetime=500 " After ms should CursorHold trigger
|
||||
" Remap for format selected region
|
||||
vmap <leader>f <Plug>(coc-format-selected)
|
||||
nmap <leader>f <Plug>(coc-format-selected)
|
||||
if !exists('g:vscode')
|
||||
inoremap <silent><expr> <c-space> coc#refresh()
|
||||
autocmd CursorHold * silent call CocActionAsync('highlight')
|
||||
set updatetime=500 " After ms should CursorHold trigger
|
||||
" Remap for format selected region
|
||||
vmap <leader>f <Plug>(coc-format-selected)
|
||||
nmap <leader>f <Plug>(coc-format-selected)
|
||||
|
||||
nmap <leader>r <Plug>(coc-rename)
|
||||
" Use `:Format` for format current buffer
|
||||
@ -298,8 +323,10 @@ endfunction
|
||||
|
||||
nnoremap <silent> <space>y :<C-u>CocList -A --normal yank<cr>
|
||||
" ===================Denite==========================
|
||||
call denite#custom#map('insert', '<Down>', '<denite:move_to_next_line>', 'noremap')
|
||||
call denite#custom#map('insert', '<Up>', '<denite:move_to_previous_line>', 'noremap')
|
||||
if !exists('g:vscode')
|
||||
call denite#custom#map('insert', '<Down>', '<denite:move_to_next_line>', 'noremap')
|
||||
call denite#custom#map('insert', '<Up>', '<denite:move_to_previous_line>', 'noremap')
|
||||
|
||||
nnoremap <C-P> :Denite -default-action=tabopen file/rec<CR>
|
||||
nnoremap <C-B> :Denite buffer<CR>
|
||||
nnoremap <C-P> :Denite -default-action=tabopen file/rec<CR>
|
||||
nnoremap <C-B> :Denite buffer<CR>
|
||||
endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user