3

Try Copilot in Vim in Docker

 1 year ago
source link: https://www.gibney.org/copilot_vim_docker
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Try Copilot in Vim in Docker

Marek Gibney : Notes : Copilot in Vim in Docker

So I decided to finally give GitHub Copilot a spin. Let's see how our new robot overlords are doing in terms of programming!

Turns out there is no way to just go to a website, start typing and see the magic in action. There is a plugin for Neovim, but I don't like to install stuff that is not in the Debian repos. Docker to the rescue!

As with anything I do manually, I put the steps into a script, so I don't have to do it again. And so I can share them. So here it is, the script to easily try Copilot in Vim in Docker.

Unfortunately it is a "script" that you have to execute manually line by line. Since it switches in and out of the container and needs you to manually register a token shown by the plugin during the setup. If the plugin setup was non-interactive, it all could be done in a Dockerfile.

docker run --name copilotcontainer -it debian:sid-slim

apt update && apt upgrade -y

apt install -y neovim nodejs git

git clone https://github.com/github/copilot.vim.git ~/.config/nvim/pack/github/start/copilot.vim

vim

# Now in vim type:
# :Copilot setup
# And then hit enter
# The plugin will display a token.
# Open a browser and paste the code on https://github.com/login/device
# After a few moments, the plugin will finish the setup
# Now exit vim
# Exit the container

docker commit copilotcontainer copilot

docker rm copilotcontainer

## All done

# From now on, you can use the copilot container with:
# docker run --rm -it copilot

When you run vim and go into insert mode, the plugin constantly suggests stuff. Here I typed the colorized code and Copilot suggests the grey code:

screenshot_1.png

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK