Compare commits

..

No commits in common. "2617face3b1be40534d2cae7f0a374a062b3710d" and "2411fea601505d4a55ae29b385367db9ae978961" have entirely different histories.

5 changed files with 44 additions and 57 deletions

1
.gitignore vendored
View file

@ -2,4 +2,3 @@
.direnv
*.R
.Rlibs
.nvimcom

24
flake.lock generated
View file

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1776413584,
"narHash": "sha256-xqqv46MTveuT4yJH2YihmbHGy5mdLnnLFDebVmUws/E=",
"lastModified": 1771462351,
"narHash": "sha256-N3mUOwFwGBaFomNdlWuCRftzqy+h9Io8PJGcMVtJJsY=",
"owner": "dwinkler1",
"repo": "fran",
"rev": "da09626e4dd8f0f57078b3a04e0443a8c20defa1",
"rev": "7b8fbbcd0c55df98795a9e34621e6224b6713b5b",
"type": "github"
},
"original": {
@ -22,11 +22,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1776169885,
"narHash": "sha256-l/iNYDZ4bGOAFQY2q8y5OAfBBtrDAaPuRQqWaFHVRXM=",
"lastModified": 1775710090,
"narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "4bd9165a9165d7b5e33ae57f3eecbcb28fb231c9",
"rev": "4c1018dae018162ec878d42fec712642d214fdfa",
"type": "github"
},
"original": {
@ -55,11 +55,11 @@
"plugins-r": {
"flake": false,
"locked": {
"lastModified": 1776340770,
"narHash": "sha256-o/8UZIc/Bq9dWTjA+MpSR5uMUpE7KHTErk+TwWID8Ww=",
"lastModified": 1775681967,
"narHash": "sha256-Fqw9UzLvfADkQJCzdHNSBTNtSgp0DRu3HoD4Np3yEsc=",
"owner": "R-nvim",
"repo": "R.nvim",
"rev": "b9cfffeb9b4e484aa9e13f01c0eb80230aada455",
"rev": "345d82515947a4766ddb7b1de6a26d12c1f19bc1",
"type": "github"
},
"original": {
@ -101,11 +101,11 @@
]
},
"locked": {
"lastModified": 1776375800,
"narHash": "sha256-/SSAR77Brr9fbapsh1cb2K47JXCbvwS1GjM4yyDxle8=",
"lastModified": 1776047825,
"narHash": "sha256-BOa9WLkJFlp+2cmWrwoTpC5a0ibmKU5y1hgQpR9jDdg=",
"owner": "BirdeeHub",
"repo": "nix-wrapper-modules",
"rev": "f11469ca69068bac13d9e163b2bd268cc06dff57",
"rev": "5e5ac5ff7e6858eed67cfeae9d93bd1049eb005d",
"type": "github"
},
"original": {

View file

@ -67,8 +67,7 @@ if vim.fn.has('nvim-0.11') == 1 then
end
if vim.fn.has('nvim-0.12') == 1 then
vim.o.pummaxwidth = 100 -- Limit maximum width of popup menu
-- vim.o.completefuzzycollect = 'keyword,files,whole_line' -- Use fuzzy matching when collecting candidates
vim.opt.completeopt = { "menu", "popup", "fuzzy", "longest" }
vim.o.completefuzzycollect = 'keyword,files,whole_line' -- Use fuzzy matching when collecting candidates
end
vim.o.complete = '.,w,b,kspell' -- Use spell check and don't use tags for completion

View file

@ -67,18 +67,18 @@ nmap_leader('<S-Tab>', '<Cmd>bprev<CR>', 'Prev buffer')
-- a is for 'AI'
nmap_leader("ac", "<cmd>CodeCompanionChat Toggle<CR>", "Chat Toggle")
-- nmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code")
-- nmap_leader("af", "<cmd>CodeCompanion /fix<CR>", "Fix Code")
nmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code")
nmap_leader("af", "<cmd>CodeCompanion /fix<CR>", "Fix Code")
nmap_leader("ag", "<cmd>CodeCompanion /commit<CR>", "Generate commit message")
nmap_leader("ai", "<cmd>CodeCompanionActions<CR>", "Chat Action")
nmap_leader("al", "<cmd>CodeCompanion /lsp<CR>", "Explain LSP Diagnostics")
nmap_leader("an", "<cmd>CodeCompanionChat Add<CR>", "Chat New")
nmap_leader("as", "<cmd>CodeCompanion /suggest<CR>", "Suggest Improvements")
--nmap_leader("ax", "<cmd>CodeCompanion /fixer<CR>", "Code Fixer")
nmap_leader("ax", "<cmd>CodeCompanion /fixer<CR>", "Code Fixer")
nmap_leader("ax", "<cmd>CodeCompanion /fixer<CR>", "Code Fixer")
xmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code")
xmap_leader("af", "<cmd>CodeCompanion /fix<CR>", "Fix Code")
--xmap_leader("ap", "<cmd>CodeCompanion /expert<CR>", "Code Fixer")
xmap_leader("ap", "<cmd>CodeCompanion /expert<CR>", "Code Fixer")
xmap_leader("ap", "<cmd>CodeCompanion /expert<CR>", "Code Fixer")
xmap_leader("as", "<cmd>CodeCompanion /suggest<CR>", "Suggest Improvements")

View file

@ -1,6 +1,5 @@
local add = Config.add
local later = MiniDeps.later
local now = MiniDeps.now
local now_if_args = Config.now_if_args
-- Constants
@ -84,33 +83,16 @@ end
local function get_codecompanion_config()
return {
interactions = {
chat = {
adapter = {
name = "copilot",
model = "gemini-3.1-pro-preview",
},
opts = {
completion_provider = "blink",
},
},
inline = {
adapter = {
name = "copilot",
model = "gemini-3.1-pro-preview",
adapters = {
http = {
copilot = function()
return require("codecompanion.adapters").extend("copilot", {
schema = {
model = { default = "gemini-3-pro-preview" }
}
})
end,
}
},
keymaps = {
accept_change = {
modes = { n = "ga" },
description = "Accept the suggested change",
},
reject_change = {
modes = { n = "gr" },
opts = { nowait = true },
description = "Reject the suggested change",
},
},
},
display = {
chat = {
@ -123,10 +105,10 @@ local function get_codecompanion_config()
},
},
prompt_library = {
["expert"] = {
interaction = "chat",
["Code Expert"] = {
strategy = "chat",
description = "Get expert advice from an LLM",
--opts = create_common_opts("<localleader>ae", "expert"),
opts = create_common_opts("<localleader>ae", "expert"),
prompts = {
{
role = "system",
@ -143,10 +125,10 @@ local function get_codecompanion_config()
},
},
},
["fixer"] = {
interaction = "chat",
["Code Fixer"] = {
strategy = "chat",
description = "Fix code errors with expert guidance",
--opts = create_common_opts("<localleader>af", "afixer"),
opts = create_common_opts("<localleader>af", "afixer"),
prompts = {
{
role = "system",
@ -163,10 +145,17 @@ local function get_codecompanion_config()
},
},
},
["suggest"] = {
interaction = "chat",
["Suggest"] = {
strategy = "chat",
description = "Suggest improvements to the buffer",
--opts = create_common_opts("<localleader>as", "suggest"),
opts = {
mapping = "<localleader>as",
modes = { "v" },
short_name = "suggest",
auto_submit = true,
user_prompt = false,
stop_context_insertion = false,
},
prompts = {
{
role = "system",