Compare commits

..

2 Commits

Author SHA1 Message Date
886461ca6d chore: remove offensive quote from cowsay quotes;
chore: adjust kitty color6 and enable dynamic background opacity;
refactor: update mpd httpd output configuration;
chore: remove codeium and live-server nvim plugins;
feat: add oneshot logo image for rofi;
refactor: simplify rofi style with transparent backgrounds;
feat: add tmux passthrough setting for nvim compatibility;
feat: configure waybar for multi-monitor and adjust update intervals;
feat: add wallpaper lock aliases and brainless commit function
2025-11-06 00:40:15 +03:00
bc80157fa9 feat: add auto-save plugin with toggle mapping;
feat: windsurf is back;
feat: add html snippet for boilerplate;
refactor: lsp config due to deprecation;
refactor: update hop mappings to current-line only with offsets;
chore: adjust base02 color in kolyan theme
2025-11-06 00:34:29 +03:00
16 changed files with 209 additions and 117 deletions

View File

@@ -1,10 +1,8 @@
Щас бы пучок Щас бы пучок
Хохлы это плохо
А ты выключил утюг? А ты выключил утюг?
Хорошо сидеть дома Хорошо сидеть дома
Интересно, какой кумкват на вкус Интересно, какой кумкват на вкус
Когда это всё уже закончится... Когда это всё уже закончится...
Зато не как у виндозников Зато не как у виндозников
Когда ты уже пойдешь к психиатру?
Щас бы сериальчик Щас бы сериальчик
Высыпаться очень важно Высыпаться очень важно

View File

@@ -6,7 +6,7 @@ color2 #BB6F80
color3 #DA97B0 color3 #DA97B0
color4 #b12761 color4 #b12761
color5 #D58399 color5 #D58399
color6 #D6D8DA color6 #A6A8AA
color7 #D6D8DA color7 #D6D8DA
color8 #62636F color8 #62636F
color9 #BC4056 color9 #BC4056

View File

@@ -1178,7 +1178,7 @@ resize_debounce_time 0.1
#: The foreground and background colors. #: The foreground and background colors.
background_opacity 0.80 background_opacity 0.81
#: The opacity of the background. A number between zero and one, where #: The opacity of the background. A number between zero and one, where
#: one is opaque and zero is fully transparent. This will only work if #: one is opaque and zero is fully transparent. This will only work if
@@ -1243,7 +1243,7 @@ background_blur 63
#: kitty color control <https://sw.kovidgoyal.net/kitty/color- #: kitty color control <https://sw.kovidgoyal.net/kitty/color-
#: stack/#color-control> escape code. #: stack/#color-control> escape code.
# dynamic_background_opacity no dynamic_background_opacity yes
#: Allow changing of the background_opacity dynamically, using either #: Allow changing of the background_opacity dynamically, using either
#: keyboard shortcuts (increase_background_opacity and #: keyboard shortcuts (increase_background_opacity and

View File

@@ -274,18 +274,29 @@ input {
# #
# An example of a httpd output (built-in HTTP streaming server): # An example of a httpd output (built-in HTTP streaming server):
# #
# audio_output {
# type "httpd"
# name "Weed's MPD"
# encoder "vorbis" # optional, vorbis or lame
# path "/tmp/mpdstream"
# port "26669"
# always_on "yes"
# tags "yes"
# bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
# ## quality "5.0" # do not define if bitrate is defined
# # bitrate "128" # do not define if quality is defined
# format "44100:16:2"
# # max_clients "0" # optional 0=no limit
# }
audio_output { audio_output {
type "httpd" type "httpd"
name "Weed's MPD" name "My HTTP Stream"
encoder "vorbis" # optional, vorbis or lame encoder "vorbis" # optional, vorbis or lame
path "/tmp/mpdstream"
port "26669" port "26669"
always_on "yes"
tags "yes"
bind_to_address "0.0.0.0" # optional, IPv4 or IPv6 bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
## quality "5.0" # do not define if bitrate is defined ## quality "5.0" # do not define if bitrate is defined
# bitrate "128" # do not define if quality is defined bitrate "128" # do not define if quality is defined
format "44100:16:2" # format "44100:16:1"
# max_clients "0" # optional 0=no limit # max_clients "0" # optional 0=no limit
} }
# #

View File

@@ -1,68 +1,55 @@
-- load defaults i.e lua_lsp
require("nvchad.configs.lspconfig").defaults() require("nvchad.configs.lspconfig").defaults()
local lspconfig = require "lspconfig"
-- EXAMPLE
local servers = { local servers = {
"arduino_language_server", "arduino_language_server",
"ccls", --C/C++ "ccls",
-- "csharp_ls", "cssls",
"cssls", --CSS
"css_variables", "css_variables",
"dartls", --Dart "dartls",
"gopls", "gopls",
"html", "html",
"marksman", "marksman",
-- "pylsp",
"rust_analyzer", "rust_analyzer",
"svelte", "svelte",
"sqlls", --SQL "sqls",
"ts_ls" --TypeScript "ts_ls"
} }
lspconfig.omnisharp.setup { local nvlsp = require "nvchad.configs.lspconfig"
vim.lsp.config.omnisharp = {
cmd = { "dotnet", "/home/greg/.local/share/nvim/mason/packages/omnisharp/libexec/OmniSharp.dll" }, cmd = { "dotnet", "/home/greg/.local/share/nvim/mason/packages/omnisharp/libexec/OmniSharp.dll" },
on_attach = nvlsp.on_attach,
on_init = nvlsp.on_init,
capabilities = nvlsp.capabilities,
} }
-- lspconfig.rust_analyzer.setup { vim.lsp.config.pylsp = {
-- settings = {
-- ['rust-analyzer'] = {
-- diagnostics = {
-- enabled = false
-- }
-- }
-- }
-- }
lspconfig.pylsp.setup {
cmd = { "/home/greg/.venv312/bin/pylsp" }, cmd = { "/home/greg/.venv312/bin/pylsp" },
settings = { settings = {
pylsp = { pylsp = {
plugins = { plugins = {
black = { enabled = true }, black = { enabled = true },
-- pylint = { enabled = true, executable = "pylint", args = { "--jobs=4" } },
pycodestyle = { enabled = false }, pycodestyle = { enabled = false },
pylsp_mypy = { enabled = true }, pylsp_mypy = { enabled = true },
} }
} }
} },
on_attach = nvlsp.on_attach,
on_init = nvlsp.on_init,
capabilities = nvlsp.capabilities,
} }
local nvlsp = require "nvchad.configs.lspconfig"
-- lsps with default config
for _, lsp in ipairs(servers) do for _, lsp in ipairs(servers) do
lspconfig[lsp].setup { vim.lsp.config[lsp] = {
on_attach = nvlsp.on_attach, on_attach = nvlsp.on_attach,
on_init = nvlsp.on_init, on_init = nvlsp.on_init,
capabilities = nvlsp.capabilities, capabilities = nvlsp.capabilities,
} }
end end
-- configuring single server, example: typescript for _, lsp in ipairs(servers) do
-- lspconfig.tsserver.setup { vim.lsp.enable(lsp)
-- on_attach = nvlsp.on_attach, end
-- on_init = nvlsp.on_init, vim.lsp.enable('omnisharp')
-- capabilities = nvlsp.capabilities, vim.lsp.enable('pylsp')
-- }

View File

@@ -14,10 +14,13 @@ local base46 = require "base46"
vim.keymap.set("n", "<leader>tt", base46.toggle_transparency) vim.keymap.set("n", "<leader>tt", base46.toggle_transparency)
-- Toggle wrap -- Toggle wrap
vim.keymap.set("n", "<leader>ww", function () vim.keymap.set("n", "<leader>tw", function ()
vim.wo.wrap = not vim.wo.wrap vim.wo.wrap = not vim.wo.wrap
end) end)
-- Togle autosave
vim.api.nvim_set_keymap("n", "<leader>ta", ":ASToggle<CR>", { desc = "Autosave Toggle" })
-- Debbuger binds -- Debbuger binds
-- local dap = require "dap" -- local dap = require "dap"
-- vim.keymap.set("n", "<space>pb", dap.toggle_breakpoint, { desc = "Dap Toggle breakpoint" }) -- vim.keymap.set("n", "<space>pb", dap.toggle_breakpoint, { desc = "Dap Toggle breakpoint" })
@@ -96,17 +99,17 @@ map("t", "<C-Esc>", "<C-\\><C-N>", { desc = "terminal escape terminal mode" })
local hop = require('hop') local hop = require('hop')
local directions = require('hop.hint').HintDirection local directions = require('hop.hint').HintDirection
vim.keymap.set('', 'f', function() vim.keymap.set('', 'f', function()
hop.hint_char1({ direction = directions.AFTER_CURSOR, current_line_only = false }) hop.hint_char1({ direction = directions.AFTER_CURSOR, current_line_only = true })
end, {remap=true}) end, {remap=true})
vim.keymap.set('', 'F', function() vim.keymap.set('', 'F', function()
hop.hint_char1({ direction = directions.BEFORE_CURSOR, current_line_only = false }) hop.hint_char1({ direction = directions.BEFORE_CURSOR, current_line_only = true })
end, {remap=true})
vim.keymap.set('', 't', function()
hop.hint_char1({ direction = directions.AFTER_CURSOR, current_line_only = true, hint_offset = -1 })
end, {remap=true})
vim.keymap.set('', 'T', function()
hop.hint_char1({ direction = directions.BEFORE_CURSOR, current_line_only = true, hint_offset = 1 })
end, {remap=true}) end, {remap=true})
-- vim.keymap.set('', 't', function()
-- hop.hint_char1({ direction = directions.AFTER_CURSOR, current_line_only = false, hint_offset = -1 })
-- end, {remap=true})
-- vim.keymap.set('', 'T', function()
-- hop.hint_char1({ direction = directions.BEFORE_CURSOR, current_line_only = false, hint_offset = 1 })
-- end, {remap=true})
-- themes -- themes
vim.keymap.set("n", "<leader>tv", function() require('vscode').load('dark') end) vim.keymap.set("n", "<leader>tv", function() require('vscode').load('dark') end)
@@ -116,6 +119,9 @@ vim.keymap.set("n", "<leader>rn", vim.lsp.buf.rename, { desc = "Lsp Rename" })
vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, { desc = "Lsp Code Action" }) vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, { desc = "Lsp Code Action" })
vim.keymap.set("n", "<leader>ci", vim.lsp.buf.implementation, { desc = "Lsp Implementation" }) vim.keymap.set("n", "<leader>ci", vim.lsp.buf.implementation, { desc = "Lsp Implementation" })
-- load Windsurf
vim.keymap.set("n", "<leader>ws", function () require("windsurf").enabled = true end, { desc = "Windsurf" })
-- cdproj -- cdproj
vim.keymap.set('n', '<leader>cp', '<cmd>CdProject<cr>', { desc = 'Project Switch directory directory' }) vim.keymap.set('n', '<leader>cp', '<cmd>CdProject<cr>', { desc = 'Project Switch directory directory' })

View File

@@ -0,0 +1,43 @@
return {
{
"okuuva/auto-save.nvim",
config = function()
require("auto-save").setup {
{
enabled = true, -- start auto-save when the plugin is loaded (i.e. when your package manager loads it)
execution_message = {
message = function() -- message to print on save
return ("Auto-saved at " .. vim.fn.strftime("%H:%M:%S"))
end,
dim = 0.18, -- dim the color of `message`
cleaning_interval = 1250, -- (milliseconds) automatically clean MsgArea after displaying `message`. See :h MsgArea
},
trigger_events = {"InsertLeave", "TextChanged"}, -- vim events that trigger auto-save. See :h events
-- function that determines whether to save the current buffer or not
-- return true: if buffer is ok to be saved
-- return false: if it's not ok to be saved
condition = function(buf)
local fn = vim.fn
local utils = require("auto-save.utils.data")
if
fn.getbufvar(buf, "&modifiable") == 1 and
utils.not_in(fn.getbufvar(buf, "&filetype"), {}) then
return true -- met condition(s), can save
end
return false -- can't save
end,
write_all_buffers = false, -- write all buffers when the current one meets `condition`
debounce_delay = 135, -- saves the file at most every `debounce_delay` milliseconds
callbacks = { -- functions to be executed at different intervals
enabling = nil, -- ran when enabling auto-save
disabling = nil, -- ran when disabling auto-save
before_asserting_save = nil, -- ran before checking `condition`
before_saving = nil, -- ran before doing the actual save
after_saving = nil -- ran after doing the actual save
}
}}
end,
}
}

View File

@@ -14,6 +14,13 @@ return {
require("hop").hint_words() require("hop").hint_words()
end, end,
mode = {"n", "x", "o", "v"} mode = {"n", "x", "o", "v"}
},
{
"<leader>gf",
function ()
require("hop").hint_patterns()
end,
mode = {"n", "x", "o", "v"}
} }
} }
} }

View File

@@ -1,22 +1,7 @@
return { return {
"Exafunction/codeium.vim", "Exafunction/windsurf.vim",
event = 'BufEnter', event = 'BufEnter',
enabled = false, enabled = false,
-- Rebind accept completion to shift + enter in edit mode
-- config = function()
-- require("codeium").setup({
-- virtual_text = {
-- enabled = true,
-- key_bindings = {
-- accept = "<S-Enter>",
-- accept_word = "<M-Enter>",
-- accept_line = "<M-\\>",
-- clear = "<M-[>",
-- next = "<M-]>"
-- }
-- },
-- })
-- end
init = function() init = function()
vim.g.codeium_disable_bindings = 1 vim.g.codeium_disable_bindings = 1

View File

@@ -0,0 +1,40 @@
local ls = require("luasnip")
local s = ls.snippet
local t = ls.text_node
local i = ls.insert_node
local fmt = require("luasnip.extras.fmt").fmt
return {
s("!", {
t("<!DOCTYPE html>"),
t({"", "<html lang=\""}), i(1, "en"), t({"\" >", ""}),
t({"<head>", ""}),
t({" <meta charset=\"UTF-8\">", ""}),
t({" <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">", ""}),
t({" <title>"}), i(2, "Document"), t({"</title>", ""}),
t({"</head>", ""}),
t({"<body>", ""}),
i(0),
t({"", "</body>", ""}),
t({"</html>"})
}),
-- Alternative version using fmt for cleaner formatting
s("!html", fmt([[
<!DOCTYPE html>
<html lang="{}">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{}</title>
</head>
<body>
{}
</body>
</html>
]], {
i(1, "en"),
i(2, "Document"),
i(0)
}))
}

View File

@@ -36,7 +36,7 @@ M.base_30 = {
M.base_16 = { M.base_16 = {
base00 = "#1c1c1d", -- background base00 = "#1c1c1d", -- background
base01 = "#1a1d21", base01 = "#1a1d21",
base02 = "#23262a", base02 = "#43464a",
base03 = "#5b5e62", base03 = "#5b5e62",
base04 = "#323539", base04 = "#323539",
base05 = "#878b96", -- foreground base05 = "#878b96", -- foreground

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 KiB

View File

@@ -12,8 +12,6 @@ configuration {
modi: "drun,run,filebrowser,window"; modi: "drun,run,filebrowser,window";
show-icons: true; show-icons: true;
display-drun: "アプリ"; display-drun: "アプリ";
display-window: "実行中";
display-filebrowser: "ファイル";
display-run: "実行"; display-run: "実行";
display-calc: "電卓"; display-calc: "電卓";
drun-display-format: "{name}"; drun-display-format: "{name}";
@@ -107,12 +105,12 @@ textbox-prompt-colon {
enabled: true; enabled: true;
expand: false; expand: false;
str: ""; str: "";
background-color: #00000000; background-color: transparent;
text-color: inherit; text-color: inherit;
} }
entry { entry {
enabled: true; enabled: true;
background-color: #00000000; background-color: transparent;
text-color: inherit; text-color: inherit;
cursor: text; cursor: text;
placeholder: "検索"; placeholder: "検索";

View File

@@ -91,3 +91,6 @@ set -g @online_icon "#[bg=green]online"
set -g @offline_icon "#[bg=red]offline" set -g @offline_icon "#[bg=red]offline"
set -g @sep "#[bg=default] " set -g @sep "#[bg=default] "
# nvim getting on my nerves
set -g allow-passthrough on

View File

@@ -1,6 +1,10 @@
// -*- mode: jsonc -*- // -*- mode: jsonc -*-
{ {
//"output": "eDP-1", //"output": "eDP-1",
"output": [
"eDP-1",
"HDMI-A-1"
],
// "layer": "top", // Waybar at top layer // "layer": "top", // Waybar at top layer
// "position": "bottom", // Waybar position (top|bottom|left|right) // "position": "bottom", // Waybar position (top|bottom|left|right)
"height": 30, // Waybar height (to be removed for auto height) "height": 30, // Waybar height (to be removed for auto height)
@@ -129,7 +133,7 @@
}, },
"clock": { "clock": {
// "timezone": "America/New_York", // "timezone": "America/New_York",
"interval": 1, "interval": 5,
"tooltip-format": "<big>{:%A ( %B %d )}</big>\n<tt><small>{calendar}</small></tt>", "tooltip-format": "<big>{:%A ( %B %d )}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%H:%M:%S}", "format": "{:%H:%M:%S}",
"format-alt": "{:%Y-%m-%d}", "format-alt": "{:%Y-%m-%d}",
@@ -146,14 +150,14 @@
"cpu": { "cpu": {
"format": "{max_frequency:1.2f}GHz 󰓅 {usage}%", "format": "{max_frequency:1.2f}GHz 󰓅 {usage}%",
"tooltip": false, "tooltip": false,
"interval": 3, "interval": 10,
"format-icons": [ "format-icons": [
"󰄰", "󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥" "󰄰", "󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥"
] ]
}, },
"memory": { "memory": {
"format": "󰧑 {percentage}%", "format": "󰧑 {percentage}%",
"interval": 3, "interval": 10,
"format-icons": [ "format-icons": [
"󰄰", "󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥" "󰄰", "󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥"
] ]

View File

@@ -62,3 +62,13 @@ alias pp3="powerprofilesctl set performance"
# alias vi="nvim" # alias vi="nvim"
alias vim="nvim" alias vim="nvim"
alias pentagon="~/Dev/Appimages/edexui.AppImage" alias pentagon="~/Dev/Appimages/edexui.AppImage"
alias lockswww='echo 1 > $HOME/.config/hypr/conditions/lock_wallpaper'
alias unlockswww='echo 0 > $HOME/.config/hypr/conditions/lock_wallpaper'
alias brainless_commit='
echo "" > /tmp/brainless_commit;
echo "$(cat $HOME/Dev/Prompts/commit.txt) $(git status -v)" > /tmp/brainless_commit;
commit_message=$(cat /tmp/brainless_commit | tgpt -q -w);
echo "$commit_message" > /tmp/brainless_commit;
nvim /tmp/brainless_commit;
git commit -m "$(cat /tmp/brainless_commit)"
'