refactor: adjust hyprland, kitty, and nvim settings
- hyprland: add hy3 plugin config, prefer kitty terminal, change shift+exit to E - kitty: reduce font size to 10.5 - nvim: change indent width to 2 spaces - nvim: replace avante with parrot (Ollama provider) - nvim: temporarily disable treesitter install
This commit is contained in:
@@ -35,6 +35,7 @@ monitor=,preferred,auto,auto
|
||||
|
||||
# Set programs that you use
|
||||
$terminal = kitty
|
||||
#$terminal = foot
|
||||
$fileManager = nautilus
|
||||
$menu = wofi --show drun -GI
|
||||
|
||||
@@ -214,9 +215,23 @@ misc {
|
||||
xwayland {
|
||||
force_zero_scaling = true
|
||||
}
|
||||
|
||||
env = GTK_SCALE,1
|
||||
env = XCURSOR_SIZE,32
|
||||
|
||||
plugin {
|
||||
hy3 {
|
||||
tabs {
|
||||
# height of the tab bar
|
||||
height = 2 # default: 22
|
||||
|
||||
# render the window title on the bar
|
||||
render_text = false # default: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
#############
|
||||
### INPUT ###
|
||||
@@ -266,7 +281,7 @@ bind = $mainMod, M, exec, hyprlock
|
||||
|
||||
bind = $mainMod SHIFT, SPACE, togglefloating,
|
||||
bind = $mainMod SHIFT, Q, hy3:killactive,
|
||||
bind = $mainMod SHIFT, M, exit,
|
||||
bind = $mainMod SHIFT, E, exit,
|
||||
bind = $mainMod SHIFT, S, pin
|
||||
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
font_size 11.5
|
||||
font_size 10.5
|
||||
|
||||
#text_composition_strategy legacy
|
||||
#modify_font cell_width 95%
|
||||
|
||||
@@ -16,9 +16,9 @@ vim.cmd("set number")
|
||||
|
||||
vim.cmd("set relativenumber")
|
||||
vim.cmd("set expandtab")
|
||||
vim.cmd("set shiftwidth=4")
|
||||
vim.cmd("set softtabstop=4")
|
||||
vim.cmd("set tabstop=4")
|
||||
vim.cmd("set shiftwidth=2")
|
||||
vim.cmd("set softtabstop=2")
|
||||
vim.cmd("set tabstop=2")
|
||||
vim.cmd("set smartindent")
|
||||
|
||||
vim.cmd("set backspace=indent,eol,start")
|
||||
|
||||
@@ -1,63 +0,0 @@
|
||||
return {
|
||||
"yetone/avante.nvim",
|
||||
-- if you want to build from source then do `make BUILD_FROM_SOURCE=true`
|
||||
-- ⚠️ must add this setting! ! !
|
||||
build = vim.fn.has("win32") ~= 0
|
||||
and "powershell -ExecutionPolicy Bypass -File Build.ps1 -BuildFromSource false"
|
||||
or "make",
|
||||
event = "VeryLazy",
|
||||
version = false, -- Never set this value to "*"! Never!
|
||||
---@module 'avante'
|
||||
---@type avante.Config
|
||||
opts = {
|
||||
-- add any opts here
|
||||
-- this file can contain specific instructions for your project
|
||||
instructions_file = "avante.md",
|
||||
-- for example
|
||||
provider = "ollama",
|
||||
providers = {
|
||||
ollama = {
|
||||
model = "devstral-small-2:24b-32k",
|
||||
--is_env_set = require("avante.providers.ollama").check_endpoint_alive,
|
||||
},
|
||||
},
|
||||
},
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"MunifTanjim/nui.nvim",
|
||||
--- The below dependencies are optional,
|
||||
"nvim-mini/mini.pick", -- for file_selector provider mini.pick
|
||||
"nvim-telescope/telescope.nvim", -- for file_selector provider telescope
|
||||
"hrsh7th/nvim-cmp", -- autocompletion for avante commands and mentions
|
||||
"ibhagwan/fzf-lua", -- for file_selector provider fzf
|
||||
"stevearc/dressing.nvim", -- for input provider dressing
|
||||
"folke/snacks.nvim", -- for input provider snacks
|
||||
"nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
|
||||
"zbirenbaum/copilot.lua", -- for providers='copilot'
|
||||
{
|
||||
-- support for image pasting
|
||||
"HakonHarnes/img-clip.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
-- recommended settings
|
||||
default = {
|
||||
embed_image_as_base64 = false,
|
||||
prompt_for_file_name = false,
|
||||
drag_and_drop = {
|
||||
insert_mode = true,
|
||||
},
|
||||
-- required for Windows users
|
||||
use_absolute_path = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
-- Make sure to set this up properly if you have lazy=true
|
||||
'MeanderingProgrammer/render-markdown.nvim',
|
||||
opts = {
|
||||
file_types = { "markdown", "Avante" },
|
||||
},
|
||||
ft = { "markdown", "Avante" },
|
||||
},
|
||||
},
|
||||
}
|
||||
79
.config/nvim/lua/plugins/parrot.lua
Normal file
79
.config/nvim/lua/plugins/parrot.lua
Normal file
@@ -0,0 +1,79 @@
|
||||
return {
|
||||
"frankroeder/parrot.nvim",
|
||||
dependencies = { 'ibhagwan/fzf-lua', 'nvim-lua/plenary.nvim' },
|
||||
-- optionally include "folke/noice.nvim" or "rcarriga/nvim-notify" for beautiful notifications
|
||||
config = function()
|
||||
require("parrot").setup {
|
||||
-- Providers must be explicitly set up to make them available.
|
||||
providers = {
|
||||
ollama = {
|
||||
name = "ollama",
|
||||
endpoint = "http://localhost:11434/api/chat",
|
||||
api_key = "", -- not required for local Ollama
|
||||
--params = {
|
||||
-- chat = { temperature = 1.5, top_p = 1, num_ctx = 8192, min_p = 0.05 },
|
||||
-- command = { temperature = 1.5, top_p = 1, num_ctx = 8192, min_p = 0.05 },
|
||||
--},
|
||||
--topic_prompt = [[
|
||||
--Summarize the chat above and only provide a short headline of 2 to 3
|
||||
--words without any opening phrase like "Sure, here is the summary",
|
||||
--"Sure! Here's a shortheadline summarizing the chat" or anything similar.
|
||||
--]],
|
||||
--topic = {
|
||||
-- model = "llama3.2",
|
||||
-- params = { max_tokens = 32 },
|
||||
--},
|
||||
headers = {
|
||||
["Content-Type"] = "application/json",
|
||||
},
|
||||
models = {
|
||||
"glm-4.7-flash:latest",
|
||||
},
|
||||
resolve_api_key = function()
|
||||
return true
|
||||
end,
|
||||
process_stdout = function(response)
|
||||
if response:match "message" and response:match "content" then
|
||||
local ok, data = pcall(vim.json.decode, response)
|
||||
if ok and data.message and data.message.content then
|
||||
return data.message.content
|
||||
end
|
||||
end
|
||||
end,
|
||||
get_available_models = function(self)
|
||||
local url = self.endpoint:gsub("chat", "")
|
||||
local logger = require "parrot.logger"
|
||||
local job = Job:new({
|
||||
command = "curl",
|
||||
args = { "-H", "Content-Type: application/json", url .. "tags" },
|
||||
}):sync()
|
||||
local parsed_response = require("parrot.utils").parse_raw_response(job)
|
||||
self:process_onexit(parsed_response)
|
||||
if parsed_response == "" then
|
||||
logger.debug("Ollama server not running on " .. endpoint_api)
|
||||
return {}
|
||||
end
|
||||
|
||||
local success, parsed_data = pcall(vim.json.decode, parsed_response)
|
||||
if not success then
|
||||
logger.error("Ollama - Error parsing JSON: " .. vim.inspect(parsed_data))
|
||||
return {}
|
||||
end
|
||||
|
||||
if not parsed_data.models then
|
||||
logger.error "Ollama - No models found. Please use 'ollama pull' to download one."
|
||||
return {}
|
||||
end
|
||||
|
||||
local names = {}
|
||||
for _, model in ipairs(parsed_data.models) do
|
||||
table.insert(names, model.name)
|
||||
end
|
||||
|
||||
return names
|
||||
end,
|
||||
},
|
||||
}
|
||||
}
|
||||
end,
|
||||
}
|
||||
@@ -2,6 +2,6 @@ return {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate",
|
||||
config = function()
|
||||
require("nvim-treesitter").install({})
|
||||
--require("nvim-treesitter").install({})
|
||||
end
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user