Add LspPeekDefinition (#412)

* Add LspPeekDefinition

* Add documentation

* Add lsp-peek-definition mapping to documentation

* Add link to Vim preview-window help

* Rewrite LspPeekDefinition using preview window

* Implement peek for Vim popup window

* Make LspPeekDefinition work in Neovim

* Support align in Neovim

* Fix linter errors

* Extract duplicate code to s:align_preview function

* Merge setlocal settings in one line

* Remove suppress_close

* Clean up cursor movement for preview window

* Move Neovim cursor code to separate function

* Allow customising peek alignment

* Move Vim alignment code to separate function

* Implement Vim alignment of popup window

* Cleanup

* Remove extraneous lines

* Move set_cursor logic

* Move scrolloff setting

* Make function calls a bit more consistent

* Vim popup window fixes

* Remove extraneous call

* Fix Vim alignment

* Remove hardcoded width

* Add abort to closure function

* Fix artifacts

* Fix wrong height if popup above cursor

* Add remaining Peek commands

Add LspPeekImplementation, LspPeekTypeDefinition and LspPeekDeclaration.

* Fix wrong positioning of Vim popup
This commit is contained in:
Thomas Faingnaert
2019-07-21 18:40:19 +02:00
committed by Prabir Shrestha
parent 668405756b
commit 813ea77b91
7 changed files with 210 additions and 33 deletions

View File

@@ -6,14 +6,13 @@ if has('patch-8.1.1517') && g:lsp_preview_float && !has('nvim')
else
setlocal previewwindow buftype=nofile bufhidden=wipe noswapfile nobuflisted
endif
setlocal nocursorline nofoldenable
setlocal nocursorline nofoldenable nonumber norelativenumber
if has('syntax')
setlocal nospell
endif
let &l:statusline = ' LSP Hover'
let b:undo_ftplugin = 'setlocal pvw< bt< bh< swf< bl< cul< fen<' .
\ (has('syntax') ? ' spell<' : '') .
\ ' number< relativenumber<' .
\ ' | unlet! g:markdown_fenced_languages'