- Created linux-nvim and win-nvim MCP servers for deep Neovim Msgpack-RPC integration. - Implemented tools: nvim_goto_line, nvim_get_active_buffer, nvim_get_cursor, nvim_get_visual_selection, nvim_set_diagnostics. - Added gemini-integration.lua for active UI socket discovery. - Updated build.cmd to cross-compile for both Windows (gnu) and Linux (musl). - Updated README, design.md, and instructions.md with architecture and tool capabilities.
27 lines
1.0 KiB
Lua
27 lines
1.0 KiB
Lua
-- gemini-integration.lua
|
|
-- Registers the active Neovim instance for the Antigravity MCP Server
|
|
vim.api.nvim_create_autocmd({"VimEnter", "FocusGained"}, {
|
|
callback = function()
|
|
-- Only register if Neovim has an active UI attached (ignore headless/embedded instances)
|
|
if #vim.api.nvim_list_uis() > 0 then
|
|
local server_name = vim.v.servername
|
|
if server_name then
|
|
local home = os.getenv("HOME")
|
|
if not home then
|
|
home = os.getenv("USERPROFILE")
|
|
end
|
|
if home then
|
|
os.execute("mkdir -p " .. home .. "/.gemini")
|
|
local path = home .. "/.gemini/active_nvim.txt"
|
|
local f = io.open(path, "w")
|
|
if f then
|
|
f:write(server_name)
|
|
f:close()
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end,
|
|
desc = "Register active Neovim instance for Gemini CLI",
|
|
})
|