NeovimにCopilot(AIアシスト)機能を追加するプラグイン

公開日:
目次

Neovimを使っていてCopilotを入れたくなって調べてみたので備忘録を残します。

Copilot(AIアシスト)機能を提供するプラグイン

NeovimにはいくつかAIアシスト系のプラグインはいくつかありますが、参考動画をみて今回は3つの中から決めました。

https://www.youtube.com/watch?v=MzFr7iXsESs

  • ChatGPT.nvim
  • codeium.nvim
  • copilot.vim

結論としてはcopilot.vimを選択しました。

ChatGPT.nvimはcopilot的なアシストというよりかはChatGPTのようにチャットをして話しながら進めるものっぽかったのでやめました。

codeiumは補完機能として別まで表示されるみたいですが、copilotはゴーストとして表示されるようです。無料で使えるのがよさそうでしたが、性能自体はcopilotの方が良いっぽいです。(Githubのコードを使って学習しているため)

個人的には既にcopilotを契約していたので、GitHubアカウントを紐付けるだけで良いcopilot.nvimがよさそうだと思いました。

copilot.vimを入れてみる

実際にcopilot.vimを入れてみたところ、詰まったりしたのでメモを残します。

copilot.vimのインストール

copilot.vimを導入する場合は、lazy.nvimなどを利用してインストールするだけです。

レポジトリはgithub/copilot.nvimです。

ちなみに私はfatal: could not read Username for ...と表示されてエラーになりました。

調べると同じような状態になっていた人がredditでいた。

コメントを見るとタイポみたいだったので自分もよく見るとインストールしようとしていたのがcopilot.nvimで実際に書くべきはcopilot.vimでした。

nは必要なかったみたいです。笑

当たり前ですがgithub/copilot.vimに直したらうまくいきました。

copilot.vimの設定

インストールしたら:Copilot setupでGithub Accountにログインして:Copilot enableを設定します。

やってみたところ下記のエラーが出ました。

Node.jsの問題

次に、:Copilot setupを実行した際に"Node.js not found in path"というエラーが表示されました。

私はNode.jsがインストールされているはずだと思っていましたが、どうやらzshのパスにNode.jsが通っていないようでした。Qiitaの記事を参考にパス設定を行ったところ、この問題も解決しました。

もう一度:Copilot setupしてInputの右上に出てきたコードをコピーしてメモに写し、ブラウザで開いているNeoVimに貼り付けました。

本来は:Copilot enableで有効化しますが、私の場合は何もしなくても有効化されていました。

これでcopilotが無事使えるようになりました。