LSP-copilot
GitHub Copilot support for Sublime Text LSP plugin provided through Copilot.vim.
Details
Installs
- Total 16K
- Win 5K
- Mac 7K
- Linux 3K
Jul 27 | Jul 26 | Jul 25 | Jul 24 | Jul 23 | Jul 22 | Jul 21 | Jul 20 | Jul 19 | Jul 18 | Jul 17 | Jul 16 | Jul 15 | Jul 14 | Jul 13 | Jul 12 | Jul 11 | Jul 10 | Jul 9 | Jul 8 | Jul 7 | Jul 6 | Jul 5 | Jul 4 | Jul 3 | Jul 2 | Jul 1 | Jun 30 | Jun 29 | Jun 28 | Jun 27 | Jun 26 | Jun 25 | Jun 24 | Jun 23 | Jun 22 | Jun 21 | Jun 20 | Jun 19 | Jun 18 | Jun 17 | Jun 16 | Jun 15 | Jun 14 | Jun 13 | Jun 12 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 10 | 9 | 3 | 11 | 8 | 3 | 3 | 6 | 7 | 9 | 9 | 5 | 2 | 5 | 10 | 4 | 10 | 9 | 7 | 2 | 7 | 8 | 5 | 8 | 10 | 6 | 3 | 4 | 7 | 5 | 8 | 9 | 7 | 4 | 10 | 12 | 4 | 15 | 5 | 6 | 4 | 5 | 9 | 4 | 11 |
Mac | 0 | 11 | 6 | 11 | 8 | 10 | 9 | 4 | 7 | 18 | 6 | 6 | 14 | 4 | 5 | 9 | 9 | 16 | 14 | 9 | 1 | 4 | 19 | 6 | 8 | 9 | 5 | 3 | 7 | 5 | 11 | 10 | 11 | 9 | 5 | 6 | 11 | 11 | 7 | 20 | 7 | 5 | 1 | 12 | 15 | 10 |
Linux | 0 | 3 | 4 | 1 | 7 | 6 | 6 | 3 | 7 | 5 | 9 | 15 | 11 | 3 | 3 | 6 | 3 | 2 | 7 | 4 | 2 | 0 | 4 | 3 | 6 | 5 | 7 | 2 | 5 | 8 | 4 | 9 | 3 | 1 | 3 | 2 | 12 | 7 | 6 | 6 | 5 | 7 | 3 | 5 | 6 | 18 |
Readme
- Source
- raw.githubusercontent.com
LSP-copilot
GitHub Copilot support for Sublime Text LSP plugin provided through Copilot.vim.
This plugin uses Copilot distribution which uses OpenAI Codex to suggest codes and entire functions in real-time right from your editor.
Features
- [x] Inline completion popup.
- [x] Inline completion phantom.
- [x] Panel completion.
- [x] Chat.
Prerequisites
- Public network connection.
- Active GitHub Copilot subscription.
Installation
- Install LSP and LSP-copilot via Package Control.
- Restart Sublime Text.
Setup
On the first time use, follow the steps below:
- Open any file.
- Execute
Copilot: Sign In
from the command palette. - Follow the prompts to authenticate LSP-copilot.
- The
User Code
will be auto copied to your clipboard. - Paste the
User Code
into the pop-up GitHub authentication page. - Return to Sublime Text and press
OK
on the dialog. - If you see a “sign in OK” dialog, LSP-copilot should start working since then.
- The
Settings
Settings are provide in the LSP-copilot.sublime-settings
file, accessible using Preferences: LSP-copilot Settings
in the command palette.
Setting | Type | Default | Description |
---|---|---|---|
auto_ask_completions | boolean | true | Auto ask the server for completions. Otherwise, you have to trigger it manually. |
commit_completion_on_tab | boolean | true | Use the Tab key for committing Copilot's completion. This may conflict with Sublime Text's auto_complete_commit_on_tab setting. |
debug | boolean | false | Enables debug mode for LSP-copilot. Enabling all commands regardless of status requirements. |
hook_to_auto_complete_command | boolean | false | Ask the server for completions when the auto_complete command is called. |
local_checks | boolean | false | Enables local checks. This feature is not fully understood yet. |
telemetry | boolean | false | Enables Copilot telemetry requests for Accept and Reject completions. |
proxy | string | The HTTP proxy to use for Copilot requests. It's in the form of username:password@host:port or just host:port . |
|
completion_style | string | popup | Completion style. popup is the default, phantom is experimental (there are well-known issues). |
Screenshots
Inline Completion Popup
Inline Completion Phantom
Panel Completion
Chat
FAQs
I don't want to use Tab
for committing Copilot's completion
It's likely that Copilot's completion appears along with Sublime Text's autocompletion
and both of them use Tab
for committing the completion. This may cause a nondeterministic result.
Thus, you may want to let only one of them (or none) use the Tab
key.
If you don't want LSP-copilot to use the Tab
key for committing the completion.
You can set LSP-copilot's commit_completion_on_tab
setting to false
and add a custom keybinding like below.
{
"keys": ["YOUR_OWN_DEDICATE_KEYBINDING"],
"command": "copilot_accept_completion",
"context": [
{
"key": "copilot.is_on_completion"
}
]
},
I see UNABLE_TO_GET_ISSUER_CERT_LOCALLY
error
If working behind a VPN and/or Proxy, you may be required to add your CA file into the NODE environment. See below for LSP-copilots support for this.
In LSP-copilot's plugin settings, add the following env
key:
{
"env": {
"NODE_EXTRA_CA_CERTS": "/path/to/certificate.crt",
},
// other custom settings...
}