add ollama functionality
This commit is contained in:
parent
d4982e7460
commit
1304b279bb
|
@ -1,4 +1,41 @@
|
||||||
return {
|
return {
|
||||||
|
--
|
||||||
|
-- Ollama Workflows
|
||||||
|
--
|
||||||
|
{
|
||||||
|
'nomnivore/ollama.nvim',
|
||||||
|
dependencies = {
|
||||||
|
'nvim-lua/plenary.nvim',
|
||||||
|
'stevearc/dressing.nvim',
|
||||||
|
},
|
||||||
|
|
||||||
|
-- All the user commands added by the plugin
|
||||||
|
cmd = { "Ollama", "OllamaModel", "OllamaServe", "OllamaServeStop" },
|
||||||
|
|
||||||
|
keys = {
|
||||||
|
-- Sample keybind for prompt menu. Note that the <c-u> is important for selections to work properly.
|
||||||
|
{
|
||||||
|
"<leader>oo",
|
||||||
|
":<c-u>lua require('ollama').prompt()<cr>",
|
||||||
|
desc = "ollama prompt",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Sample keybind for direct prompting. Note that the <c-u> is important for selections to work properly.
|
||||||
|
{
|
||||||
|
"<leader>oG",
|
||||||
|
":<c-u>lua require('ollama').prompt('Generate_Code')<cr>",
|
||||||
|
desc = "ollama Generate Code",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
---@type Ollama.Config
|
||||||
|
opts = {
|
||||||
|
model = "llama3:8b",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
--
|
--
|
||||||
-- LSP Configuration
|
-- LSP Configuration
|
||||||
--
|
--
|
||||||
|
|
|
@ -26,7 +26,25 @@ return {
|
||||||
dependencies = {
|
dependencies = {
|
||||||
'nvim-tree/nvim-web-devicons',
|
'nvim-tree/nvim-web-devicons',
|
||||||
},
|
},
|
||||||
|
|
||||||
config = function()
|
config = function()
|
||||||
|
-- Define a function to check that ollama is installed and working
|
||||||
|
local function get_condition()
|
||||||
|
return package.loaded["ollama"] and require("ollama").status ~= nil
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
-- Define a function to check the status and return the corresponding icon
|
||||||
|
local function get_status_icon()
|
||||||
|
local status = require("ollama").status()
|
||||||
|
|
||||||
|
if status == "IDLE" then
|
||||||
|
return "OLLAMA IDLE"
|
||||||
|
elseif status == "WORKING" then
|
||||||
|
return "OLLAMA BUSY"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
require('lualine').setup {
|
require('lualine').setup {
|
||||||
options = {
|
options = {
|
||||||
icons_enabled = true,
|
icons_enabled = true,
|
||||||
|
@ -41,6 +59,14 @@ return {
|
||||||
tabline = {
|
tabline = {
|
||||||
lualine_a = {'buffers'},
|
lualine_a = {'buffers'},
|
||||||
};
|
};
|
||||||
|
sections = {
|
||||||
|
lualine_a = {'mode'},
|
||||||
|
lualine_b = {'branch', 'diff', 'diagnostics'},
|
||||||
|
lualine_c = { { 'filename', path = 1 } },
|
||||||
|
lualine_x = { get_status_icon, get_condition, 'encoding', 'fileformat', 'filetype' },
|
||||||
|
lualine_y = { "progress" },
|
||||||
|
lualine_z = { "location" },
|
||||||
|
},
|
||||||
}
|
}
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
@ -55,6 +81,6 @@ return {
|
||||||
config = function()
|
config = function()
|
||||||
require('gitsigns').setup()
|
require('gitsigns').setup()
|
||||||
end
|
end
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue