Skip to content

Conversation

jwortmann
Copy link
Member

Experimental / work in progress

Implementation details are open for discussion and it would be nice to gather some opinions how inline completions should work.

  • For now in this PR they are only requested when you manually trigger autocomplete. And then they are immediately hidden when you either type something or move the caret. It would be nice to show the inline completions while typing, but I think the phantom behavior is too buggy for that (Make phantoms work better with inline(ghost) text sublimehq/sublime_text#5536). Another problem is that the regular completions popup often hides a big part of the inline completion phantom. But that is independent of whether it would be on typing or on manual trigger.
  • The server can return multiple inline completion items, but currently only the first one is shown and the other ones are ignored. Maybe there should be some way to switch between items, like in the signature help popup.
  • Maybe add a setting to configure the display mode; full or only single line (see Sublime-LSP Local Code-Assistant Support #2520 (comment))?
  • We can't provide SelectedCompletionInfo because it is not available from ST.

It can be tested with Tabby; for setup see #2520 or the docs description which is added in this PR. Tabby requires a compatible GPU.

For this PR I hijacked the Alt + Enter key binding which is currently used for "insert completion with opposite insert mode", because there aren't really any good key bindings left (everything with Ctrl or Shift is already taken in the ST default key bindings). This was mostly for testing and is up for discussion I guess.

I haven't really looked at the implementations in e.g. LSP-copilot yet. Perhaps there are some improvements that we can adopt.

@netlify
Copy link

netlify bot commented Nov 11, 2024

Deploy Preview for sublime-lsp ready!

Name Link
🔨 Latest commit ef73daa
🔍 Latest deploy log https://app.netlify.com/sites/sublime-lsp/deploys/673b47b128ea620008f2598e
😎 Deploy Preview https://deploy-preview-2552--sublime-lsp.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@predragnikolic

This comment was marked as resolved.

listener.inline_completion.position = position
listener.inline_completion.render_async(0)

# filter_text = item.get('filterText', insert_text) # ignored for now
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👀

jwortmann and others added 2 commits November 18, 2024 14:54
Co-authored-by: Предраг Николић <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants