copilot.vim
github/copilot.vim は vim/NeoVimでGitHub Copilotを使うためのプラグイン。
VisualStudio Codeと同様にGitHub Copilotによるコードの提案をvim/NeoVimでも受けられるようになる。
vimのバージョン
copilot.vim
はvim
のバージョン9.0.0185
以上で動作する。
セットアップ
Node.jsのインストール
Node.jsが必要なのでインストールしておく。
Macの場合はHomebrewでインストールできる。
$ brew install node
他のOSの場合は ダウンロード | Node.js より 最新版をダウンロードしてインストールする。
copilot.vimのインストール
copilot.vim
をインストールするにはGitHub
から
cloneして~/.vim/pack/github/start/copilot.vim
に配置する。
git clone https://github.com/github/copilot.vim.git \
~/.vim/pack/github/start/copilot.vim
GitHubで認証する
vimを立ち上げて:Copilot setup
コマンドを実行する。
8桁のワンタイムコードが表示されるのでコピーしておく。
Enterキーを入力するとブラウザでGitHubの認証画面が開くのでコピーしておいたワンタイムコードを貼り付ける。
Continueボタンをクリックすると連携の認証画面に遷移するのでAuthorize GitHub Copilot Pluginボタンをクリックする。
正常に認証できれば以下のような画面が表示されればオーケー。
使い方
セットアップに成功すればvim
でコーディング中にグレーでコードが提案される。
提案はタブキーで受け入れる。
set pasteが有効だとタブで受け入れできない
手元の環境だと~/.vimrc
でset paste
を設定しているとタブキーで提案を受け入れられなかった。
GitHub Copilotの提案を受け入れるためにはset paste
の設定を削除する必要がある。
ファイルタイプに対してCopilotが有効かどうかの確認と対応方法
有効かどうかの確認(:Copilot status)
copilot.vim
が提案しない場合、設定の必要な可能性がある。
現在の設定で開いているファイルに対してcopilot.vim
が提案するかどうかは以下のコマンドで確認できる。
:Copilot status
例えばデフォルトではMarkdownファイル(*.md)は対応しておらず、上記コマンドで以下のメッセージが表示される。
Copilot: Disabled for filetype=markdown by internal default
有効で正常に動作する場合は以下のように表示される。
Copilot: Enabled and online
有効にする設定(g:copilot#filetypes)
有効なファイルタイプを追加するには.vimrc
にg:copilot#filetypes
の設定を追加する。
let g:copilot_filetypes = {'markdown': v:true}
上記設定後Markdownのファイル(*.md)を開き直すとCopilotが有効となり、提案が表示されるようになる。
複数のファイルタイプを設定する場合は以下のように記述する。
let g:copilot_filetypes = {
\ 'markdown': v:true,
\ 'yaml': v:true,
\ 'xml': v:true,
\ }