Compare commits

..

7 commits

Author SHA1 Message Date
2617face3b rename to franPackages 2026-04-17 18:13:47 +10:00
da216e84c9 fix for new neovim 2026-04-17 18:05:44 +10:00
f0fe233ec1 added new naming of nvimcom package dir 2026-04-17 18:05:10 +10:00
6792b9cbb2
Merge pull request #5 from dwinkler1/update
Update flake.lock
2026-04-17 18:03:26 +10:00
github-actions[bot]
8be85f827f flake.lock: Update
Flake lock file updates:

• Updated input 'plugins-r':
    'github:R-nvim/R.nvim/cd64fd1' (2026-04-15)
  → 'github:R-nvim/R.nvim/b9cfffe' (2026-04-16)
• Updated input 'wrappers':
    'github:BirdeeHub/nix-wrapper-modules/0e699fc' (2026-04-15)
  → 'github:BirdeeHub/nix-wrapper-modules/f11469c' (2026-04-16)
2026-04-17 05:32:44 +00:00
30989bdd79
Merge pull request #4 from dwinkler1/update
Update flake.lock
2026-04-17 13:48:32 +10:00
github-actions[bot]
f74686a9f6 flake.lock: Update
Flake lock file updates:

• Updated input 'fran':
    'github:dwinkler1/fran/7b8fbbc' (2026-02-19)
  → 'github:dwinkler1/fran/697a1c0' (2026-04-14)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/4c1018d' (2026-04-09)
  → 'github:nixos/nixpkgs/4bd9165' (2026-04-14)
• Updated input 'plugins-r':
    'github:R-nvim/R.nvim/345d825' (2026-04-08)
  → 'github:R-nvim/R.nvim/cd64fd1' (2026-04-15)
• Updated input 'wrappers':
    'github:BirdeeHub/nix-wrapper-modules/5e5ac5f' (2026-04-13)
  → 'github:BirdeeHub/nix-wrapper-modules/0e699fc' (2026-04-15)
2026-04-16 05:35:13 +00:00
5 changed files with 57 additions and 44 deletions

1
.gitignore vendored
View file

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

24
flake.lock generated
View file

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

View file

@ -67,7 +67,8 @@ if vim.fn.has('nvim-0.11') == 1 then
end end
if vim.fn.has('nvim-0.12') == 1 then if vim.fn.has('nvim-0.12') == 1 then
vim.o.pummaxwidth = 100 -- Limit maximum width of popup menu vim.o.pummaxwidth = 100 -- Limit maximum width of popup menu
vim.o.completefuzzycollect = 'keyword,files,whole_line' -- Use fuzzy matching when collecting candidates -- vim.o.completefuzzycollect = 'keyword,files,whole_line' -- Use fuzzy matching when collecting candidates
vim.opt.completeopt = { "menu", "popup", "fuzzy", "longest" }
end end
vim.o.complete = '.,w,b,kspell' -- Use spell check and don't use tags for completion 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' -- a is for 'AI'
nmap_leader("ac", "<cmd>CodeCompanionChat Toggle<CR>", "Chat Toggle") nmap_leader("ac", "<cmd>CodeCompanionChat Toggle<CR>", "Chat Toggle")
nmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code") -- nmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code")
nmap_leader("af", "<cmd>CodeCompanion /fix<CR>", "Fix Code") -- nmap_leader("af", "<cmd>CodeCompanion /fix<CR>", "Fix Code")
nmap_leader("ag", "<cmd>CodeCompanion /commit<CR>", "Generate commit message") nmap_leader("ag", "<cmd>CodeCompanion /commit<CR>", "Generate commit message")
nmap_leader("ai", "<cmd>CodeCompanionActions<CR>", "Chat Action") nmap_leader("ai", "<cmd>CodeCompanionActions<CR>", "Chat Action")
nmap_leader("al", "<cmd>CodeCompanion /lsp<CR>", "Explain LSP Diagnostics") nmap_leader("al", "<cmd>CodeCompanion /lsp<CR>", "Explain LSP Diagnostics")
nmap_leader("an", "<cmd>CodeCompanionChat Add<CR>", "Chat New") nmap_leader("an", "<cmd>CodeCompanionChat Add<CR>", "Chat New")
nmap_leader("as", "<cmd>CodeCompanion /suggest<CR>", "Suggest Improvements") 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") nmap_leader("ax", "<cmd>CodeCompanion /fixer<CR>", "Code Fixer")
xmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code") xmap_leader("ae", "<cmd>CodeCompanion /explain<CR>", "Explain Code")
xmap_leader("af", "<cmd>CodeCompanion /fix<CR>", "Fix 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("ap", "<cmd>CodeCompanion /expert<CR>", "Code Fixer")
xmap_leader("as", "<cmd>CodeCompanion /suggest<CR>", "Suggest Improvements") xmap_leader("as", "<cmd>CodeCompanion /suggest<CR>", "Suggest Improvements")

View file

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