Skip to content

Automatic Signature Help? #7

Open
@PhantomCloak

Description

@PhantomCloak

as I know there is no such a thing automatic signature help in vim-sharpenup and I wanted to make it work for much like the full IDE completion experience, I got so far to make this work with some nasty workaround but stuck end of it, workaround function somewhat works out but the signature help pop-up prevents the suggestion pop-up to show up so how can I solve or achieve this kind a behaviour?

The Result:
ezgif com-gif-maker-3

That's the workaround that I made ( it simplified sake of brevity )

call plug#begin(has('nvim') ? stdpath('data') . '/plugged' : '~/.vim/plugged')

Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'OmniSharp/omnisharp-vim'

Plug 'nickspoons/vim-sharpenup'
Plug 'antoinemadec/FixCursorHold.nvim' " for not triggering CursorHold event in nvim

call plug#end()

autocmd CursorHoldI *.cs call s:checkForLuanchSignatureHelp()
autocmd CursorHold *.cs call s:checkForLuanchSignatureHelp()

let g:last_char = 'x'
function! s:checkForLuanchSignatureHelp() abort
    let curChar = strcharpart(strpart(getline('.'), col('.') - 2), 0, 1) " get previous character under cursor

    if(g:last_char == curChar) " check if same character checked in previous frame 
	return
    endif

    if (curChar == '(') " if previous character is ( execute signature help
	execute "normal! \<Plug>(omnisharp_signature_help)"
    endif

    let g:last_char = curChar
endfunction

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions