commit a90de77b27fb82322b95fa6c2e6bdcd53d7e5c04
parent 7ce613afdf94d51be2f367ebfb8cff6d67580835
Author: finwo <finwo@pm.me>
Date: Mon, 20 May 2019 16:07:23 +0200
Added deoplete settings & php support
Diffstat:
| M | neovim/home/.vimrc | | | 161 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- |
1 file changed, 159 insertions(+), 2 deletions(-)
diff --git a/neovim/home/.vimrc b/neovim/home/.vimrc
@@ -12,6 +12,7 @@ Plug 'editorconfig/editorconfig-vim'
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim'
Plug 'morhetz/gruvbox'
+Plug 'padawan-php/deoplete-padawan', { 'do': 'composer install' }
Plug 'qpkorr/vim-bufkill'
Plug 'scrooloose/nerdtree'
Plug 'sheerun/vim-polyglot'
@@ -60,8 +61,164 @@ set visualbell " bell = blink
set wildmenu " visual command autocomplete
set wildmode=longest,full " autocomplete as much as you can
-set wrap linebreak " enable line wrapping
-set showbreak=" " " show by indent
+set wrap linebreak " enable line wrapping
+set showbreak=" " " show by indent
+set list " show whitespace
+set listchars=nbsp:⦸ " CIRCLED REVERSE SOLIDUS (U+29B8, UTF-8: E2 A6 B8)
+set listchars+=tab:▷┅ " WHITE RIGHT-POINTING TRIANGLE (U+25B7, UTF-8: E2 96 B7)
+ " + BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL (U+2505, UTF-8: E2 94 85)
+set listchars+=extends:» " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK (U+00BB, UTF-8: C2 BB)
+set listchars+=precedes:« " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK (U+00AB, UTF-8: C2 AB)
+set listchars+=trail:• " BULLET (U+2022, UTF-8: E2 80 A2)
+
+
+
+" Deoplete ------------------------------------------------------------------{{{
+
+" enable deoplete
+ let g:deoplete#enable_at_startup = 1
+ let g:deoplete#auto_complete_delay = 0
+ let g:echodoc_enable_at_startup=1
+ set splitbelow
+ set completeopt+=menuone,noinsert,noselect
+ " set completeopt-=preview
+ autocmd CompleteDone * pclose
+
+ function! Multiple_cursors_before()
+ let b:deoplete_disable_auto_complete=2
+ endfunction
+ function! Multiple_cursors_after()
+ let b:deoplete_disable_auto_complete=0
+ endfunction
+ let g:deoplete#file#enable_buffer_path=1
+ call deoplete#custom#source('buffer', 'mark', 'ℬ')
+ call deoplete#custom#source('tern', 'mark', '')
+ call deoplete#custom#source('padawan', 'mark', "\ue608")
+ call deoplete#custom#source('omni', 'mark', '⌾')
+ call deoplete#custom#source('file', 'mark', '')
+ " call deoplete#custom#source('jedi', 'mark', '')
+ call deoplete#custom#source('neosnippet', 'mark', '')
+ call deoplete#custom#source('LanguageClient', 'mark', '')
+ call deoplete#custom#source('typescript', 'rank', 630)
+ " call deoplete#custom#source('_', 'matchers', ['matcher_cpsm'])
+ " call deoplete#custom#source('_', 'sorters', [])
+ let g:deoplete#omni_patterns = {
+ \ 'html': '',
+ \ 'css': '',
+ \ 'scss': ''
+ \}
+ function! Preview_func()
+ if &pvw
+ setlocal nonumber norelativenumber
+ endif
+ endfunction
+ autocmd WinEnter * call Preview_func()
+ let g:deoplete#ignore_sources = {'_': ['around', 'buffer' ]}
+
+
+
+" Whether to include the types of the completions in the result data. Default: 0
+let g:deoplete#sources#ternjs#types = 1
+
+" Whether to include the distance (in scopes for variables, in prototypes for
+" properties) between the completions and the origin position in the result
+" data. Default: 0
+let g:deoplete#sources#ternjs#depths = 1
+
+" Whether to include documentation strings (if found) in the result data.
+" Default: 0
+let g:deoplete#sources#ternjs#docs = 1
+
+" When on, only completions that match the current word at the given point will
+" be returned. Turn this off to get all results, so that you can filter on the
+" client side. Default: 1
+let g:deoplete#sources#ternjs#filter = 0
+
+" Whether to use a case-insensitive compare between the current word and
+" potential completions. Default 0
+let g:deoplete#sources#ternjs#case_insensitive = 1
+
+" When completing a property and no completions are found, Tern will use some
+" heuristics to try and return some properties anyway. Set this to 0 to
+" turn that off. Default: 1
+let g:deoplete#sources#ternjs#guess = 0
+
+" Determines whether the result set will be sorted. Default: 1
+let g:deoplete#sources#ternjs#sort = 1
+
+" When disabled, only the text before the given position is considered part of
+" the word. When enabled (the default), the whole variable name that the cursor
+" is on will be included. Default: 1
+let g:deoplete#sources#ternjs#expand_word_forward = 0
+
+" Whether to ignore the properties of Object.prototype unless they have been
+" spelled out by at least two characters. Default: 1
+let g:deoplete#sources#ternjs#omit_object_prototype = 0
+
+" Whether to include JavaScript keywords when completing something that is not
+" a property. Default: 0
+let g:deoplete#sources#ternjs#include_keywords = 1
+
+" If completions should be returned when inside a literal. Default: 1
+let g:deoplete#sources#ternjs#in_literal = 0
+
+
+"Add extra filetypes
+let g:deoplete#sources#ternjs#filetypes = [
+ \ 'jsx',
+ \ 'javascript.jsx',
+ \ 'vue',
+ \ '...'
+ \ ]
+
+
+
+
+
+
+" let g:deoplete#enable_at_startup = 1
+" if !exists('g:deoplete#omni#input_patterns')
+" let g:deoplete#omni#input_patterns = {}
+" endif
+" " let g:deoplete#disable_auto_complete = 1
+" autocmd InsertLeave,CompleteDone * if pumvisible() == 0 | pclose | endif
+
+
+" " omnifuncs
+" augroup omnifuncs
+" autocmd!
+" autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
+" autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
+" autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
+" autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
+" autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
+" augroup end
+" " tern
+" if exists('g:plugs["tern_for_vim"]')
+" let g:tern_show_argument_hints = 'on_hold'
+" let g:tern_show_signature_in_pum = 1
+" autocmd FileType javascript setlocal omnifunc=tern#Complete
+" endif
+
+" deoplete tab-complete
+inoremap <expr><tab> pumvisible() ? "\<c-n>" : "\<tab>"
+" tern
+" autocmd FileType javascript nnoremap <silent> <buffer> gb :TernDef<CR>
+
+
+
+
+
+
+
+ " let g:deoplete#enable_debug = 1
+ " call deoplete#enable_logging('DEBUG', 'deoplete.log')
+ " call deoplete#custom#source('typescript', 'is_debug_enabled', 1)
+"}}}
+
+
+
+
set cursorline " highlight current line
set number " show line numbers