GitHub Copilotのオートコンプリーションを無効にし、手動で補完をトリガーする方法。やっと分かったのでメモ。
まずVSCodeに以下の設定を追加。
"github.copilot.editor.enableAutoCompletions": false, "editor.inlineSuggest.edits.experimental.enabled": false,
続いて、ショートカットキーはデフォルトでalt+\なのだが、日本語キーボードの場合、"editor.action.inlineSuggest.trigger"に "alt+oem_102"を割り当てる必要がある。(設定UIでalt+\を押下するだけでもいい)
こうでもしないと、無料枠の2000補完/月は一瞬で使い切ると思う。あとOpenAIに見せるファイルの主導権はこちらで握っておくなら、オートコンプリートは切っておいたほうがいい。
GitHub Copilot Chatを触ってる感じ、エディタで開いているファイル全体がコンテキストに格納されるわけじゃなくて、前後100行くらいかな。コード補完も概ねそれくらいだろうか。
コンテキストのアタッチだと全部読めている気もする。どういう風にコードを切り取って(あるいは切り取らずそのまま全部)リクエストしてるのかはよくわからないな。パケットキャプチャして調査した方が良さそう。