-
Notifications
You must be signed in to change notification settings - Fork 305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Refactor floats #510
Conversation
Commenting for future reference: vim/vim@dca7abe may be useful later. |
Hi there, I have floatwin/popup-win compatible codes. If @clason don't mind, I will send PR with implementation (not spec). |
@hrsh7th That would be very much appreciated; I have to admit I put this on a back burner due to real-life issues and the fact that neovim looks to be introducing new (and more convenient) APIs in the current release cycle (0.5), which looked worth waiting for. The main point of this refactor is to separate the API used by vim-lsp's callbacks from the backends, and as long as your implementation does the same (in whatever way), it's fine. |
Thanks for your instructuon. I started to switching to new implementation. |
I've sent the PR. Please check and feedback #567. |
let us continue the discussion at vim-jp/vital.vim#747 and vim-jp/vital.vim#748. |
The current preview implementation in
output.vim
has gotten a bit unwieldy in trying to support vim popups, neovim floats, and preview buffers, making it difficult to extend or adapt to changes in the low-level APIs (in particular for the upcoming neovim 0.4.0).This PR proposes a refactor to completely separate the backend-specific details from the functions handling the server response. The idea is to have
The current goal of this PR is to solicit discussion on the design of these APIs, documented in
doc/tooltip-api.txt
. (The code is meant as a stub to show the proposed dispatch and to have somewhere for sketching out implementation ideas.) The most central questions are: