Cleaned up neovim config and added initial ollama plugin
This commit is contained in:
parent
95220f277d
commit
2039d5d7d1
7
nvim/lua/trianta/colors.lua
Normal file
7
nvim/lua/trianta/colors.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
return {
|
||||||
|
{ "catppuccin/nvim", as = "catppuccin" },
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
build = ":TSUpdate",
|
||||||
|
}
|
||||||
|
}
|
45
nvim/lua/trianta/focus.lua
Normal file
45
nvim/lua/trianta/focus.lua
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"folke/twilight.nvim",
|
||||||
|
opts = {
|
||||||
|
dimming = {
|
||||||
|
alpha = 0.25,
|
||||||
|
color = { "Normal", "#ffffff" },
|
||||||
|
term_bg = "#000000",
|
||||||
|
inactive = false,
|
||||||
|
},
|
||||||
|
context = 10,
|
||||||
|
treesitter = true,
|
||||||
|
expand = {
|
||||||
|
"function",
|
||||||
|
"method",
|
||||||
|
"table",
|
||||||
|
"if_statement"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"folke/zen-mode.nvim",
|
||||||
|
opts = {
|
||||||
|
{
|
||||||
|
window = {
|
||||||
|
backdrop = 0.95,
|
||||||
|
width = 120,
|
||||||
|
height = 1,
|
||||||
|
},
|
||||||
|
plugins = {
|
||||||
|
options = {
|
||||||
|
enabled = true,
|
||||||
|
ruler = false,
|
||||||
|
showcmd = false,
|
||||||
|
},
|
||||||
|
twilight = { enabled = true },
|
||||||
|
},
|
||||||
|
on_open = function(win)
|
||||||
|
end,
|
||||||
|
on_close = function()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,3 +1,4 @@
|
|||||||
|
require("trianta.set")
|
||||||
require("trianta.remap")
|
require("trianta.remap")
|
||||||
require("trianta.lazy")
|
require("trianta.lazy")
|
||||||
require("trianta.set")
|
|
||||||
|
@ -2,14 +2,14 @@
|
|||||||
|
|
||||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
if not vim.loop.fs_stat(lazypath) then
|
if not vim.loop.fs_stat(lazypath) then
|
||||||
vim.fn.system({
|
vim.fn.system({
|
||||||
"git",
|
"git",
|
||||||
"clone",
|
"clone",
|
||||||
"--filter=blob:none",
|
"--filter=blob:none",
|
||||||
"https://github.com/folke/lazy.nvim.git",
|
"https://github.com/folke/lazy.nvim.git",
|
||||||
"--branch=stable", -- latest stable release
|
"--branch=stable", -- latest stable release
|
||||||
lazypath,
|
lazypath,
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
vim.opt.rtp:prepend(lazypath)
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
@ -25,130 +25,10 @@ return require('lazy').setup({
|
|||||||
-- refer to the configuration section below
|
-- refer to the configuration section below
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ "catppuccin/nvim", as = "catppuccin" },
|
require("trianta.colors"),
|
||||||
{
|
require("trianta.lsp"),
|
||||||
"nvim-telescope/telescope.nvim", branch = '0.1.x',
|
require("trianta.nav"),
|
||||||
-- or , branch = '0.1.x',
|
require("trianta.focus"),
|
||||||
dependencies = {"nvim-lua/plenary.nvim"},
|
require("trianta.obsidian"),
|
||||||
},
|
require("trianta.ollama"),
|
||||||
|
|
||||||
{
|
|
||||||
"nvim-treesitter/nvim-treesitter",
|
|
||||||
build = ":TSUpdate",
|
|
||||||
},
|
|
||||||
"nvim-treesitter/playground",
|
|
||||||
"ThePrimeagen/harpoon",
|
|
||||||
{
|
|
||||||
'VonHeikemen/lsp-zero.nvim',
|
|
||||||
branch = 'v1.x',
|
|
||||||
dependencies = {
|
|
||||||
-- LSP Support
|
|
||||||
"neovim/nvim-lspconfig", -- Required
|
|
||||||
'williamboman/mason.nvim', -- Optional
|
|
||||||
'williamboman/mason-lspconfig.nvim', -- Optional
|
|
||||||
|
|
||||||
-- Autocompletion
|
|
||||||
'hrsh7th/nvim-cmp', -- Required
|
|
||||||
'hrsh7th/cmp-nvim-lsp', -- Required
|
|
||||||
'hrsh7th/cmp-buffer', -- Optional
|
|
||||||
'hrsh7th/cmp-path', -- Optional
|
|
||||||
'saadparwaiz1/cmp_luasnip', -- Optional
|
|
||||||
'hrsh7th/cmp-nvim-lua', -- Optional
|
|
||||||
|
|
||||||
-- Snippets
|
|
||||||
'L3MON4D3/LuaSnip', -- Required
|
|
||||||
'rafamadriz/friendly-snippets', -- Optional
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"epwalsh/obsidian.nvim",
|
|
||||||
version = "*", -- recommended, use latest release instead of latest commit
|
|
||||||
lazy = true,
|
|
||||||
ft = "markdown",
|
|
||||||
dependencies = {
|
|
||||||
"nvim-lua/plenary.nvim",
|
|
||||||
},
|
|
||||||
opts = {
|
|
||||||
workspaces = {
|
|
||||||
{
|
|
||||||
name = "trinote",
|
|
||||||
path = "~/sync/obsidian/Trinote/",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
ui = {
|
|
||||||
enable = true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"folke/twilight.nvim",
|
|
||||||
opts = {
|
|
||||||
dimming = {
|
|
||||||
alpha = 0.25, -- amount of dimming
|
|
||||||
-- we try to get the foreground from the highlight groups or fallback color
|
|
||||||
color = { "Normal", "#ffffff" },
|
|
||||||
term_bg = "#000000", -- if guibg=NONE, this will be used to calculate text color
|
|
||||||
inactive = false, -- when true, other windows will be fully dimmed (unless they contain the same buffer)
|
|
||||||
},
|
|
||||||
context = 10, -- amount of lines we will try to show around the current line
|
|
||||||
treesitter = true, -- use treesitter when available for the filetype
|
|
||||||
-- treesitter is used to automatically expand the visible text,
|
|
||||||
-- but you can further control the types of nodes that should always be fully expanded
|
|
||||||
expand = { -- for treesitter, we we always try to expand to the top-most ancestor with these types
|
|
||||||
"function",
|
|
||||||
"method",
|
|
||||||
"table",
|
|
||||||
"if_statement",
|
|
||||||
},
|
|
||||||
exclude = {}, -- exclude these filetypes
|
|
||||||
},
|
|
||||||
},
|
|
||||||
-- Lua
|
|
||||||
{
|
|
||||||
"folke/zen-mode.nvim",
|
|
||||||
opts = {
|
|
||||||
-- your configuration comes here
|
|
||||||
-- or leave it empty to use the default settings
|
|
||||||
-- refer to the configuration section below
|
|
||||||
{
|
|
||||||
window = {
|
|
||||||
backdrop = 0.95, -- shade the backdrop of the Zen window. Set to 1 to keep the same as Normal
|
|
||||||
-- height and width can be:
|
|
||||||
-- * an absolute number of cells when > 1
|
|
||||||
-- * a percentage of the width / height of the editor when <= 1
|
|
||||||
-- * a function that returns the width or the height
|
|
||||||
width = 120, -- width of the Zen window
|
|
||||||
height = 1, -- height of the Zen window
|
|
||||||
-- by default, no options are changed for the Zen window
|
|
||||||
-- uncomment any of the options below, or add other vim.wo options you want to apply
|
|
||||||
options = {
|
|
||||||
-- signcolumn = "no", -- disable signcolumn
|
|
||||||
-- number = false, -- disable number column
|
|
||||||
-- relativenumber = false, -- disable relative numbers
|
|
||||||
-- cursorline = false, -- disable cursorline
|
|
||||||
-- cursorcolumn = false, -- disable cursor column
|
|
||||||
-- foldcolumn = "0", -- disable fold column
|
|
||||||
-- list = false, -- disable whitespace characters
|
|
||||||
},
|
|
||||||
},
|
|
||||||
plugins = {
|
|
||||||
options = {
|
|
||||||
enabled = true,
|
|
||||||
ruler = false, -- disables the ruler text in the cmd line area
|
|
||||||
showcmd = false, -- disables the command in the last line of the screen
|
|
||||||
-- you may turn on/off statusline in zen mode by setting 'laststatus'
|
|
||||||
-- statusline will be shown only if 'laststatus' == 3
|
|
||||||
laststatus = 0, -- turn off the statusline in zen mode
|
|
||||||
},
|
|
||||||
twilight = { enabled = true }, -- enable to start Twilight when zen mode opens
|
|
||||||
},
|
|
||||||
-- callback where you can add custom code when the Zen window opens
|
|
||||||
on_open = function(win)
|
|
||||||
end,
|
|
||||||
-- callback where you can add custom code when the Zen window closes
|
|
||||||
on_close = function()
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
22
nvim/lua/trianta/lsp.lua
Normal file
22
nvim/lua/trianta/lsp.lua
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
return {
|
||||||
|
'VonHeikemen/lsp-zero.nvim',
|
||||||
|
branch = 'v1.x',
|
||||||
|
dependencies = {
|
||||||
|
-- LSP Support
|
||||||
|
"neovim/nvim-lspconfig", -- Required
|
||||||
|
'williamboman/mason.nvim', -- Optional
|
||||||
|
'williamboman/mason-lspconfig.nvim', -- Optional
|
||||||
|
|
||||||
|
-- Autocompletion
|
||||||
|
'hrsh7th/nvim-cmp', -- Required
|
||||||
|
'hrsh7th/cmp-nvim-lsp', -- Required
|
||||||
|
'hrsh7th/cmp-buffer', -- Optional
|
||||||
|
'hrsh7th/cmp-path', -- Optional
|
||||||
|
'saadparwaiz1/cmp_luasnip', -- Optional
|
||||||
|
'hrsh7th/cmp-nvim-lua', -- Optional
|
||||||
|
|
||||||
|
-- Snippets
|
||||||
|
'L3MON4D3/LuaSnip', -- Required
|
||||||
|
'rafamadriz/friendly-snippets', -- Optional
|
||||||
|
},
|
||||||
|
}
|
9
nvim/lua/trianta/nav.lua
Normal file
9
nvim/lua/trianta/nav.lua
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"nvim-telescope/telescope.nvim", branch = '0.1.x',
|
||||||
|
-- or , branch = '0.1.x',
|
||||||
|
dependencies = {"nvim-lua/plenary.nvim"},
|
||||||
|
},
|
||||||
|
|
||||||
|
"ThePrimeagen/harpoon"
|
||||||
|
}
|
22
nvim/lua/trianta/obsidian.lua
Normal file
22
nvim/lua/trianta/obsidian.lua
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"epwalsh/obsidian.nvim",
|
||||||
|
version = "*", -- recommended, use latest release instead of latest commit
|
||||||
|
lazy = true,
|
||||||
|
ft = "markdown",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
opts = {
|
||||||
|
workspaces = {
|
||||||
|
{
|
||||||
|
name = "trinote",
|
||||||
|
path = "~/sync/obsidian/Trinote/",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
ui = {
|
||||||
|
enable = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
49
nvim/lua/trianta/ollama.lua
Normal file
49
nvim/lua/trianta/ollama.lua
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
return {
|
||||||
|
"nomnivore/ollama.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.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 = "codellama-gpu-25-cpu-2",
|
||||||
|
url = "factory.lan:11434",
|
||||||
|
serve = {
|
||||||
|
on_start = false,
|
||||||
|
command = "ollama",
|
||||||
|
args = { "serve" },
|
||||||
|
stop_command = "pkill",
|
||||||
|
stop_args = { "-SIGTERM", "ollama" },
|
||||||
|
},
|
||||||
|
-- View the actual default prompts in ./lua/ollama/prompts.lua
|
||||||
|
prompts = {
|
||||||
|
Sample_Prompt = {
|
||||||
|
prompt = "This is a sample prompt that receives $input and $sel(ection), among others.",
|
||||||
|
input_label = "> ",
|
||||||
|
model = "mistral",
|
||||||
|
action = "display",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user