Godot EngineのエディタをNeovimにするための設定
Neovimしか勝たん
Contents
環境
- Windows 11
- Neovim v0.11.3
- Godot Engine v4.4.1
Neovimのインストール
この記事を読む人には必要ない説明のような気がするが, Windows 11向けの情報は少なそうなのでざっとまとめておく.
Neovimをwingetでインストールし,vim コマンドで nvim が起動するようにシンボリックリンクを張る.
winget install Neovim.Neovim
New-Item -Path 'C:\Program Files\Neovim\bin\vim.exe' -ItemType SymbolicLink -Value 'C:\Program Files\Neovim\bin\nvim.exe'
NeovimのGUIをwingetでインストールする.
winget install equalsraf.neovim-qt
外部エディタ設定
Godot Engineを起動してエディター設定を開く.テキストエディター→外部の項目を開き,各プロパティを以下のように設定する:
| プロパティ | 値 |
|---|---|
| 実行パス | nvim-qt.exeのフルパス |
| 実行フラグ | "+call cursor({line}, {col})" {file} |
| 外部エディターを使用 | オン |

以上の設定により,Godot Engine上でスクリプトを開く際にNeovimが起動するようになる.
LSP設定
Godot Engineを起動してエディター設定を開く.ネットワーク→言語サーバの項目を開き,リモートホストおよびリモートポートの値を確認する.デフォルトでは 127.0.0.1:6005 になっているはず.

Neovimの設定ファイル init.vim にLSPを有効にする設定を書く.
vim.lsp.enable('gdscript') によって gdscript.lua が読み込まれる.
vim.lsp.enable('gdscript')
vim.keymap.set('n', '<C-Tab>', '<cmd>lua vim.lsp.buf.hover()<CR>')
vim.keymap.set('n', '<C-W>', '<cmd>lua vim.diagnostic.open_float()<CR>')
キーマップの設定
上記のNeovimのキーマップはかなり簡易のものなので,もっとちゃんと設定している人のを参考にしたほうがいい.例えば↓など.
NeoVim使いのためのnvim-lspconfig おすすめキーマッピングの紹介 - アルパカログ
GitHubの neovim/nvim-lspconfig のリポジトリからGDScript用の設定をコピーし,gdscript.luaに貼り付ける.
---@brief
---
--- https://github.com/godotengine/godot
---
--- Language server for GDScript, used by Godot Engine.
local port = os.getenv 'GDScript_Port' or '6005'
local cmd = vim.lsp.rpc.connect('127.0.0.1', tonumber(port))
---@type vim.lsp.Config
return {
cmd = cmd,
filetypes = { 'gdscript' },
root_markers = { 'project.godot', '.git' },
}
以上の設定により,Godot Engineの起動中のみ,Neovim上でGDScriptのコード補完を利用できるようになる.