fix(nvim): use opencode server fallback in kitty and move mappings to <leader>o
This commit is contained in:
parent
3416f8a013
commit
c5abace3d9
1 changed files with 22 additions and 9 deletions
|
|
@ -1,13 +1,26 @@
|
||||||
return {
|
return {
|
||||||
"NickvanDyke/opencode.nvim",
|
"NickvanDyke/opencode.nvim",
|
||||||
config = function()
|
config = function()
|
||||||
|
local function open_opencode_in_kitty_tab()
|
||||||
|
vim.fn.jobstart({
|
||||||
|
"kitty",
|
||||||
|
"@",
|
||||||
|
"launch",
|
||||||
|
"--type=tab",
|
||||||
|
"--cwd",
|
||||||
|
vim.fn.getcwd(),
|
||||||
|
"sh",
|
||||||
|
"-lc",
|
||||||
|
"opencode --port",
|
||||||
|
}, { detach = true })
|
||||||
|
end
|
||||||
|
|
||||||
---@type opencode.Opts
|
---@type opencode.Opts
|
||||||
vim.g.opencode_opts = {
|
vim.g.opencode_opts = {
|
||||||
provider = {
|
server = {
|
||||||
enabled = "kitty",
|
start = open_opencode_in_kitty_tab,
|
||||||
kitty = {
|
toggle = open_opencode_in_kitty_tab,
|
||||||
location = "tab"
|
stop = function() end,
|
||||||
}
|
|
||||||
},
|
},
|
||||||
events = {
|
events = {
|
||||||
permissions = {
|
permissions = {
|
||||||
|
|
@ -17,19 +30,19 @@ return {
|
||||||
}
|
}
|
||||||
vim.o.autoread = true
|
vim.o.autoread = true
|
||||||
|
|
||||||
vim.keymap.set({ "n", "x" }, "<leader>aa", function()
|
vim.keymap.set({ "n", "x" }, "<leader>oa", function()
|
||||||
require("opencode").ask("@this: ", { submit = true })
|
require("opencode").ask("@this: ", { submit = true })
|
||||||
end, { desc = "Ask opencode" })
|
end, { desc = "Ask opencode" })
|
||||||
|
|
||||||
vim.keymap.set({ "n", "x" }, "<leader>ao", function()
|
vim.keymap.set({ "n", "x" }, "<leader>oo", function()
|
||||||
require("opencode").select()
|
require("opencode").select()
|
||||||
end, { desc = "Execute opencode action…" })
|
end, { desc = "Execute opencode action…" })
|
||||||
|
|
||||||
vim.keymap.set({ "n", "x" }, "<leader>as", function()
|
vim.keymap.set({ "n", "x" }, "<leader>os", function()
|
||||||
require("opencode").prompt("@this")
|
require("opencode").prompt("@this")
|
||||||
end, { desc = "Add to opencode" })
|
end, { desc = "Add to opencode" })
|
||||||
|
|
||||||
vim.keymap.set({ "n", "t" }, "<leader>a.", function()
|
vim.keymap.set({ "n", "t" }, "<leader>o.", function()
|
||||||
require("opencode").toggle()
|
require("opencode").toggle()
|
||||||
end, { desc = "Toggle opencode" })
|
end, { desc = "Toggle opencode" })
|
||||||
end,
|
end,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue