Compare commits

...

6 Commits

Author SHA1 Message Date
cd0e830c70
old stuff
Signed-off-by: Dmitri <dmitri.ollari@protonmail.com>
2026-04-30 15:27:44 +02:00
0cef4d924f
fix 2026-04-22 20:59:17 +02:00
Dmitri
a8249238b0 stuff 2026-04-22 15:35:34 +02:00
Dmitri
bab2e30c23 stuff 2026-04-22 15:25:40 +02:00
Dmitri
bd57681b82 lsp fix for yaml and gitlab ci 2026-04-22 15:19:54 +02:00
d7d344af1b
dap and removed java 2026-04-19 15:35:21 +02:00
37 changed files with 4216 additions and 6409 deletions

View File

@ -7,7 +7,7 @@
[commit]
gpgsign = true
[gpg]
program = gpg2
program = gpg
[pull]
rebase = true
[push]

11
.zshrc
View File

@ -17,9 +17,9 @@ plug "romkatv/powerlevel10k"
#
#
# # Load and initialise completion system
# autoload -Uz compinit
# fpath+=~/.zfunc
# compinit
autoload -Uz compinit
fpath+=~/.zfunc
compinit
# # nvm initialization
# source /usr/share/nvm/init-nvm.sh
@ -38,10 +38,7 @@ export GPG_TTY=$(tty)
export EDITOR="nvim"
source /usr/share/nvm/init-nvm.sh
source "/home/user/.sdkman/bin/sdkman-init.sh"
source "/home/user/.cargo/env"
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
export KUBECONFIG=~/.kube/config-server
source ~/.cargo/env

View File

@ -1,10 +0,0 @@
font-family = Iosevka NF
font-size = 18
window-decoration = false
mouse-hide-while-typing = true
theme = Gruvbox Dark
shell-integration = zsh

View File

@ -1,47 +0,0 @@
# vim:ft=kitty
## name: Gruvbox Material Dark Hard
## author: Sainnhe Park
## license: MIT
## upstream: https://raw.githubusercontent.com/rsaihe/gruvbox-material-kitty/main/colors/gruvbox-material-dark-hard.conf
## blurb: A modified version of Gruvbox with softer contrasts
background #1d2021
foreground #d4be98
selection_background #d4be98
selection_foreground #1d2021
cursor #a89984
cursor_text_color background
# Black
color0 #665c54
color8 #928374
# Red
color1 #ea6962
color9 #ea6962
# Green
color2 #a9b665
color10 #a9b665
# Yellow
color3 #e78a4e
color11 #d8a657
# Blue
color4 #7daea3
color12 #7daea3
# Magenta
color5 #d3869b
color13 #d3869b
# Cyan
color6 #89b482
color14 #89b482
# White
color7 #d4be98
color15 #d4be98

File diff suppressed because it is too large Load Diff

View File

@ -21,20 +21,10 @@ vim.api.nvim_create_autocmd("BufReadPost", {
end,
})
vim.api.nvim_create_autocmd('LspAttach', {
group = vim.api.nvim_create_augroup('my.lsp', {}),
callback = function(args)
local client = assert(vim.lsp.get_client_by_id(args.data.client_id))
-- Usually not needed if server supports "textDocument/willSaveWaitUntil".
if not client:supports_method('textDocument/willSaveWaitUntil')
and client:supports_method('textDocument/formatting') then
vim.api.nvim_create_autocmd('BufWritePre', {
group = vim.api.nvim_create_augroup('my.lsp', { clear = false }),
buffer = args.buf,
-- used just to make lsp for gitlabci for work
vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, {
pattern = "*.gitlab-ci*.{yml,yaml}",
callback = function()
vim.lsp.buf.format({ bufnr = args.buf, id = client.id, timeout_ms = 1000 })
end,
})
end
vim.bo.filetype = "yaml.gitlab"
end,
})

View File

@ -4,40 +4,3 @@ vim.keymap.set("n", "<Esc>", "<cmd>nohlsearch<CR>")
-- Diagnostic keymaps
vim.keymap.set("n", "<leader>q", vim.diagnostic.setloclist, { desc = "Open diagnostic [Q]uickfix list" })
-- Exit terminal mode in the builtin terminal with a shortcut that is a bit easier
-- for people to discover. Otherwise, you normally need to press <C-\><C-n>, which
-- is not what someone will guess without a bit more experience.
--
-- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping
-- or just use <C-\><C-n> to exit terminal mode
vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>", { desc = "Exit terminal mode" })
-- TIP: Disable arrow keys in normal mode
-- vim.keymap.set('n', '<left>', '<cmd>echo "Use h to move!!"<CR>')
-- vim.keymap.set('n', '<right>', '<cmd>echo "Use l to move!!"<CR>')
-- vim.keymap.set('n', '<up>', '<cmd>echo "Use k to move!!"<CR>')
-- vim.keymap.set('n', '<down>', '<cmd>echo "Use j to move!!"<CR>')
-- Keybinds to make split navigation easier.
-- Use CTRL+<hjkl> to switch between windows
--
-- See `:help wincmd` for a list of all window commands
vim.keymap.set("n", "<C-h>", "<C-w><C-h>", { desc = "Move focus to the left window" })
vim.keymap.set("n", "<C-l>", "<C-w><C-l>", { desc = "Move focus to the right window" })
vim.keymap.set("n", "<C-j>", "<C-w><C-j>", { desc = "Move focus to the lower window" })
vim.keymap.set("n", "<C-k>", "<C-w><C-k>", { desc = "Move focus to the upper window" })
-- NOTE: Some terminals have colliding keymaps or are not able to send distinct keycodes
-- vim.keymap.set("n", "<C-S-h>", "<C-w>H", { desc = "Move window to the left" })
-- vim.keymap.set("n", "<C-S-l>", "<C-w>L", { desc = "Move window to the right" })
-- vim.keymap.set("n", "<C-S-j>", "<C-w>J", { desc = "Move window to the lower" })
-- vim.keymap.set("n", "<C-S-k>", "<C-w>K", { desc = "Move window to the upper" })
-- DAP keymaps
vim.keymap.set("n", "<leader>db", "<cmd>lua require'dap'.toggle_breakpoint()<CR>", { desc = "Toggle [B]reakpoint" })
vim.keymap.set("n", "<leader>dc", "<cmd>lua require'dap'.continue()<CR>", { desc = "[C]ontinue" })
vim.keymap.set("n", "<leader>di", "<cmd>lua require'dap'.step_into()<CR>", { desc = "Step [I]nto" })
vim.keymap.set("n", "<leader>do", "<cmd>lua require'dap'.step_over()<CR>", { desc = "Step [O]ver" })
vim.keymap.set("n", "<leader>dO", "<cmd>lua require'dap'.step_out()<CR>", { desc = "Step [O]ut" })
vim.keymap.set("n", "<leader>dr", "<cmd>lua require'dap'.repl.open()<CR>", { desc = "Open [R]EPL" })

View File

@ -25,9 +25,7 @@ vim.o.breakindent = true -- keep indentation on wrapped lines (if wrap is enable
-- Schedule the setting after `UiEnter` because it can increase startup-time.
-- Remove this option if you want your OS clipboard to remain independent.
-- See `:help 'clipboard'`
vim.schedule(function()
vim.o.clipboard = "unnamedplus"
end)
vim.o.swapfile = false -- no swapfiles
vim.o.undofile = true -- persistent undo
vim.o.writebackup = false -- do not keep backup around
@ -47,7 +45,7 @@ vim.o.completeopt = "menu,menuone,noinsert,noselect"
vim.o.shortmess = (vim.o.shortmess or "") .. "c" -- reduce completion messages
-- Performance and input timing
vim.o.timeoutlen = 300 -- mapped sequence timeout
vim.o.timeoutlen = 800 -- mapped sequence timeout
vim.o.updatetime = 250 -- faster CursorHold/diagnostic updates
vim.o.scrolloff = 10 -- context lines around cursor

View File

@ -29,6 +29,7 @@ return { -- Autocompletion
},
--- @module 'blink.cmp'
--- @type blink.cmp.Config
opts = {
keymap = {
-- set to 'none' to disable the 'default' preset
@ -38,10 +39,10 @@ return { -- Autocompletion
["<C-j>"] = { "select_next", "fallback" },
["<C-b>"] = { "scroll_documentation_up", "fallback" },
["<C-f>"] = { "scroll_documentation_down", "fallback" },
["<Tab>"] = { "snippet_forward", "fallback" },
["<S-Tab>"] = { "snippet_backward", "fallback" },
-- ["<S-Tab>"] = { "select_prev", "fallback" },
-- ["<Tab>"] = { "select_next", "fallback" },
-- ["<Tab>"] = { "snippet_forward", "fallback" },
-- ["<S-Tab>"] = { "snippet_backward", "fallback" },
["<S-Tab>"] = { "select_prev", "fallback" },
["<Tab>"] = { "select_next", "fallback" },
["<C-space>"] = { "show", "show_documentation", "hide_documentation" },
["<CR>"] = { "select_and_accept", "fallback" },

View File

@ -6,7 +6,7 @@ return {
keywords = {
TODO = { icon = "🤨", color = "info" },
WIP = { icon = "🥵", color = "warning" },
ERR = { icon = "🤬", color = "error" },
ERROR = { icon = "🤬", color = "error" },
},
},
}
}

View File

@ -0,0 +1,56 @@
return {
"mfussenegger/nvim-dap",
dependencies = {
"williamboman/mason.nvim",
"jay-babu/mason-nvim-dap.nvim",
"rcarriga/nvim-dap-ui",
"theHamsta/nvim-dap-virtual-text",
"nvim-neotest/nvim-nio",
},
config = function()
local dap = require("dap")
local dapui = require("dapui")
dapui.setup()
require("nvim-dap-virtual-text").setup({})
local map = function(keys, func, desc)
vim.keymap.set("n", keys, func, { desc = "DAP: " .. desc })
end
map("<leader>db", dap.toggle_breakpoint, "Toggle [B]reakpoint")
map("<leader>dc", dap.continue, "[C]ontinue")
map("<leader>di", dap.step_into, "Step [I]nto")
map("<leader>do", dap.step_over, "Step [O]ver")
map("<leader>dO", dap.step_out, "Step [O]ut")
map("<leader>dr", dap.repl.open, "Open [R]EPL")
map("<leader>dt", dap.terminate, "[T]erminate")
map("<leader>du", dapui.toggle, "Toggle [U]I")
local debuggers = {
delve = {},
}
local ensure_installed = vim.tbl_keys(debuggers)
require("mason-nvim-dap").setup({
ensure_installed = ensure_installed,
automatic_installation = true,
handlers = {
function(config)
require("mason-nvim-dap").default_setup(config)
end,
},
})
dap.listeners.after.event_initialized["dapui_config"] = function()
dapui.open()
end
dap.listeners.before.event_terminated["dapui_config"] = function()
dapui.close()
end
dap.listeners.before.event_exited["dapui_config"] = function()
dapui.close()
end
end,
}

View File

@ -3,6 +3,6 @@ return {
opts = {
inputs = {
enable = true,
}
},
},
}

View File

@ -1,4 +1,3 @@
return { -- Autoformat
"stevearc/conform.nvim",
event = { "BufWritePre" },

View File

@ -5,10 +5,6 @@ return {
"sindrets/diffview.nvim",
"nvim-telescope/telescope.nvim",
},
-- config = function()
-- require("neogit").setup()
-- vim.keymap.set("n", "<leader>gg", "<cmd>Neogit<cr>", { desc = "Neogit" })
-- end,
opts = true,
keys = {
{ "<leader>gg", "<cmd>Neogit<cr>", desc = "Neogit" },

View File

@ -3,4 +3,3 @@ return {
event = "BufRead",
opts = {},
}

View File

@ -1,29 +0,0 @@
return {
"mfussenegger/nvim-jdtls",
ft = "java",
config = function()
local lombok_dir = vim.fn.stdpath("data") .. "/lombok"
local lombok_path = lombok_dir .. "/lombok.jar"
if not vim.loop.fs_stat(lombok_path) then
vim.fn.mkdir(lombok_dir, "p")
print("Downloading lombok.jar...")
local lombok_url = "https://projectlombok.org/downloads/lombok.jar"
vim.fn.system({ "curl", "-L", "-o", lombok_path, lombok_url })
print("lombok.jar downloaded to " .. lombok_path)
end
local capabilities = require("blink.cmp").get_lsp_capabilities()
local config = {
cmd = {
"jdtls",
"--jvm-arg=-javaagent:" .. lombok_path,
},
root_dir = vim.fs.root(0, { ".git", "mvnw", "gradlew" }) or vim.fn.getcwd(),
capabilities = capabilities,
}
require("jdtls").start_or_attach(config)
end,
}

View File

@ -1,4 +1,3 @@
return {
-- `lazydev` configures Lua LSP for your Neovim config, runtime and plugins
-- used for completion, annotations and signatures of Neovim apis

View File

@ -13,6 +13,8 @@ return {
vim.api.nvim_create_autocmd("LspAttach", {
group = vim.api.nvim_create_augroup("kickstart-lsp-attach", { clear = true }),
callback = function(event)
local client = vim.lsp.get_client_by_id(event.data.client_id)
local map = function(keys, func, desc, mode)
mode = mode or "n"
vim.keymap.set(mode, keys, func, { buffer = event.buf, desc = "LSP: " .. desc })
@ -61,7 +63,7 @@ return {
-- code, if the language server you are using supports them
--
-- This may be unwanted, since they displace some of your code
if client and client_supports_method(client, vim.lsp.protocol.Methods.textDocument_inlayHint, event.buf) then
if client and client:supports_method(vim.lsp.protocol.Methods.textDocument_inlayHint, event.buf) then
map("<leader>th", function()
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled({ bufnr = event.buf }))
end, "[T]oggle Inlay [H]ints")
@ -98,76 +100,56 @@ return {
},
})
-- LSP servers and clients are able to communicate to each other what features they support.
-- By default, Neovim doesn't support everything that is in the LSP specification.
-- When you add blink.cmp, luasnip, etc. Neovim now has *more* capabilities.
-- So, we create new capabilities with blink.cmp, and then broadcast that to the servers.
local capabilities = require("blink.cmp").get_lsp_capabilities()
-- Enable the following language servers
-- Feel free to add/remove any LSPs that you want here. They will automatically be installed.
--
-- Add any additional override configuration in the following tables. Available keys are:
-- - cmd (table): Override the default command used to start the server
-- - filetypes (table): Override the default list of associated filetypes for the server
-- - capabilities (table): Override fields in capabilities. Can be used to disable certain LSP features.
-- - settings (table): Override the default settings passed when initializing the server.
-- For example, to see the options for `lua_ls`, you could go to: https://luals.github.io/wiki/settings/
local servers = {
texlab = {},
rust_analyzer = {},
cssls = {},
astro = {},
tailwindcss = {},
pylsp = {},
ts_ls = {},
gopls = {},
postgres_lsp = {},
gitlab_ci_ls = {},
bicep = {},
yamlls = {
fileTypes = {
"yaml.gitlab",
},
},
rust_analyzer = {},
postgres_lsp = {
single_file_support = true,
root_dir = function(bufnr, on_dir)
local fname = vim.api.nvim_buf_get_name(bufnr)
local root = vim.fs.root(fname, {
"postgres-language-server.jsonc",
".git",
})
on_dir(root or vim.uv.cwd())
end,
},
lua_ls = {
settings = {
Lua = {
completion = {
callSnippet = "Replace",
},
-- You can toggle below to ignore Lua_LS's noisy `missing-fields` warnings
-- diagnostics = { disable = { 'missing-fields' } },
},
},
},
}
-- Ensure the servers and tools above are installed
--
-- To check the current status of installed tools and/or manually install
-- other tools, you can run
-- :Mason
--
-- You can press `g?` for help in this menu.
--
-- `mason` had to be setup earlier: to configure its options see the
-- `dependencies` table for `nvim-lspconfig` above.
--
-- You can add other tools here that you want Mason to install
-- for you, so that they are available from within Neovim.
local ensure_installed = vim.tbl_keys(servers or {})
vim.list_extend(ensure_installed, {
"stylua", -- Used to format Lua code
})
require("mason-tool-installer").setup({ ensure_installed = ensure_installed })
require("mason-lspconfig").setup({
ensure_installed = {}, -- explicitly set to an empty table (Kickstart populates installs via mason-tool-installer)
automatic_installation = true,
handlers = {
function(server_name)
local server = servers[server_name] or {}
for server_name, server in pairs(servers) do
-- This handles overriding only values explicitly passed
-- by the server configuration above. Useful when disabling
-- certain features of an LSP (for example, turning off formatting for ts_ls)
server.capabilities = vim.tbl_deep_extend("force", {}, capabilities, server.capabilities or {})
require("lspconfig")[server_name].setup(server)
end,
},
})
vim.lsp.config(server_name, server)
vim.lsp.enable(server_name)
end
end,
}

View File

@ -1,9 +1,9 @@
return {
'stevearc/oil.nvim',
"stevearc/oil.nvim",
opts = {},
dependencies = { "nvim-tree/nvim-web-devicons" }, -- use if prefer nvim-web-devicons
dependencies = { "nvim-tree/nvim-web-devicons" },
config = function()
require("oil").setup()
vim.keymap.set('n', '<leader>fe', "<cmd>:Oil<cr>")
end
vim.keymap.set("n", "<leader>fe", "<cmd>:Oil<cr>")
end,
}

View File

@ -4,6 +4,5 @@ return {
config = function()
vim.o.background = "dark" -- or "light" for light mode
vim.cmd([[colorscheme gruvbox]])
end
end,
}

View File

@ -1,51 +1,18 @@
return { -- Useful plugin to show you pending keybinds.
return {
"folke/which-key.nvim",
event = "VimEnter", -- Sets the loading event to 'VimEnter'
event = "VimEnter",
opts = {
-- delay between pressing a key and opening which-key (milliseconds)
-- this setting is independent of vim.o.timeoutlen
delay = 0,
icons = {
-- set icon mappings to true if you have a Nerd Font
mappings = vim.g.have_nerd_font,
-- If you are using a Nerd Font: set icons.keys to an empty table which will use the
-- default which-key.nvim defined Nerd Font icons, otherwise define a string table
keys = vim.g.have_nerd_font and {} or {
Up = "<Up> ",
Down = "<Down> ",
Left = "<Left> ",
Right = "<Right> ",
C = "<C-…> ",
M = "<M-…> ",
D = "<D-…> ",
S = "<S-…> ",
CR = "<CR> ",
Esc = "<Esc> ",
ScrollWheelDown = "<ScrollWheelDown> ",
ScrollWheelUp = "<ScrollWheelUp> ",
NL = "<NL> ",
BS = "<BS> ",
Space = "<Space> ",
Tab = "<Tab> ",
F1 = "<F1>",
F2 = "<F2>",
F3 = "<F3>",
F4 = "<F4>",
F5 = "<F5>",
F6 = "<F6>",
F7 = "<F7>",
F8 = "<F8>",
F9 = "<F9>",
F10 = "<F10>",
F11 = "<F11>",
F12 = "<F12>",
},
},
-- Document existing key chains
spec = {
{ "<leader>s", group = "[S]earch" },
{ "<leader>t", group = "[T]oggle" },
{ "<leader>d", group = "[D]ebug" },
{ "<leader>h", group = "Git [H]unk", mode = { "n", "v" } },
},
},

File diff suppressed because it is too large Load Diff

View File

@ -1,2 +0,0 @@
# enable automatic env
sdkman_auto_env=true

View File

@ -1,27 +1,54 @@
# Variabili di base
set $mod Mod4
# set $left h
# set $down j
# set $up k
# set $right l
set $term foot
# Launcher: wofi (sostituisce wmenu-run)
set $menu wofi -S drun -p Search -I -b -i
# Wallpaper e output
set $wallpaper ~/Nextcloud/wallpapers/laptop/hiroishi_nagasai.png
set $benq_wallpaper ~/Nextcloud/wallpapers/laptop/hiroishi_nagasai.png
set $laptop eDP-1
set $benq DP-9
# Color Scheme (Gruvbox)
set $gruvbox_bg_dark #282828
set $gruvbox_bg_light #504945
set $gruvbox_fg_dark #ebdbb2
set $gruvbox_fg_light #d5c4a1
set $gruvbox_red #cc241d
set $gruvbox_green #98971a
set $gruvbox_yellow #d79921
set $gruvbox_blue #458588
set $gruvbox_purple #b16286
set $gruvbox_aqua #689d6a
set $gruvbox_orange #d65d0e
# Impostazione del wallpaper e configurazione output
output * bg $wallpaper fill
# Imposta il profilo ICC, risoluzione, posizione e scala per il display laptop
output $laptop color_profile icc ~/Documents/dotfiles/sway/FRAMEWORK_13_BOE_ICC/BOE_CQ_______NE135FBM_N41_03.icm
output $laptop resolution 2256x1504 position 0,0
output $laptop scale 1.3
# Configure BenQ display
output $benq bg $benq_wallpaper fill
output $laptop color_profile icc ~/Documents/dotfiles/sway/BENQ_PD2706QN_ICC/'Display P3.icc'
output $benq resolution 2560x1440@99.990Hz position 0,0
output $laptop scale 1.3
# Gestione degli eventi del coperchio
bindswitch --reload --locked lid:on exec ~/Documents/dotfiles/sway/scripts/lid.sh on $laptop
bindswitch --reload --locked lid:off exec ~/Documents/dotfiles/sway/scripts/lid.sh off $laptop
bindswitch --reload --locked lid:on output $laptop disable
bindswitch --reload --locked lid:off output $laptop enable
# Configurazione dell'inattività: lock e DPMS
exec swayidle -w
input type:touchpad {
dwt disabled # Disable while typing - RIATTIVA QUESTA OPZIONE
dwt enabled # Disable while typing - RIATTIVA QUESTA OPZIONE
tap enabled # Enable tap-to-click
natural_scroll enabled # Natural scrolling
middle_emulation enabled # Emulate middle mouse button - RIATTIVA QUESTA OPZIONE
@ -47,9 +74,9 @@ bindsym $mod+Return exec $term
# Chiudi finestra focalizzata
bindsym $mod+Shift+q kill
set $ipc /usr/sbin/qs -c noctalia-shell ipc call
# Avvia il launcher
bindsym $mod+d exec $ipc launcher toggle
bindsym $mod+d exec $menu
# Modalità floating: trascina finestre con $mod + mouse
floating_modifier $mod normal
@ -57,14 +84,25 @@ floating_modifier $mod normal
# Ricarica la configurazione
bindsym $mod+Shift+c reload
# Esci da Sway (con conferma tramite swaynag)
# bindsym $mod+Shift+e exec swaynag -t warning -m 'Hai premuto la scorciatoia per uscire. Vuoi davvero uscire da Sway?' -B 'Sì, esci' 'swaymsg exit'
### Navigazione e spostamento tra finestre
# Sposta il focus
# bindsym $mod+$left focus left
# bindsym $mod+$down focus down
# bindsym $mod+$up focus up
# bindsym $mod+$right focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Sposta la finestra focalizzata
# bindsym $mod+Shift+$left move left
# bindsym $mod+Shift+$down move down
# bindsym $mod+Shift+$up move up
# bindsym $mod+Shift+$right move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
@ -123,6 +161,10 @@ bindsym $mod+minus scratchpad show
### Modalità "resize" per ridimensionare le finestre
mode "resize" {
# bindsym $left resize shrink width 10px
# bindsym $down resize grow height 10px
# bindsym $up resize shrink height 10px
# bindsym $right resize grow width 10px
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
@ -132,19 +174,26 @@ mode "resize" {
}
bindsym $mod+r mode "resize"
bindsym --locked XF86AudioRaiseVolume exec $ipc volume increase
bindsym --locked XF86AudioLowerVolume exec $ipc volume decrease
bindsym --locked XF86AudioMute exec $ipc volume muteOutput
bindsym --locked XF86MonBrightnessUp exec $ipc brightness increase
bindsym --locked XF86MonBrightnessDown exec $ipc brightness decrease
### Notifiche e Controlli Audio/Luminosità
set $notification_time 1000
# Audio controls
bindsym XF86AudioMute exec ~/.config/sway/scripts/notification-control.sh mute-toggle
bindsym XF86AudioLowerVolume exec ~/.config/sway/scripts/notification-control.sh volume-down
bindsym XF86AudioRaiseVolume exec ~/.config/sway/scripts/notification-control.sh volume-up
bindsym XF86AudioMicMute exec ~/.config/sway/scripts/notification-control.sh mic-mute-toggle
# Brightness controls
bindsym XF86MonBrightnessDown exec ~/.config/sway/scripts/notification-control.sh brightness-down
bindsym XF86MonBrightnessUp exec ~/.config/sway/scripts/notification-control.sh brightness-up
# Controlli multimediali
bindsym XF86AudioPlay exec $ipc media playPause
bindsym XF86AudioNext exec $ipc media next
bindsym XF86AudioPrev exec $ipc media previous
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym $mod+Shift+h exec handy --toggle-transcription
bindsym $mod+v exec $ipc launcher clipboard
bindsym $mod+v exec cliphist list | wofi --dmenu --pre-display-cmd "echo '%s' | cut -f 2" | cliphist decode | wl-copy
### Screenshot e Registrazione Schermo
bindsym Print exec grimshot --notify copy output && \
@ -166,6 +215,23 @@ bindsym $mod+XF86AudioMedia exec ~/.config/sway/scripts/screen-recording.sh audi
# this one not
bindsym XF86AudioMedia exec ~/.config/sway/scripts/screen-recording.sh
### Modalità per azioni di sistema (lock, logout, reboot, suspend, shutdown)
set $mode_system "What to do? (l) lock, (e) logout, (r) reboot, (Shift+s) shutdown"
mode $mode_system {
bindsym l exec swaylock -f -i $wallpaper; mode "default"
bindsym e exec swaymsg exit; mode "default"
bindsym r exec systemctl reboot; mode "default"
bindsym s exec systemctl suspend; mode "default"
bindsym Shift+s exec systemctl poweroff; mode "default"
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+Escape mode $mode_system
### Barra di stato (Waybar)
bar {
swaybar_command waybar
}
### Borders e Gaps
default_border pixel
@ -174,7 +240,7 @@ gaps outer 2
gaps inner 3
# Impostazioni dei colori per il focus delle finestre
# client.focused $gruvbox_orange $gruvbox_orange $gruvbox_bg_dark $gruvbox_orange
client.focused $gruvbox_orange $gruvbox_orange $gruvbox_bg_dark $gruvbox_orange
hide_edge_borders smart
### Impostazioni GTK per tema scuro
@ -199,16 +265,12 @@ exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY DISPLAY XDG_CU
### Applicazioni in autostart
exec keepassxc
exec nextcloud
# exec wlsunset -S 08:00 -s 18:00
exec wlsunset -S 08:00 -s 18:00
exec blueman-applet
# exec xss-lock -- swaylock -f -i $wallpaper
exec xss-lock -- swaylock -f -i $wallpaper
exec --no-startup-id easyeffects --gapplication-service
exec --no-startup-id wluma
# Avvio del polkit agent GNOME
# exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
# (Se preferisci il KDE agent, commenta la riga sopra e decommenta quella sottostante)
# exec "/usr/lib/polkit-kde-authentication-agent-1"
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec --no-startup-id gnome-keyring-daemon --start --components=pkcs11,secrets,ssh
@ -217,15 +279,17 @@ exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CU
exec dbus-update-activation-environment WAYLAND_DISPLAY DISPLAY XDG_CURRENT_DESKTOP SWAYSOCK I3SOCK XCURSOR_SIZE XCURSOR_THEME
### Notifiche Desktop e Clip History
# exec swaync
exec swaync
# exec mako
exec wl-paste --type text --watch cliphist store
exec wl-paste --type image --watch cliphist store
### Applet di rete
exec nm-applet --indicator
exec handy --start-hidden # speek to text
exec wl-paste --type text --watch cliphist store # Stores only text data
exec wl-paste --type image --watch cliphist store # Stores only image data
exec_always sh -c '/usr/bin/pkill -x qs || true; exec /usr/sbin/qs -d -c noctalia-shell'
# comando per capire come si chiama l'id della app per le regole delle finestre
# swaymsg -t get_tree
@ -236,7 +300,6 @@ for_window [instance="keepassxc"] floating enable, resize set width 70 ppt heig
for_window [app_id="pavucontrol"] floating enable, resize set width 70 ppt height 60 ppt
for_window [app_id="org.gnome.Nautilus"] floating enable, resize set width 60 ppt height 50 ppt
for_window [app_id="thunar"] floating enable, resize set width 60 ppt height 50 ppt
for_window [window_role="pop-up"] floating enable
for_window [window_role="bubble"] floating enable
@ -250,5 +313,3 @@ for_window [title="Picture in picture"] floating enable, sticky enable
for_window [title="Save File"] floating enable
for_window [app_id="firefox" title="Firefox — Sharing Indicator"] kill
include ~/.config/sway/noctalia

View File

@ -1,18 +0,0 @@
set $primary #b8bb26
set $on_primary #282828
set $secondary #fabd2f
set $tertiary #83a598
set $error #fb4934
set $surface #282828
set $on_surface #fbf1c7
set $on_surface_variant #ebdbb2
set $outline #786f6b
## Window Colours
# class border backgr. text indicator child_border
client.focused $primary $surface $on_surface $primary $primary
client.focused_inactive $outline $surface $on_surface_variant $outline $outline
client.unfocused $outline $surface $on_surface_variant $outline $outline
client.urgent $error $surface $on_surface $error $error
client.placeholder $surface $surface $on_surface_variant $surface $surface
client.background $surface

View File

@ -1,25 +0,0 @@
#!/bin/sh
action="$1"
internal="${2:-eDP-1}"
external_active_count="$(swaymsg -t get_outputs | python3 -c 'import json,sys; internal=sys.argv[1]; outputs=json.load(sys.stdin); print(sum(1 for o in outputs if o.get("active") and o.get("name") != internal and not o.get("non_desktop", False)))' "$internal" 2>/dev/null)"
if [ -z "$external_active_count" ]; then
external_active_count=0
fi
case "$action" in
on)
if [ "$external_active_count" -gt 0 ]; then
swaymsg "output $internal disable"
else
/usr/sbin/playerctl -a pause >/dev/null 2>&1 || true
/usr/sbin/qs -c noctalia-shell ipc call lockScreen lock
systemctl suspend
fi
;;
off)
swaymsg "output $internal enable"
;;
esac

View File

@ -1,22 +0,0 @@
MIT License
Copyright (c) 2024 Ben Yip
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2020 Subhaditya Nath
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,32 +0,0 @@
<div align="center">
<img src="https://github.com/sxyazi/yazi/blob/main/assets/logo.png?raw=true" alt="Yazi logo" width="20%">
</div>
<h3 align="center">
Gruvbox Dark Flavor for <a href="https://github.com/sxyazi/yazi">Yazi</a>
</h3>
## 👀 Preview
<img src="preview.png" width="600" />
## 🎨 Installation
```bash
ya pack -a bennyyip/gruvbox-dark
```
## ⚙️ Usage
Add the these lines to your `theme.toml` configuration file to use it:
```toml
[flavor]
dark = "gruvbox-dark"
```
## 📜 License
The flavor is MIT-licensed, and the included tmTheme is also MIT-licensed.
Check the [LICENSE](LICENSE) and [LICENSE-tmtheme](LICENSE-tmtheme) file for more details.

View File

@ -1,153 +0,0 @@
# vim:fileencoding=utf-8:foldmethod=marker
# : Manager {{{
[manager]
cwd = { fg = "#83a598" }
# Hovered
hovered = { reversed = true, bold = true }
# hovered = { bg = "#3c3836", bold = true }
preview_hovered = { underline = true }
# Find
find_keyword = { fg = "#b8bb26", italic = true }
find_position = { fg = "#fe8019", bg = "reset", italic = true }
# Marker
marker_copied = { fg = "#8ec07c", bg = "#8ec07c" }
marker_cut = { fg = "#d3869b", bg = "#d3869b" }
marker_marked = { fg = "#83a598", bg = "#83a598" }
marker_selected = { fg = "#fbf1c7", bg = "#fbf1c7" }
# Tab
tab_active = { fg = "#282828", bg = "#a89984" }
tab_inactive = { fg = "#a89984", bg = "#504945" }
tab_width = 1
# Count
count_copied = { fg = "#282828", bg = "#8ec07c" }
count_cut = { fg = "#282828", bg = "#d3869b" }
count_selected = { fg = "#282828", bg = "#fbf1c7" }
# Border
border_symbol = "│"
border_style = { fg = "#665c54" }
# : }}}
# : Mode {{{
[mode]
normal_main = { fg = "#282828", bg = "#a89984", bold = true }
normal_alt = { fg = "#a89984", bg = "#504945" }
select_main = { fg = "#282828", bg = "#fe8019", bold = true }
select_alt = { fg = "#a89984", bg = "#504945" }
unset_main = { fg = "#282828", bg = "#b8bb26", bold = true }
unset_alt = { fg = "#a89984", bg = "#504945" }
# : }}}
# : Status {{{
[status]
sep_left = { open = "\ue0be", close = "\ue0b8" }
sep_right = { open = "\ue0be", close = "\ue0b8" }
overall = { }
# Progress
progress_label = { fg = "#ebdbb2", bold = true }
progress_normal = { fg = "#504945", bg = "#3c3836" }
progress_error = { fg = "#fb4934", bg = "#3c3836" }
# Permissions
perm_type = { fg = "#504945" }
perm_read = { fg = "#b8bb26" }
perm_write = { fg = "#fb4934" }
perm_exec = { fg = "#b8bb26" }
perm_sep = { fg = "#665c54" }
# : }}}
# : Select {{{
[pick]
border = { fg = "#458588" }
active = { fg = "#d3869b", bold = true }
inactive = {}
# : }}}
# : Input {{{
[input]
border = { fg = "#ebdbb2" }
title = {}
value = {}
selected = { reversed = true }
# : }}}
# : Tasks {{{
[tasks]
border = { fg = "#504945" }
title = {}
hovered = { underline = true }
# : }}}
# : Which {{{
[which]
mask = { bg = "#3c3836" }
cand = { fg = "#83a598" }
rest = { fg = "#928374" }
desc = { fg = "#fe8019" }
separator = "  "
separator_style = { fg = "#504945" }
# : }}}
# : Help {{{
[help]
on = { fg = "#83a598" }
run = { fg = "#d3869b" }
hovered = { reversed = true, bold = true }
footer = { fg = "#3c3836", bg = "#a89984" }
# : }}}
# : Notify {{{
[notify]
title_info = { fg = "#8ec07c" }
title_warn = { fg = "#fbf1c7" }
title_error = { fg = "#d3869b" }
# : }}}
# : File-specific styles {{{
[filetype]
rules = [
# Images
{ mime = "image/*", fg = "#d3869b" },
# Media
{ mime = "{audio,video}/*", fg = "#fabd2f" },
# Archives
{ mime = "application/*zip", fg = "#fb4934" },
{ mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "#fb4934" },
# Documents
{ mime = "application/{pdf,doc,rtf,vnd.*}", fg = "#689d6a" },
# Fallback
{ name = "*", fg = "#ebdbb2" },
{ name = "*/", fg = "#83a598" },
]
# : }}}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 MiB

File diff suppressed because it is too large Load Diff

View File

@ -1,368 +0,0 @@
# A TOML linter such as https://taplo.tamasfe.dev/ can use this schema to validate your config.
# If you encounter any issues, please make an issue at https://github.com/yazi-rs/schemas.
"$schema" = "https://yazi-rs.github.io/schemas/keymap.json"
[mgr]
keymap = [
{ on = "<Esc>", run = "escape", desc = "Exit visual mode, clear selection, or cancel search" },
{ on = "<C-[>", run = "escape", desc = "Exit visual mode, clear selection, or cancel search" },
{ on = "q", run = "quit", desc = "Quit the process" },
{ on = "Q", run = "quit --no-cwd-file", desc = "Quit without outputting cwd-file" },
{ on = "<C-c>", run = "close", desc = "Close the current tab, or quit if it's last" },
{ on = "<C-z>", run = "suspend", desc = "Suspend the process" },
# Hopping
{ on = "k", run = "arrow prev", desc = "Previous file" },
{ on = "j", run = "arrow next", desc = "Next file" },
{ on = "<Up>", run = "arrow prev", desc = "Previous file" },
{ on = "<Down>", run = "arrow next", desc = "Next file" },
{ on = "<C-u>", run = "arrow -50%", desc = "Move cursor up half page" },
{ on = "<C-d>", run = "arrow 50%", desc = "Move cursor down half page" },
{ on = "<C-b>", run = "arrow -100%", desc = "Move cursor up one page" },
{ on = "<C-f>", run = "arrow 100%", desc = "Move cursor down one page" },
{ on = "<S-PageUp>", run = "arrow -50%", desc = "Move cursor up half page" },
{ on = "<S-PageDown>", run = "arrow 50%", desc = "Move cursor down half page" },
{ on = "<PageUp>", run = "arrow -100%", desc = "Move cursor up one page" },
{ on = "<PageDown>", run = "arrow 100%", desc = "Move cursor down one page" },
{ on = [ "g", "g" ], run = "arrow top", desc = "Go to top" },
{ on = "G", run = "arrow bot", desc = "Go to bottom" },
# Navigation
{ on = "h", run = "leave", desc = "Back to the parent directory" },
{ on = "l", run = "enter", desc = "Enter the child directory" },
{ on = "<Left>", run = "leave", desc = "Back to the parent directory" },
{ on = "<Right>", run = "enter", desc = "Enter the child directory" },
{ on = "H", run = "back", desc = "Back to previous directory" },
{ on = "L", run = "forward", desc = "Forward to next directory" },
# Toggle
{ on = "<Space>", run = [ "toggle", "arrow next" ], desc = "Toggle the current selection state" },
{ on = "<C-a>", run = "toggle_all --state=on", desc = "Select all files" },
{ on = "<C-r>", run = "toggle_all", desc = "Invert selection of all files" },
# Visual mode
{ on = "v", run = "visual_mode", desc = "Enter visual mode (selection mode)" },
{ on = "V", run = "visual_mode --unset", desc = "Enter visual mode (unset mode)" },
# Seeking
{ on = "K", run = "seek -5", desc = "Seek up 5 units in the preview" },
{ on = "J", run = "seek 5", desc = "Seek down 5 units in the preview" },
# Spotting
{ on = "<Tab>", run = "spot", desc = "Spot hovered file" },
# Operation
{ on = "o", run = "open", desc = "Open selected files" },
{ on = "O", run = "open --interactive", desc = "Open selected files interactively" },
{ on = "<Enter>", run = "open", desc = "Open selected files" },
{ on = "<S-Enter>", run = "open --interactive", desc = "Open selected files interactively" },
{ on = "y", run = "yank", desc = "Yank selected files (copy)" },
{ on = "x", run = "yank --cut", desc = "Yank selected files (cut)" },
{ on = "p", run = "paste", desc = "Paste yanked files" },
{ on = "P", run = "paste --force", desc = "Paste yanked files (overwrite if the destination exists)" },
{ on = "-", run = "link", desc = "Symlink the absolute path of yanked files" },
{ on = "_", run = "link --relative", desc = "Symlink the relative path of yanked files" },
{ on = "<C-->", run = "hardlink", desc = "Hardlink yanked files" },
{ on = "Y", run = "unyank", desc = "Cancel the yank status" },
{ on = "X", run = "unyank", desc = "Cancel the yank status" },
{ on = "d", run = "remove", desc = "Trash selected files" },
{ on = "D", run = "remove --permanently", desc = "Permanently delete selected files" },
{ on = "a", run = "create", desc = "Create a file (ends with / for directories)" },
{ on = "r", run = "rename --cursor=before_ext", desc = "Rename selected file(s)" },
{ on = ";", run = "shell --interactive", desc = "Run a shell command" },
{ on = ":", run = "shell --block --interactive", desc = "Run a shell command (block until finishes)" },
{ on = ".", run = "hidden toggle", desc = "Toggle the visibility of hidden files" },
{ on = "s", run = "search --via=fd", desc = "Search files by name via fd" },
{ on = "S", run = "search --via=rg", desc = "Search files by content via ripgrep" },
{ on = "<C-s>", run = "escape --search", desc = "Cancel the ongoing search" },
{ on = "z", run = "plugin fzf", desc = "Jump to a file/directory via fzf" },
{ on = "Z", run = "plugin zoxide", desc = "Jump to a directory via zoxide" },
# Linemode
{ on = [ "m", "s" ], run = "linemode size", desc = "Linemode: size" },
{ on = [ "m", "p" ], run = "linemode permissions", desc = "Linemode: permissions" },
{ on = [ "m", "b" ], run = "linemode btime", desc = "Linemode: btime" },
{ on = [ "m", "m" ], run = "linemode mtime", desc = "Linemode: mtime" },
{ on = [ "m", "o" ], run = "linemode owner", desc = "Linemode: owner" },
{ on = [ "m", "n" ], run = "linemode none", desc = "Linemode: none" },
# Copy
{ on = [ "c", "c" ], run = "copy path", desc = "Copy the file path" },
{ on = [ "c", "d" ], run = "copy dirname", desc = "Copy the directory path" },
{ on = [ "c", "f" ], run = "copy filename", desc = "Copy the filename" },
{ on = [ "c", "n" ], run = "copy name_without_ext", desc = "Copy the filename without extension" },
# Filter
{ on = "f", run = "filter --smart", desc = "Filter files" },
# Find
{ on = "/", run = "find --smart", desc = "Find next file" },
{ on = "?", run = "find --previous --smart", desc = "Find previous file" },
{ on = "n", run = "find_arrow", desc = "Next found" },
{ on = "N", run = "find_arrow --previous", desc = "Previous found" },
# Sorting
{ on = [ ",", "m" ], run = [ "sort mtime --reverse=no", "linemode mtime" ], desc = "Sort by modified time" },
{ on = [ ",", "M" ], run = [ "sort mtime --reverse", "linemode mtime" ], desc = "Sort by modified time (reverse)" },
{ on = [ ",", "b" ], run = [ "sort btime --reverse=no", "linemode btime" ], desc = "Sort by birth time" },
{ on = [ ",", "B" ], run = [ "sort btime --reverse", "linemode btime" ], desc = "Sort by birth time (reverse)" },
{ on = [ ",", "e" ], run = "sort extension --reverse=no", desc = "Sort by extension" },
{ on = [ ",", "E" ], run = "sort extension --reverse", desc = "Sort by extension (reverse)" },
{ on = [ ",", "a" ], run = "sort alphabetical --reverse=no", desc = "Sort alphabetically" },
{ on = [ ",", "A" ], run = "sort alphabetical --reverse", desc = "Sort alphabetically (reverse)" },
{ on = [ ",", "n" ], run = "sort natural --reverse=no", desc = "Sort naturally" },
{ on = [ ",", "N" ], run = "sort natural --reverse", desc = "Sort naturally (reverse)" },
{ on = [ ",", "s" ], run = [ "sort size --reverse=no", "linemode size" ], desc = "Sort by size" },
{ on = [ ",", "S" ], run = [ "sort size --reverse", "linemode size" ], desc = "Sort by size (reverse)" },
{ on = [ ",", "r" ], run = "sort random --reverse=no", desc = "Sort randomly" },
# Goto
{ on = [ "g", "h" ], run = "cd ~", desc = "Go home" },
{ on = [ "g", "c" ], run = "cd ~/.config", desc = "Go ~/.config" },
{ on = [ "g", "d" ], run = "cd ~/Downloads", desc = "Go ~/Downloads" },
{ on = [ "g", "<Space>" ], run = "cd --interactive", desc = "Jump interactively" },
{ on = [ "g", "f" ], run = "follow", desc = "Follow hovered symlink" },
# Tabs
{ on = "t", run = "tab_create --current", desc = "Create a new tab with CWD" },
{ on = "1", run = "tab_switch 0", desc = "Switch to first tab" },
{ on = "2", run = "tab_switch 1", desc = "Switch to second tab" },
{ on = "3", run = "tab_switch 2", desc = "Switch to third tab" },
{ on = "4", run = "tab_switch 3", desc = "Switch to fourth tab" },
{ on = "5", run = "tab_switch 4", desc = "Switch to fifth tab" },
{ on = "6", run = "tab_switch 5", desc = "Switch to sixth tab" },
{ on = "7", run = "tab_switch 6", desc = "Switch to seventh tab" },
{ on = "8", run = "tab_switch 7", desc = "Switch to eighth tab" },
{ on = "9", run = "tab_switch 8", desc = "Switch to ninth tab" },
{ on = "[", run = "tab_switch -1 --relative", desc = "Switch to previous tab" },
{ on = "]", run = "tab_switch 1 --relative", desc = "Switch to next tab" },
{ on = "{", run = "tab_swap -1", desc = "Swap current tab with previous tab" },
{ on = "}", run = "tab_swap 1", desc = "Swap current tab with next tab" },
# Tasks
{ on = "w", run = "tasks:show", desc = "Show task manager" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[tasks]
keymap = [
{ on = "<Esc>", run = "close", desc = "Close task manager" },
{ on = "<C-[>", run = "close", desc = "Close task manager" },
{ on = "<C-c>", run = "close", desc = "Close task manager" },
{ on = "w", run = "close", desc = "Close task manager" },
{ on = "k", run = "arrow prev", desc = "Previous task" },
{ on = "j", run = "arrow next", desc = "Next task" },
{ on = "<Up>", run = "arrow prev", desc = "Previous task" },
{ on = "<Down>", run = "arrow next", desc = "Next task" },
{ on = "<Enter>", run = "inspect", desc = "Inspect the task" },
{ on = "x", run = "cancel", desc = "Cancel the task" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[spot]
keymap = [
{ on = "<Esc>", run = "close", desc = "Close the spot" },
{ on = "<C-[>", run = "close", desc = "Close the spot" },
{ on = "<C-c>", run = "close", desc = "Close the spot" },
{ on = "<Tab>", run = "close", desc = "Close the spot" },
{ on = "k", run = "arrow prev", desc = "Previous line" },
{ on = "j", run = "arrow next", desc = "Next line" },
{ on = "h", run = "swipe prev", desc = "Swipe to previous file" },
{ on = "l", run = "swipe next", desc = "Swipe to next file" },
{ on = "<Up>", run = "arrow prev", desc = "Previous line" },
{ on = "<Down>", run = "arrow next", desc = "Next line" },
{ on = "<Left>", run = "swipe prev", desc = "Swipe to previous file" },
{ on = "<Right>", run = "swipe next", desc = "Swipe to next file" },
# Copy
{ on = [ "c", "c" ], run = "copy cell", desc = "Copy selected cell" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[pick]
keymap = [
{ on = "<Esc>", run = "close", desc = "Cancel pick" },
{ on = "<C-[>", run = "close", desc = "Cancel pick" },
{ on = "<C-c>", run = "close", desc = "Cancel pick" },
{ on = "<Enter>", run = "close --submit", desc = "Submit the pick" },
{ on = "k", run = "arrow prev", desc = "Previous option" },
{ on = "j", run = "arrow next", desc = "Next option" },
{ on = "<Up>", run = "arrow prev", desc = "Previous option" },
{ on = "<Down>", run = "arrow next", desc = "Next option" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[input]
keymap = [
{ on = "<C-c>", run = "close", desc = "Cancel input" },
{ on = "<Enter>", run = "close --submit", desc = "Submit input" },
{ on = "<Esc>", run = "escape", desc = "Back to normal mode, or cancel input" },
{ on = "<C-[>", run = "escape", desc = "Back to normal mode, or cancel input" },
# Mode
{ on = "i", run = "insert", desc = "Enter insert mode" },
{ on = "I", run = [ "move first-char", "insert" ], desc = "Move to the BOL, and enter insert mode" },
{ on = "a", run = "insert --append", desc = "Enter append mode" },
{ on = "A", run = [ "move eol", "insert --append" ], desc = "Move to the EOL, and enter append mode" },
{ on = "v", run = "visual", desc = "Enter visual mode" },
{ on = "r", run = "replace", desc = "Replace a single character" },
# Selection
{ on = "V", run = [ "move bol", "visual", "move eol" ], desc = "Select from BOL to EOL" },
{ on = "<C-A>", run = [ "move eol", "visual", "move bol" ], desc = "Select from EOL to BOL" },
{ on = "<C-E>", run = [ "move bol", "visual", "move eol" ], desc = "Select from BOL to EOL" },
# Character-wise movement
{ on = "h", run = "move -1", desc = "Move back a character" },
{ on = "l", run = "move 1", desc = "Move forward a character" },
{ on = "<Left>", run = "move -1", desc = "Move back a character" },
{ on = "<Right>", run = "move 1", desc = "Move forward a character" },
{ on = "<C-b>", run = "move -1", desc = "Move back a character" },
{ on = "<C-f>", run = "move 1", desc = "Move forward a character" },
# Word-wise movement
{ on = "b", run = "backward", desc = "Move back to the start of the current or previous word" },
{ on = "B", run = "backward --far", desc = "Move back to the start of the current or previous WORD" },
{ on = "w", run = "forward", desc = "Move forward to the start of the next word" },
{ on = "W", run = "forward --far", desc = "Move forward to the start of the next WORD" },
{ on = "e", run = "forward --end-of-word", desc = "Move forward to the end of the current or next word" },
{ on = "E", run = "forward --far --end-of-word", desc = "Move forward to the end of the current or next WORD" },
{ on = "<A-b>", run = "backward", desc = "Move back to the start of the current or previous word" },
{ on = "<A-f>", run = "forward --end-of-word", desc = "Move forward to the end of the current or next word" },
# Line-wise movement
{ on = "0", run = "move bol", desc = "Move to the BOL" },
{ on = "$", run = "move eol", desc = "Move to the EOL" },
{ on = "_", run = "move first-char", desc = "Move to the first non-whitespace character" },
{ on = "^", run = "move first-char", desc = "Move to the first non-whitespace character" },
{ on = "<C-a>", run = "move bol", desc = "Move to the BOL" },
{ on = "<C-e>", run = "move eol", desc = "Move to the EOL" },
{ on = "<Home>", run = "move bol", desc = "Move to the BOL" },
{ on = "<End>", run = "move eol", desc = "Move to the EOL" },
# Delete
{ on = "<Backspace>", run = "backspace", desc = "Delete the character before the cursor" },
{ on = "<Delete>", run = "backspace --under", desc = "Delete the character under the cursor" },
{ on = "<C-h>", run = "backspace", desc = "Delete the character before the cursor" },
{ on = "<C-d>", run = "backspace --under", desc = "Delete the character under the cursor" },
# Kill
{ on = "<C-u>", run = "kill bol", desc = "Kill backwards to the BOL" },
{ on = "<C-k>", run = "kill eol", desc = "Kill forwards to the EOL" },
{ on = "<C-w>", run = "kill backward", desc = "Kill backwards to the start of the current word" },
{ on = "<A-d>", run = "kill forward", desc = "Kill forwards to the end of the current word" },
# Cut/Yank/Paste
{ on = "d", run = "delete --cut", desc = "Cut selected characters" },
{ on = "D", run = [ "delete --cut", "move eol" ], desc = "Cut until EOL" },
{ on = "c", run = "delete --cut --insert", desc = "Cut selected characters, and enter insert mode" },
{ on = "C", run = [ "delete --cut --insert", "move eol" ], desc = "Cut until EOL, and enter insert mode" },
{ on = "s", run = [ "delete --cut --insert", "move 1" ], desc = "Cut current character, and enter insert mode" },
{ on = "S", run = [ "move bol", "delete --cut --insert", "move eol" ], desc = "Cut from BOL until EOL, and enter insert mode" },
{ on = "x", run = [ "delete --cut", "move 1 --in-operating" ], desc = "Cut current character" },
{ on = "y", run = "yank", desc = "Copy selected characters" },
{ on = "p", run = "paste", desc = "Paste copied characters after the cursor" },
{ on = "P", run = "paste --before", desc = "Paste copied characters before the cursor" },
# Undo/Redo
{ on = "u", run = "undo", desc = "Undo the last operation" },
{ on = "<C-r>", run = "redo", desc = "Redo the last operation" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[confirm]
keymap = [
{ on = "<Esc>", run = "close", desc = "Cancel the confirm" },
{ on = "<C-[>", run = "close", desc = "Cancel the confirm" },
{ on = "<C-c>", run = "close", desc = "Cancel the confirm" },
{ on = "<Enter>", run = "close --submit", desc = "Submit the confirm" },
{ on = "n", run = "close", desc = "Cancel the confirm" },
{ on = "y", run = "close --submit", desc = "Submit the confirm" },
{ on = "k", run = "arrow prev", desc = "Previous line" },
{ on = "j", run = "arrow next", desc = "Next line" },
{ on = "<Up>", run = "arrow prev", desc = "Previous line" },
{ on = "<Down>", run = "arrow next", desc = "Next line" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[cmp]
keymap = [
{ on = "<C-c>", run = "close", desc = "Cancel completion" },
{ on = "<Tab>", run = "close --submit", desc = "Submit the completion" },
{ on = "<Enter>", run = [ "close --submit", "input:close --submit" ], desc = "Complete and submit the input" },
{ on = "<A-k>", run = "arrow prev", desc = "Previous item" },
{ on = "<A-j>", run = "arrow next", desc = "Next item" },
{ on = "<Up>", run = "arrow prev", desc = "Previous item" },
{ on = "<Down>", run = "arrow next", desc = "Next item" },
{ on = "<C-p>", run = "arrow prev", desc = "Previous item" },
{ on = "<C-n>", run = "arrow next", desc = "Next item" },
# Help
{ on = "~", run = "help", desc = "Open help" },
{ on = "<F1>", run = "help", desc = "Open help" },
]
[help]
keymap = [
{ on = "<Esc>", run = "escape", desc = "Clear the filter, or hide the help" },
{ on = "<C-[>", run = "escape", desc = "Clear the filter, or hide the help" },
{ on = "<C-c>", run = "close", desc = "Hide the help" },
# Navigation
{ on = "k", run = "arrow prev", desc = "Previous line" },
{ on = "j", run = "arrow next", desc = "Next line" },
{ on = "<Up>", run = "arrow prev", desc = "Previous line" },
{ on = "<Down>", run = "arrow next", desc = "Next line" },
# Filtering
{ on = "f", run = "filter", desc = "Filter help items" },
]

View File

@ -1,7 +0,0 @@
[plugin]
deps = []
[[flavor.deps]]
use = "bennyyip/gruvbox-dark"
rev = "91fdfa7"
hash = "f48f510e5505f5d01e79c4f8257ec5cb"

View File

@ -1,958 +0,0 @@
# If the user's terminal is in dark mode, Yazi will load `theme-dark.toml` on startup; otherwise, `theme-light.toml`.
# You can override any parts of them that are not related to the dark/light mode in your own `theme.toml`.
# If you want to dynamically override their content based on dark/light mode, you can specify two different flavors
# for dark and light modes under `[flavor]`, and do so in those flavors instead.
# "$schema" = "https://yazi-rs.github.io/schemas/theme.json"
# vim:fileencoding=utf-8:foldmethod=marker
# : Flavor {{{
[flavor]
dark = "gruvbox-dark"
light = ""
# : }}}
# # : Manager {{{
#
# [mgr]
# cwd = { fg = "cyan" }
#
# # Hovered
# hovered = { reversed = true }
# preview_hovered = { underline = true }
#
# # Find
# find_keyword = { fg = "yellow", bold = true, italic = true, underline = true }
# find_position = { fg = "magenta", bg = "reset", bold = true, italic = true }
#
# # Symlink
# symlink_target = { italic = true }
#
# # Marker
# marker_copied = { fg = "lightgreen", bg = "lightgreen" }
# marker_cut = { fg = "lightred", bg = "lightred" }
# marker_marked = { fg = "lightcyan", bg = "lightcyan" }
# marker_selected = { fg = "lightyellow", bg = "lightyellow" }
#
# # Count
# count_copied = { fg = "white", bg = "green" }
# count_cut = { fg = "white", bg = "red" }
# count_selected = { fg = "white", bg = "yellow" }
#
# # Border
# border_symbol = "│"
# border_style = { fg = "gray" }
#
# # Highlighting
# syntect_theme = ""
#
# # : }}}
#
#
# # : Tabs {{{
#
# [tabs]
# active = { bg = "blue", bold = true }
# inactive = { fg = "blue", bg = "gray" }
#
# # Separator
# sep_inner = { open = "", close = "" }
# sep_outer = { open = "", close = "" }
#
# # : }}}
#
#
# # : Mode {{{
#
# [mode]
# normal_main = { bg = "blue", bold = true }
# normal_alt = { fg = "blue", bg = "gray" }
#
# # Select mode
# select_main = { bg = "red", bold = true }
# select_alt = { fg = "red", bg = "gray" }
#
# # Unset mode
# unset_main = { bg = "red", bold = true }
# unset_alt = { fg = "red", bg = "gray" }
#
# # : }}}
#
#
# # : Status bar {{{
#
# [status]
# overall = {}
# sep_left = { open = "", close = "" }
# sep_right = { open = "", close = "" }
#
# # Permissions
# perm_sep = { fg = "darkgray" }
# perm_type = { fg = "green" }
# perm_read = { fg = "yellow" }
# perm_write = { fg = "red" }
# perm_exec = { fg = "cyan" }
#
# # Progress
# progress_label = { bold = true }
# progress_normal = { fg = "blue", bg = "black" }
# progress_error = { fg = "red", bg = "black" }
#
# # : }}}
#
#
# # : Which {{{
#
# [which]
# cols = 3
# mask = { bg = "black" }
# cand = { fg = "lightcyan" }
# rest = { fg = "darkgray" }
# desc = { fg = "lightmagenta" }
# separator = "  "
# separator_style = { fg = "darkgray" }
#
# # : }}}
#
#
# # : Confirmation {{{
#
# [confirm]
# border = { fg = "blue" }
# title = { fg = "blue" }
# content = {}
# list = {}
# btn_yes = { reversed = true }
# btn_no = {}
# btn_labels = [ " [Y]es ", " (N)o " ]
#
# # : }}}
#
#
# # : Spotter {{{
#
# [spot]
# border = { fg = "blue" }
# title = { fg = "blue" }
#
# # Table
# tbl_col = { fg = "blue" }
# tbl_cell = { fg = "yellow", reversed = true }
#
# # : }}}
#
#
# # : Notification {{{
#
# [notify]
# title_info = { fg = "green" }
# title_warn = { fg = "yellow" }
# title_error = { fg = "red" }
#
# # Icons
# icon_info = ""
# icon_warn = ""
# icon_error = ""
#
# # : }}}
#
#
# # : Picker {{{
#
# [pick]
# border = { fg = "blue" }
# active = { fg = "magenta", bold = true }
# inactive = {}
#
# # : }}}
#
#
# # : Input {{{
#
# [input]
# border = { fg = "blue" }
# title = {}
# value = {}
# selected = { reversed = true }
#
# # : }}}
#
#
# # : Completion {{{
#
# [cmp]
# border = { fg = "blue" }
# active = { reversed = true }
# inactive = {}
#
# # Icons
# icon_file = ""
# icon_folder = ""
# icon_command = ""
#
# # : }}}
#
#
# # : Task manager {{{
#
# [tasks]
# border = { fg = "blue" }
# title = {}
# hovered = { fg = "magenta", underline = true }
#
# # : }}}
#
#
# # : Help menu {{{
#
# [help]
# on = { fg = "cyan" }
# run = { fg = "magenta" }
# desc = {}
# hovered = { reversed = true, bold = true }
# footer = { fg = "black", bg = "white" }
#
# # : }}}
#
#
# # : File-specific styles {{{
#
# [filetype]
# rules = [
# # Images
# { mime = "image/*", fg = "yellow" },
#
# # Media
# { mime = "{audio,video}/*", fg = "magenta" },
#
# # Archives
# { mime = "application/{zip,rar,7z*,tar,gzip,xz,zstd,bzip*,lzma,compress,archive,cpio,arj,xar,ms-cab*}", fg = "red" },
#
# # Documents
# { mime = "application/{pdf,doc,rtf}", fg = "cyan" },
#
# # Empty files
# # { mime = "inode/empty", fg = "red" },
#
# # Special files
# { name = "*", is = "orphan", bg = "red" },
# { name = "*", is = "exec" , fg = "green" },
#
# # Dummy files
# { name = "*", is = "dummy", bg = "red" },
# { name = "*/", is = "dummy", bg = "red" },
#
# # Fallback
# # { name = "*", fg = "white" },
# { name = "*/", fg = "blue" }
# ]
#
# # : }}}
#
#
# # : Icons {{{
#
# [icon]
# globs = []
# dirs = [
# { name = ".config", text = "" },
# { name = ".git", text = "" },
# { name = ".github", text = "" },
# { name = ".npm", text = "" },
# { name = "Desktop", text = "" },
# { name = "Development", text = "" },
# { name = "Documents", text = "" },
# { name = "Downloads", text = "" },
# { name = "Library", text = "" },
# { name = "Movies", text = "" },
# { name = "Music", text = "" },
# { name = "Pictures", text = "" },
# { name = "Public", text = "" },
# { name = "Videos", text = "" },
# ]
# files = [
# { name = ".babelrc", text = "", fg = "#cbcb41" },
# { name = ".bash_profile", text = "", fg = "#89e051" },
# { name = ".bashrc", text = "", fg = "#89e051" },
# { name = ".clang-format", text = "", fg = "#6d8086" },
# { name = ".clang-tidy", text = "", fg = "#6d8086" },
# { name = ".codespellrc", text = "󰓆", fg = "#35da60" },
# { name = ".condarc", text = "", fg = "#43b02a" },
# { name = ".dockerignore", text = "󰡨", fg = "#458ee6" },
# { name = ".ds_store", text = "", fg = "#41535b" },
# { name = ".editorconfig", text = "", fg = "#fff2f2" },
# { name = ".env", text = "", fg = "#faf743" },
# { name = ".eslintignore", text = "", fg = "#4b32c3" },
# { name = ".eslintrc", text = "", fg = "#4b32c3" },
# { name = ".git-blame-ignore-revs", text = "", fg = "#f54d27" },
# { name = ".gitattributes", text = "", fg = "#f54d27" },
# { name = ".gitconfig", text = "", fg = "#f54d27" },
# { name = ".gitignore", text = "", fg = "#f54d27" },
# { name = ".gitlab-ci.yml", text = "", fg = "#e24329" },
# { name = ".gitmodules", text = "", fg = "#f54d27" },
# { name = ".gtkrc-2.0", text = "", fg = "#ffffff" },
# { name = ".gvimrc", text = "", fg = "#019833" },
# { name = ".justfile", text = "", fg = "#6d8086" },
# { name = ".luacheckrc", text = "", fg = "#00a2ff" },
# { name = ".luaurc", text = "", fg = "#00a2ff" },
# { name = ".mailmap", text = "󰊢", fg = "#f54d27" },
# { name = ".nanorc", text = "", fg = "#440077" },
# { name = ".npmignore", text = "", fg = "#e8274b" },
# { name = ".npmrc", text = "", fg = "#e8274b" },
# { name = ".nuxtrc", text = "󱄆", fg = "#00c58e" },
# { name = ".nvmrc", text = "", fg = "#5fa04e" },
# { name = ".pre-commit-config.yaml", text = "󰛢", fg = "#f8b424" },
# { name = ".prettierignore", text = "", fg = "#4285f4" },
# { name = ".prettierrc", text = "", fg = "#4285f4" },
# { name = ".prettierrc.cjs", text = "", fg = "#4285f4" },
# { name = ".prettierrc.js", text = "", fg = "#4285f4" },
# { name = ".prettierrc.json", text = "", fg = "#4285f4" },
# { name = ".prettierrc.json5", text = "", fg = "#4285f4" },
# { name = ".prettierrc.mjs", text = "", fg = "#4285f4" },
# { name = ".prettierrc.toml", text = "", fg = "#4285f4" },
# { name = ".prettierrc.yaml", text = "", fg = "#4285f4" },
# { name = ".prettierrc.yml", text = "", fg = "#4285f4" },
# { name = ".pylintrc", text = "", fg = "#6d8086" },
# { name = ".settings.json", text = "", fg = "#854cc7" },
# { name = ".SRCINFO", text = "󰣇", fg = "#0f94d2" },
# { name = ".vimrc", text = "", fg = "#019833" },
# { name = ".Xauthority", text = "", fg = "#e54d18" },
# { name = ".xinitrc", text = "", fg = "#e54d18" },
# { name = ".Xresources", text = "", fg = "#e54d18" },
# { name = ".xsession", text = "", fg = "#e54d18" },
# { name = ".zprofile", text = "", fg = "#89e051" },
# { name = ".zshenv", text = "", fg = "#89e051" },
# { name = ".zshrc", text = "", fg = "#89e051" },
# { name = "_gvimrc", text = "", fg = "#019833" },
# { name = "_vimrc", text = "", fg = "#019833" },
# { name = "AUTHORS", text = "", fg = "#a172ff" },
# { name = "AUTHORS.txt", text = "", fg = "#a172ff" },
# { name = "brewfile", text = "", fg = "#701516" },
# { name = "bspwmrc", text = "", fg = "#2f2f2f" },
# { name = "build", text = "", fg = "#89e051" },
# { name = "build.gradle", text = "", fg = "#005f87" },
# { name = "build.zig.zon", text = "", fg = "#f69a1b" },
# { name = "bun.lock", text = "", fg = "#eadcd1" },
# { name = "bun.lockb", text = "", fg = "#eadcd1" },
# { name = "cantorrc", text = "", fg = "#1c99f3" },
# { name = "checkhealth", text = "󰓙", fg = "#75b4fb" },
# { name = "cmakelists.txt", text = "", fg = "#dce3eb" },
# { name = "code_of_conduct", text = "", fg = "#e41662" },
# { name = "code_of_conduct.md", text = "", fg = "#e41662" },
# { name = "commit_editmsg", text = "", fg = "#f54d27" },
# { name = "commitlint.config.js", text = "󰜘", fg = "#2b9689" },
# { name = "commitlint.config.ts", text = "󰜘", fg = "#2b9689" },
# { name = "compose.yaml", text = "󰡨", fg = "#458ee6" },
# { name = "compose.yml", text = "󰡨", fg = "#458ee6" },
# { name = "config", text = "", fg = "#6d8086" },
# { name = "containerfile", text = "󰡨", fg = "#458ee6" },
# { name = "copying", text = "", fg = "#cbcb41" },
# { name = "copying.lesser", text = "", fg = "#cbcb41" },
# { name = "Directory.Build.props", text = "", fg = "#00a2ff" },
# { name = "Directory.Build.targets", text = "", fg = "#00a2ff" },
# { name = "Directory.Packages.props", text = "", fg = "#00a2ff" },
# { name = "docker-compose.yaml", text = "󰡨", fg = "#458ee6" },
# { name = "docker-compose.yml", text = "󰡨", fg = "#458ee6" },
# { name = "dockerfile", text = "󰡨", fg = "#458ee6" },
# { name = "eslint.config.cjs", text = "", fg = "#4b32c3" },
# { name = "eslint.config.js", text = "", fg = "#4b32c3" },
# { name = "eslint.config.mjs", text = "", fg = "#4b32c3" },
# { name = "eslint.config.ts", text = "", fg = "#4b32c3" },
# { name = "ext_typoscript_setup.txt", text = "", fg = "#ff8700" },
# { name = "favicon.ico", text = "", fg = "#cbcb41" },
# { name = "fp-info-cache", text = "", fg = "#ffffff" },
# { name = "fp-lib-table", text = "", fg = "#ffffff" },
# { name = "FreeCAD.conf", text = "", fg = "#cb333b" },
# { name = "Gemfile", text = "", fg = "#701516" },
# { name = "gnumakefile", text = "", fg = "#6d8086" },
# { name = "go.mod", text = "", fg = "#00add8" },
# { name = "go.sum", text = "", fg = "#00add8" },
# { name = "go.work", text = "", fg = "#00add8" },
# { name = "gradle-wrapper.properties", text = "", fg = "#005f87" },
# { name = "gradle.properties", text = "", fg = "#005f87" },
# { name = "gradlew", text = "", fg = "#005f87" },
# { name = "groovy", text = "", fg = "#4a687c" },
# { name = "gruntfile.babel.js", text = "", fg = "#e37933" },
# { name = "gruntfile.coffee", text = "", fg = "#e37933" },
# { name = "gruntfile.js", text = "", fg = "#e37933" },
# { name = "gruntfile.ts", text = "", fg = "#e37933" },
# { name = "gtkrc", text = "", fg = "#ffffff" },
# { name = "gulpfile.babel.js", text = "", fg = "#cc3e44" },
# { name = "gulpfile.coffee", text = "", fg = "#cc3e44" },
# { name = "gulpfile.js", text = "", fg = "#cc3e44" },
# { name = "gulpfile.ts", text = "", fg = "#cc3e44" },
# { name = "hypridle.conf", text = "", fg = "#00aaae" },
# { name = "hyprland.conf", text = "", fg = "#00aaae" },
# { name = "hyprlandd.conf", text = "", fg = "#00aaae" },
# { name = "hyprlock.conf", text = "", fg = "#00aaae" },
# { name = "hyprpaper.conf", text = "", fg = "#00aaae" },
# { name = "i18n.config.js", text = "󰗊", fg = "#7986cb" },
# { name = "i18n.config.ts", text = "󰗊", fg = "#7986cb" },
# { name = "i3blocks.conf", text = "", fg = "#e8ebee" },
# { name = "i3status.conf", text = "", fg = "#e8ebee" },
# { name = "index.theme", text = "", fg = "#2db96f" },
# { name = "ionic.config.json", text = "", fg = "#4f8ff7" },
# { name = "justfile", text = "", fg = "#6d8086" },
# { name = "kalgebrarc", text = "", fg = "#1c99f3" },
# { name = "kdeglobals", text = "", fg = "#1c99f3" },
# { name = "kdenlive-layoutsrc", text = "", fg = "#83b8f2" },
# { name = "kdenliverc", text = "", fg = "#83b8f2" },
# { name = "kritadisplayrc", text = "", fg = "#f245fb" },
# { name = "kritarc", text = "", fg = "#f245fb" },
# { name = "license", text = "", fg = "#d0bf41" },
# { name = "license.md", text = "", fg = "#d0bf41" },
# { name = "lxde-rc.xml", text = "", fg = "#909090" },
# { name = "lxqt.conf", text = "", fg = "#0192d3" },
# { name = "makefile", text = "", fg = "#6d8086" },
# { name = "mix.lock", text = "", fg = "#a074c4" },
# { name = "mpv.conf", text = "", fg = "#3b1342" },
# { name = "node_modules", text = "", fg = "#e8274b" },
# { name = "nuxt.config.cjs", text = "󱄆", fg = "#00c58e" },
# { name = "nuxt.config.js", text = "󱄆", fg = "#00c58e" },
# { name = "nuxt.config.mjs", text = "󱄆", fg = "#00c58e" },
# { name = "nuxt.config.ts", text = "󱄆", fg = "#00c58e" },
# { name = "package-lock.json", text = "", fg = "#7a0d21" },
# { name = "package.json", text = "", fg = "#e8274b" },
# { name = "PKGBUILD", text = "", fg = "#0f94d2" },
# { name = "platformio.ini", text = "", fg = "#f6822b" },
# { name = "pom.xml", text = "", fg = "#7a0d21" },
# { name = "prettier.config.cjs", text = "", fg = "#4285f4" },
# { name = "prettier.config.js", text = "", fg = "#4285f4" },
# { name = "prettier.config.mjs", text = "", fg = "#4285f4" },
# { name = "prettier.config.ts", text = "", fg = "#4285f4" },
# { name = "procfile", text = "", fg = "#a074c4" },
# { name = "PrusaSlicer.ini", text = "", fg = "#ec6b23" },
# { name = "PrusaSlicerGcodeViewer.ini", text = "", fg = "#ec6b23" },
# { name = "py.typed", text = "", fg = "#ffbc03" },
# { name = "QtProject.conf", text = "", fg = "#40cd52" },
# { name = "rakefile", text = "", fg = "#701516" },
# { name = "readme", text = "󰂺", fg = "#ededed" },
# { name = "readme.md", text = "󰂺", fg = "#ededed" },
# { name = "rmd", text = "", fg = "#519aba" },
# { name = "robots.txt", text = "󰚩", fg = "#5d7096" },
# { name = "security", text = "󰒃", fg = "#bec4c9" },
# { name = "security.md", text = "󰒃", fg = "#bec4c9" },
# { name = "settings.gradle", text = "", fg = "#005f87" },
# { name = "svelte.config.js", text = "", fg = "#ff3e00" },
# { name = "sxhkdrc", text = "", fg = "#2f2f2f" },
# { name = "sym-lib-table", text = "", fg = "#ffffff" },
# { name = "tailwind.config.js", text = "󱏿", fg = "#20c2e3" },
# { name = "tailwind.config.mjs", text = "󱏿", fg = "#20c2e3" },
# { name = "tailwind.config.ts", text = "󱏿", fg = "#20c2e3" },
# { name = "tmux.conf", text = "", fg = "#14ba19" },
# { name = "tmux.conf.local", text = "", fg = "#14ba19" },
# { name = "tsconfig.json", text = "", fg = "#519aba" },
# { name = "unlicense", text = "", fg = "#d0bf41" },
# { name = "vagrantfile", text = "", fg = "#1563ff" },
# { name = "vercel.json", text = "", fg = "#ffffff" },
# { name = "vlcrc", text = "󰕼", fg = "#ee7a00" },
# { name = "webpack", text = "󰜫", fg = "#519aba" },
# { name = "weston.ini", text = "", fg = "#ffbb01" },
# { name = "workspace", text = "", fg = "#89e051" },
# { name = "wrangler.jsonc", text = "", fg = "#f48120" },
# { name = "wrangler.toml", text = "", fg = "#f48120" },
# { name = "xmobarrc", text = "", fg = "#fd4d5d" },
# { name = "xmobarrc.hs", text = "", fg = "#fd4d5d" },
# { name = "xmonad.hs", text = "", fg = "#fd4d5d" },
# { name = "xorg.conf", text = "", fg = "#e54d18" },
# { name = "xsettingsd.conf", text = "", fg = "#e54d18" },
# ]
# exts = [
# { name = "3gp", text = "", fg = "#fd971f" },
# { name = "3mf", text = "󰆧", fg = "#888888" },
# { name = "7z", text = "", fg = "#eca517" },
# { name = "a", text = "", fg = "#dcddd6" },
# { name = "aac", text = "", fg = "#00afff" },
# { name = "ada", text = "", fg = "#599eff" },
# { name = "adb", text = "", fg = "#599eff" },
# { name = "ads", text = "", fg = "#a074c4" },
# { name = "ai", text = "", fg = "#cbcb41" },
# { name = "aif", text = "", fg = "#00afff" },
# { name = "aiff", text = "", fg = "#00afff" },
# { name = "android", text = "", fg = "#34a853" },
# { name = "ape", text = "", fg = "#00afff" },
# { name = "apk", text = "", fg = "#34a853" },
# { name = "apl", text = "", fg = "#24a148" },
# { name = "app", text = "", fg = "#9f0500" },
# { name = "applescript", text = "", fg = "#6d8085" },
# { name = "asc", text = "󰦝", fg = "#576d7f" },
# { name = "asm", text = "", fg = "#0091bd" },
# { name = "ass", text = "󰨖", fg = "#ffb713" },
# { name = "astro", text = "", fg = "#e23f67" },
# { name = "avif", text = "", fg = "#a074c4" },
# { name = "awk", text = "", fg = "#4d5a5e" },
# { name = "azcli", text = "", fg = "#0078d4" },
# { name = "bak", text = "󰁯", fg = "#6d8086" },
# { name = "bash", text = "", fg = "#89e051" },
# { name = "bat", text = "", fg = "#c1f12e" },
# { name = "bazel", text = "", fg = "#89e051" },
# { name = "bib", text = "󱉟", fg = "#cbcb41" },
# { name = "bicep", text = "", fg = "#519aba" },
# { name = "bicepparam", text = "", fg = "#9f74b3" },
# { name = "bin", text = "", fg = "#9f0500" },
# { name = "blade.php", text = "", fg = "#f05340" },
# { name = "blend", text = "󰂫", fg = "#ea7600" },
# { name = "blp", text = "󰺾", fg = "#5796e2" },
# { name = "bmp", text = "", fg = "#a074c4" },
# { name = "bqn", text = "", fg = "#24a148" },
# { name = "brep", text = "󰻫", fg = "#839463" },
# { name = "bz", text = "", fg = "#eca517" },
# { name = "bz2", text = "", fg = "#eca517" },
# { name = "bz3", text = "", fg = "#eca517" },
# { name = "bzl", text = "", fg = "#89e051" },
# { name = "c", text = "", fg = "#599eff" },
# { name = "c++", text = "", fg = "#f34b7d" },
# { name = "cache", text = "", fg = "#ffffff" },
# { name = "cast", text = "", fg = "#fd971f" },
# { name = "cbl", text = "", fg = "#005ca5" },
# { name = "cc", text = "", fg = "#f34b7d" },
# { name = "ccm", text = "", fg = "#f34b7d" },
# { name = "cfg", text = "", fg = "#6d8086" },
# { name = "cjs", text = "", fg = "#cbcb41" },
# { name = "clj", text = "", fg = "#8dc149" },
# { name = "cljc", text = "", fg = "#8dc149" },
# { name = "cljd", text = "", fg = "#519aba" },
# { name = "cljs", text = "", fg = "#519aba" },
# { name = "cmake", text = "", fg = "#dce3eb" },
# { name = "cob", text = "", fg = "#005ca5" },
# { name = "cobol", text = "", fg = "#005ca5" },
# { name = "coffee", text = "", fg = "#cbcb41" },
# { name = "conda", text = "", fg = "#43b02a" },
# { name = "conf", text = "", fg = "#6d8086" },
# { name = "config.ru", text = "", fg = "#701516" },
# { name = "cow", text = "󰆚", fg = "#965824" },
# { name = "cp", text = "", fg = "#519aba" },
# { name = "cpp", text = "", fg = "#519aba" },
# { name = "cppm", text = "", fg = "#519aba" },
# { name = "cpy", text = "", fg = "#005ca5" },
# { name = "cr", text = "", fg = "#c8c8c8" },
# { name = "crdownload", text = "", fg = "#44cda8" },
# { name = "cs", text = "󰌛", fg = "#596706" },
# { name = "csh", text = "", fg = "#4d5a5e" },
# { name = "cshtml", text = "󱦗", fg = "#512bd4" },
# { name = "cson", text = "", fg = "#cbcb41" },
# { name = "csproj", text = "󰪮", fg = "#512bd4" },
# { name = "css", text = "", fg = "#663399" },
# { name = "csv", text = "", fg = "#89e051" },
# { name = "cts", text = "", fg = "#519aba" },
# { name = "cu", text = "", fg = "#89e051" },
# { name = "cue", text = "󰲹", fg = "#ed95ae" },
# { name = "cuh", text = "", fg = "#a074c4" },
# { name = "cxx", text = "", fg = "#519aba" },
# { name = "cxxm", text = "", fg = "#519aba" },
# { name = "d", text = "", fg = "#b03931" },
# { name = "d.ts", text = "", fg = "#d59855" },
# { name = "dart", text = "", fg = "#03589c" },
# { name = "db", text = "", fg = "#dad8d8" },
# { name = "dconf", text = "", fg = "#ffffff" },
# { name = "desktop", text = "", fg = "#563d7c" },
# { name = "diff", text = "", fg = "#41535b" },
# { name = "dll", text = "", fg = "#4d2c0b" },
# { name = "doc", text = "󰈬", fg = "#185abd" },
# { name = "Dockerfile", text = "󰡨", fg = "#458ee6" },
# { name = "dockerignore", text = "󰡨", fg = "#458ee6" },
# { name = "docx", text = "󰈬", fg = "#185abd" },
# { name = "dot", text = "󱁉", fg = "#30638e" },
# { name = "download", text = "", fg = "#44cda8" },
# { name = "drl", text = "", fg = "#ffafaf" },
# { name = "dropbox", text = "", fg = "#0061fe" },
# { name = "dump", text = "", fg = "#dad8d8" },
# { name = "dwg", text = "󰻫", fg = "#839463" },
# { name = "dxf", text = "󰻫", fg = "#839463" },
# { name = "ebook", text = "", fg = "#eab16d" },
# { name = "ebuild", text = "", fg = "#4c416e" },
# { name = "edn", text = "", fg = "#519aba" },
# { name = "eex", text = "", fg = "#a074c4" },
# { name = "ejs", text = "", fg = "#cbcb41" },
# { name = "el", text = "", fg = "#8172be" },
# { name = "elc", text = "", fg = "#8172be" },
# { name = "elf", text = "", fg = "#9f0500" },
# { name = "elm", text = "", fg = "#519aba" },
# { name = "eln", text = "", fg = "#8172be" },
# { name = "env", text = "", fg = "#faf743" },
# { name = "eot", text = "", fg = "#ececec" },
# { name = "epp", text = "", fg = "#ffa61a" },
# { name = "epub", text = "", fg = "#eab16d" },
# { name = "erb", text = "", fg = "#701516" },
# { name = "erl", text = "", fg = "#b83998" },
# { name = "ex", text = "", fg = "#a074c4" },
# { name = "exe", text = "", fg = "#9f0500" },
# { name = "exs", text = "", fg = "#a074c4" },
# { name = "f#", text = "", fg = "#519aba" },
# { name = "f3d", text = "󰻫", fg = "#839463" },
# { name = "f90", text = "󱈚", fg = "#734f96" },
# { name = "fbx", text = "󰆧", fg = "#888888" },
# { name = "fcbak", text = "", fg = "#cb333b" },
# { name = "fcmacro", text = "", fg = "#cb333b" },
# { name = "fcmat", text = "", fg = "#cb333b" },
# { name = "fcparam", text = "", fg = "#cb333b" },
# { name = "fcscript", text = "", fg = "#cb333b" },
# { name = "fcstd", text = "", fg = "#cb333b" },
# { name = "fcstd1", text = "", fg = "#cb333b" },
# { name = "fctb", text = "", fg = "#cb333b" },
# { name = "fctl", text = "", fg = "#cb333b" },
# { name = "fdmdownload", text = "", fg = "#44cda8" },
# { name = "feature", text = "", fg = "#00a818" },
# { name = "fish", text = "", fg = "#4d5a5e" },
# { name = "flac", text = "", fg = "#0075aa" },
# { name = "flc", text = "", fg = "#ececec" },
# { name = "flf", text = "", fg = "#ececec" },
# { name = "fnl", text = "", fg = "#fff3d7" },
# { name = "fodg", text = "", fg = "#fffb57" },
# { name = "fodp", text = "", fg = "#fe9c45" },
# { name = "fods", text = "", fg = "#78fc4e" },
# { name = "fodt", text = "", fg = "#2dcbfd" },
# { name = "fs", text = "", fg = "#519aba" },
# { name = "fsi", text = "", fg = "#519aba" },
# { name = "fsscript", text = "", fg = "#519aba" },
# { name = "fsx", text = "", fg = "#519aba" },
# { name = "gcode", text = "󰐫", fg = "#1471ad" },
# { name = "gd", text = "", fg = "#6d8086" },
# { name = "gemspec", text = "", fg = "#701516" },
# { name = "gif", text = "", fg = "#a074c4" },
# { name = "git", text = "", fg = "#f14c28" },
# { name = "glb", text = "", fg = "#ffb13b" },
# { name = "gleam", text = "", fg = "#ffaff3" },
# { name = "gnumakefile", text = "", fg = "#6d8086" },
# { name = "go", text = "", fg = "#00add8" },
# { name = "godot", text = "", fg = "#6d8086" },
# { name = "gpr", text = "", fg = "#6d8086" },
# { name = "gql", text = "", fg = "#e535ab" },
# { name = "gradle", text = "", fg = "#005f87" },
# { name = "graphql", text = "", fg = "#e535ab" },
# { name = "gresource", text = "", fg = "#ffffff" },
# { name = "gv", text = "󱁉", fg = "#30638e" },
# { name = "gz", text = "", fg = "#eca517" },
# { name = "h", text = "", fg = "#a074c4" },
# { name = "haml", text = "", fg = "#eaeae1" },
# { name = "hbs", text = "", fg = "#f0772b" },
# { name = "heex", text = "", fg = "#a074c4" },
# { name = "hex", text = "", fg = "#2e63ff" },
# { name = "hh", text = "", fg = "#a074c4" },
# { name = "hpp", text = "", fg = "#a074c4" },
# { name = "hrl", text = "", fg = "#b83998" },
# { name = "hs", text = "", fg = "#a074c4" },
# { name = "htm", text = "", fg = "#e34c26" },
# { name = "html", text = "", fg = "#e44d26" },
# { name = "http", text = "", fg = "#008ec7" },
# { name = "huff", text = "󰡘", fg = "#4242c7" },
# { name = "hurl", text = "", fg = "#ff0288" },
# { name = "hx", text = "", fg = "#ea8220" },
# { name = "hxx", text = "", fg = "#a074c4" },
# { name = "ical", text = "", fg = "#2b2e83" },
# { name = "icalendar", text = "", fg = "#2b2e83" },
# { name = "ico", text = "", fg = "#cbcb41" },
# { name = "ics", text = "", fg = "#2b2e83" },
# { name = "ifb", text = "", fg = "#2b2e83" },
# { name = "ifc", text = "󰻫", fg = "#839463" },
# { name = "ige", text = "󰻫", fg = "#839463" },
# { name = "iges", text = "󰻫", fg = "#839463" },
# { name = "igs", text = "󰻫", fg = "#839463" },
# { name = "image", text = "", fg = "#d0bec8" },
# { name = "img", text = "", fg = "#d0bec8" },
# { name = "import", text = "", fg = "#ececec" },
# { name = "info", text = "", fg = "#ffffcd" },
# { name = "ini", text = "", fg = "#6d8086" },
# { name = "ino", text = "", fg = "#56b6c2" },
# { name = "ipynb", text = "", fg = "#f57d01" },
# { name = "iso", text = "", fg = "#d0bec8" },
# { name = "ixx", text = "", fg = "#519aba" },
# { name = "java", text = "", fg = "#cc3e44" },
# { name = "jl", text = "", fg = "#a270ba" },
# { name = "jpeg", text = "", fg = "#a074c4" },
# { name = "jpg", text = "", fg = "#a074c4" },
# { name = "js", text = "", fg = "#cbcb41" },
# { name = "json", text = "", fg = "#cbcb41" },
# { name = "json5", text = "", fg = "#cbcb41" },
# { name = "jsonc", text = "", fg = "#cbcb41" },
# { name = "jsx", text = "", fg = "#20c2e3" },
# { name = "jwmrc", text = "", fg = "#0078cd" },
# { name = "jxl", text = "", fg = "#a074c4" },
# { name = "kbx", text = "󰯄", fg = "#737672" },
# { name = "kdb", text = "", fg = "#529b34" },
# { name = "kdbx", text = "", fg = "#529b34" },
# { name = "kdenlive", text = "", fg = "#83b8f2" },
# { name = "kdenlivetitle", text = "", fg = "#83b8f2" },
# { name = "kicad_dru", text = "", fg = "#ffffff" },
# { name = "kicad_mod", text = "", fg = "#ffffff" },
# { name = "kicad_pcb", text = "", fg = "#ffffff" },
# { name = "kicad_prl", text = "", fg = "#ffffff" },
# { name = "kicad_pro", text = "", fg = "#ffffff" },
# { name = "kicad_sch", text = "", fg = "#ffffff" },
# { name = "kicad_sym", text = "", fg = "#ffffff" },
# { name = "kicad_wks", text = "", fg = "#ffffff" },
# { name = "ko", text = "", fg = "#dcddd6" },
# { name = "kpp", text = "", fg = "#f245fb" },
# { name = "kra", text = "", fg = "#f245fb" },
# { name = "krz", text = "", fg = "#f245fb" },
# { name = "ksh", text = "", fg = "#4d5a5e" },
# { name = "kt", text = "", fg = "#7f52ff" },
# { name = "kts", text = "", fg = "#7f52ff" },
# { name = "lck", text = "", fg = "#bbbbbb" },
# { name = "leex", text = "", fg = "#a074c4" },
# { name = "less", text = "", fg = "#563d7c" },
# { name = "lff", text = "", fg = "#ececec" },
# { name = "lhs", text = "", fg = "#a074c4" },
# { name = "lib", text = "", fg = "#4d2c0b" },
# { name = "license", text = "", fg = "#cbcb41" },
# { name = "liquid", text = "", fg = "#95bf47" },
# { name = "lock", text = "", fg = "#bbbbbb" },
# { name = "log", text = "󰌱", fg = "#dddddd" },
# { name = "lrc", text = "󰨖", fg = "#ffb713" },
# { name = "lua", text = "", fg = "#51a0cf" },
# { name = "luac", text = "", fg = "#51a0cf" },
# { name = "luau", text = "", fg = "#00a2ff" },
# { name = "m", text = "", fg = "#599eff" },
# { name = "m3u", text = "󰲹", fg = "#ed95ae" },
# { name = "m3u8", text = "󰲹", fg = "#ed95ae" },
# { name = "m4a", text = "", fg = "#00afff" },
# { name = "m4v", text = "", fg = "#fd971f" },
# { name = "magnet", text = "", fg = "#a51b16" },
# { name = "makefile", text = "", fg = "#6d8086" },
# { name = "markdown", text = "", fg = "#dddddd" },
# { name = "material", text = "", fg = "#b83998" },
# { name = "md", text = "", fg = "#dddddd" },
# { name = "md5", text = "󰕥", fg = "#8c86af" },
# { name = "mdx", text = "", fg = "#519aba" },
# { name = "mint", text = "󰌪", fg = "#87c095" },
# { name = "mjs", text = "", fg = "#f1e05a" },
# { name = "mk", text = "", fg = "#6d8086" },
# { name = "mkv", text = "", fg = "#fd971f" },
# { name = "ml", text = "", fg = "#e37933" },
# { name = "mli", text = "", fg = "#e37933" },
# { name = "mm", text = "", fg = "#519aba" },
# { name = "mo", text = "", fg = "#9772fb" },
# { name = "mobi", text = "", fg = "#eab16d" },
# { name = "mojo", text = "", fg = "#ff4c1f" },
# { name = "mov", text = "", fg = "#fd971f" },
# { name = "mp3", text = "", fg = "#00afff" },
# { name = "mp4", text = "", fg = "#fd971f" },
# { name = "mpp", text = "", fg = "#519aba" },
# { name = "msf", text = "", fg = "#137be1" },
# { name = "mts", text = "", fg = "#519aba" },
# { name = "mustache", text = "", fg = "#e37933" },
# { name = "nfo", text = "", fg = "#ffffcd" },
# { name = "nim", text = "", fg = "#f3d400" },
# { name = "nix", text = "", fg = "#7ebae4" },
# { name = "norg", text = "", fg = "#4878be" },
# { name = "nswag", text = "", fg = "#85ea2d" },
# { name = "nu", text = "", fg = "#3aa675" },
# { name = "o", text = "", fg = "#9f0500" },
# { name = "obj", text = "󰆧", fg = "#888888" },
# { name = "odf", text = "", fg = "#ff5a96" },
# { name = "odg", text = "", fg = "#fffb57" },
# { name = "odin", text = "󰟢", fg = "#3882d2" },
# { name = "odp", text = "", fg = "#fe9c45" },
# { name = "ods", text = "", fg = "#78fc4e" },
# { name = "odt", text = "", fg = "#2dcbfd" },
# { name = "oga", text = "", fg = "#0075aa" },
# { name = "ogg", text = "", fg = "#0075aa" },
# { name = "ogv", text = "", fg = "#fd971f" },
# { name = "ogx", text = "", fg = "#fd971f" },
# { name = "opus", text = "", fg = "#0075aa" },
# { name = "org", text = "", fg = "#77aa99" },
# { name = "otf", text = "", fg = "#ececec" },
# { name = "out", text = "", fg = "#9f0500" },
# { name = "part", text = "", fg = "#44cda8" },
# { name = "patch", text = "", fg = "#41535b" },
# { name = "pck", text = "", fg = "#6d8086" },
# { name = "pcm", text = "", fg = "#0075aa" },
# { name = "pdf", text = "", fg = "#b30b00" },
# { name = "php", text = "", fg = "#a074c4" },
# { name = "pl", text = "", fg = "#519aba" },
# { name = "pls", text = "󰲹", fg = "#ed95ae" },
# { name = "ply", text = "󰆧", fg = "#888888" },
# { name = "pm", text = "", fg = "#519aba" },
# { name = "png", text = "", fg = "#a074c4" },
# { name = "po", text = "", fg = "#2596be" },
# { name = "pot", text = "", fg = "#2596be" },
# { name = "pp", text = "", fg = "#ffa61a" },
# { name = "ppt", text = "󰈧", fg = "#cb4a32" },
# { name = "pptx", text = "󰈧", fg = "#cb4a32" },
# { name = "prisma", text = "", fg = "#5a67d8" },
# { name = "pro", text = "", fg = "#e4b854" },
# { name = "ps1", text = "󰨊", fg = "#4273ca" },
# { name = "psb", text = "", fg = "#519aba" },
# { name = "psd", text = "", fg = "#519aba" },
# { name = "psd1", text = "󰨊", fg = "#6975c4" },
# { name = "psm1", text = "󰨊", fg = "#6975c4" },
# { name = "pub", text = "󰷖", fg = "#e3c58e" },
# { name = "pxd", text = "", fg = "#5aa7e4" },
# { name = "pxi", text = "", fg = "#5aa7e4" },
# { name = "py", text = "", fg = "#ffbc03" },
# { name = "pyc", text = "", fg = "#ffe291" },
# { name = "pyd", text = "", fg = "#ffe291" },
# { name = "pyi", text = "", fg = "#ffbc03" },
# { name = "pyo", text = "", fg = "#ffe291" },
# { name = "pyw", text = "", fg = "#5aa7e4" },
# { name = "pyx", text = "", fg = "#5aa7e4" },
# { name = "qm", text = "", fg = "#2596be" },
# { name = "qml", text = "", fg = "#40cd52" },
# { name = "qrc", text = "", fg = "#40cd52" },
# { name = "qss", text = "", fg = "#40cd52" },
# { name = "query", text = "", fg = "#90a850" },
# { name = "r", text = "󰟔", fg = "#2266ba" },
# { name = "R", text = "󰟔", fg = "#2266ba" },
# { name = "rake", text = "", fg = "#701516" },
# { name = "rar", text = "", fg = "#eca517" },
# { name = "razor", text = "󱦘", fg = "#512bd4" },
# { name = "rb", text = "", fg = "#701516" },
# { name = "res", text = "", fg = "#cc3e44" },
# { name = "resi", text = "", fg = "#f55385" },
# { name = "rlib", text = "", fg = "#dea584" },
# { name = "rmd", text = "", fg = "#519aba" },
# { name = "rproj", text = "󰗆", fg = "#358a5b" },
# { name = "rs", text = "", fg = "#dea584" },
# { name = "rss", text = "", fg = "#fb9d3b" },
# { name = "s", text = "", fg = "#0071c5" },
# { name = "sass", text = "", fg = "#f55385" },
# { name = "sbt", text = "", fg = "#cc3e44" },
# { name = "sc", text = "", fg = "#cc3e44" },
# { name = "scad", text = "", fg = "#f9d72c" },
# { name = "scala", text = "", fg = "#cc3e44" },
# { name = "scm", text = "󰘧", fg = "#eeeeee" },
# { name = "scss", text = "", fg = "#f55385" },
# { name = "sh", text = "", fg = "#4d5a5e" },
# { name = "sha1", text = "󰕥", fg = "#8c86af" },
# { name = "sha224", text = "󰕥", fg = "#8c86af" },
# { name = "sha256", text = "󰕥", fg = "#8c86af" },
# { name = "sha384", text = "󰕥", fg = "#8c86af" },
# { name = "sha512", text = "󰕥", fg = "#8c86af" },
# { name = "sig", text = "󰘧", fg = "#e37933" },
# { name = "signature", text = "󰘧", fg = "#e37933" },
# { name = "skp", text = "󰻫", fg = "#839463" },
# { name = "sldasm", text = "󰻫", fg = "#839463" },
# { name = "sldprt", text = "󰻫", fg = "#839463" },
# { name = "slim", text = "", fg = "#e34c26" },
# { name = "sln", text = "", fg = "#854cc7" },
# { name = "slnx", text = "", fg = "#854cc7" },
# { name = "slvs", text = "󰻫", fg = "#839463" },
# { name = "sml", text = "󰘧", fg = "#e37933" },
# { name = "so", text = "", fg = "#dcddd6" },
# { name = "sol", text = "", fg = "#519aba" },
# { name = "spec.js", text = "", fg = "#cbcb41" },
# { name = "spec.jsx", text = "", fg = "#20c2e3" },
# { name = "spec.ts", text = "", fg = "#519aba" },
# { name = "spec.tsx", text = "", fg = "#1354bf" },
# { name = "spx", text = "", fg = "#0075aa" },
# { name = "sql", text = "", fg = "#dad8d8" },
# { name = "sqlite", text = "", fg = "#dad8d8" },
# { name = "sqlite3", text = "", fg = "#dad8d8" },
# { name = "srt", text = "󰨖", fg = "#ffb713" },
# { name = "ssa", text = "󰨖", fg = "#ffb713" },
# { name = "ste", text = "󰻫", fg = "#839463" },
# { name = "step", text = "󰻫", fg = "#839463" },
# { name = "stl", text = "󰆧", fg = "#888888" },
# { name = "stories.js", text = "", fg = "#ff4785" },
# { name = "stories.jsx", text = "", fg = "#ff4785" },
# { name = "stories.mjs", text = "", fg = "#ff4785" },
# { name = "stories.svelte", text = "", fg = "#ff4785" },
# { name = "stories.ts", text = "", fg = "#ff4785" },
# { name = "stories.tsx", text = "", fg = "#ff4785" },
# { name = "stories.vue", text = "", fg = "#ff4785" },
# { name = "stp", text = "󰻫", fg = "#839463" },
# { name = "strings", text = "", fg = "#2596be" },
# { name = "styl", text = "", fg = "#8dc149" },
# { name = "sub", text = "󰨖", fg = "#ffb713" },
# { name = "sublime", text = "", fg = "#e37933" },
# { name = "suo", text = "", fg = "#854cc7" },
# { name = "sv", text = "󰍛", fg = "#019833" },
# { name = "svelte", text = "", fg = "#ff3e00" },
# { name = "svg", text = "󰜡", fg = "#ffb13b" },
# { name = "svgz", text = "󰜡", fg = "#ffb13b" },
# { name = "svh", text = "󰍛", fg = "#019833" },
# { name = "swift", text = "", fg = "#e37933" },
# { name = "t", text = "", fg = "#519aba" },
# { name = "tbc", text = "󰛓", fg = "#1e5cb3" },
# { name = "tcl", text = "󰛓", fg = "#1e5cb3" },
# { name = "templ", text = "", fg = "#dbbd30" },
# { name = "terminal", text = "", fg = "#31b53e" },
# { name = "test.js", text = "", fg = "#cbcb41" },
# { name = "test.jsx", text = "", fg = "#20c2e3" },
# { name = "test.ts", text = "", fg = "#519aba" },
# { name = "test.tsx", text = "", fg = "#1354bf" },
# { name = "tex", text = "", fg = "#3d6117" },
# { name = "tf", text = "", fg = "#5f43e9" },
# { name = "tfvars", text = "", fg = "#5f43e9" },
# { name = "tgz", text = "", fg = "#eca517" },
# { name = "tmpl", text = "", fg = "#dbbd30" },
# { name = "tmux", text = "", fg = "#14ba19" },
# { name = "toml", text = "", fg = "#9c4221" },
# { name = "torrent", text = "", fg = "#44cda8" },
# { name = "tres", text = "", fg = "#6d8086" },
# { name = "ts", text = "", fg = "#519aba" },
# { name = "tscn", text = "", fg = "#6d8086" },
# { name = "tsconfig", text = "", fg = "#ff8700" },
# { name = "tsx", text = "", fg = "#1354bf" },
# { name = "ttf", text = "", fg = "#ececec" },
# { name = "twig", text = "", fg = "#8dc149" },
# { name = "txt", text = "󰈙", fg = "#89e051" },
# { name = "txz", text = "", fg = "#eca517" },
# { name = "typ", text = "", fg = "#0dbcc0" },
# { name = "typoscript", text = "", fg = "#ff8700" },
# { name = "ui", text = "", fg = "#015bf0" },
# { name = "v", text = "󰍛", fg = "#019833" },
# { name = "vala", text = "", fg = "#7b3db9" },
# { name = "vh", text = "󰍛", fg = "#019833" },
# { name = "vhd", text = "󰍛", fg = "#019833" },
# { name = "vhdl", text = "󰍛", fg = "#019833" },
# { name = "vi", text = "", fg = "#fec60a" },
# { name = "vim", text = "", fg = "#019833" },
# { name = "vsh", text = "", fg = "#5d87bf" },
# { name = "vsix", text = "", fg = "#854cc7" },
# { name = "vue", text = "", fg = "#8dc149" },
# { name = "wasm", text = "", fg = "#5c4cdb" },
# { name = "wav", text = "", fg = "#00afff" },
# { name = "webm", text = "", fg = "#fd971f" },
# { name = "webmanifest", text = "", fg = "#f1e05a" },
# { name = "webp", text = "", fg = "#a074c4" },
# { name = "webpack", text = "󰜫", fg = "#519aba" },
# { name = "wma", text = "", fg = "#00afff" },
# { name = "woff", text = "", fg = "#ececec" },
# { name = "woff2", text = "", fg = "#ececec" },
# { name = "wrl", text = "󰆧", fg = "#888888" },
# { name = "wrz", text = "󰆧", fg = "#888888" },
# { name = "wv", text = "", fg = "#00afff" },
# { name = "wvc", text = "", fg = "#00afff" },
# { name = "x", text = "", fg = "#599eff" },
# { name = "xaml", text = "󰙳", fg = "#512bd4" },
# { name = "xcf", text = "", fg = "#635b46" },
# { name = "xcplayground", text = "", fg = "#e37933" },
# { name = "xcstrings", text = "", fg = "#2596be" },
# { name = "xls", text = "󰈛", fg = "#207245" },
# { name = "xlsx", text = "󰈛", fg = "#207245" },
# { name = "xm", text = "", fg = "#519aba" },
# { name = "xml", text = "󰗀", fg = "#e37933" },
# { name = "xpi", text = "", fg = "#ff1b01" },
# { name = "xul", text = "", fg = "#e37933" },
# { name = "xz", text = "", fg = "#eca517" },
# { name = "yaml", text = "", fg = "#6d8086" },
# { name = "yml", text = "", fg = "#6d8086" },
# { name = "zig", text = "", fg = "#f69a1b" },
# { name = "zip", text = "", fg = "#eca517" },
# { name = "zsh", text = "", fg = "#89e051" },
# { name = "zst", text = "", fg = "#eca517" },
# { name = "🔥", text = "", fg = "#ff4c1f" },
# ]
# conds = [
# # Special files
# { if = "orphan", text = "" },
# { if = "link", text = "" },
# { if = "block", text = "" },
# { if = "char", text = "" },
# { if = "fifo", text = "" },
# { if = "sock", text = "" },
# { if = "sticky", text = "" },
# { if = "dummy", text = "" },
#
# # Fallback
# { if = "dir", text = "" },
# { if = "exec", text = "" },
# { if = "!dir", text = "" },
# ]
#
# # : }}}

View File

@ -1,223 +0,0 @@
# A TOML linter such as https://taplo.tamasfe.dev/ can use this schema to validate your config.
# If you encounter any issues, please make an issue at https://github.com/yazi-rs/schemas.
"$schema" = "https://yazi-rs.github.io/schemas/yazi.json"
[mgr]
ratio = [ 2, 3, 3 ]
sort_by = "alphabetical"
sort_sensitive = false
sort_reverse = false
sort_dir_first = true
sort_translit = false
linemode = "none"
show_hidden = false
show_symlink = true
scrolloff = 5
mouse_events = [ "click", "scroll" ]
title_format = "Yazi: {cwd}"
[preview]
wrap = "no"
tab_size = 2
max_width = 600
max_height = 900
cache_dir = ""
image_delay = 30
image_filter = "triangle"
image_quality = 75
ueberzug_scale = 1
ueberzug_offset = [ 0, 0, 0, 0 ]
[opener]
edit = [
{ run = '${EDITOR:-vi} "$@"', desc = "$EDITOR", block = true, for = "unix" },
{ run = 'code %*', orphan = true, desc = "code", for = "windows" },
{ run = 'code -w %*', block = true, desc = "code (block)", for = "windows" },
]
open = [
{ run = 'xdg-open "$1"', desc = "Open", for = "linux" },
{ run = 'open "$@"', desc = "Open", for = "macos" },
{ run = 'start "" "%1"', orphan = true, desc = "Open", for = "windows" },
{ run = 'termux-open "$1"', desc = "Open", for = "android" },
]
reveal = [
{ run = 'xdg-open "$(dirname "$1")"', desc = "Reveal", for = "linux" },
{ run = 'open -R "$1"', desc = "Reveal", for = "macos" },
{ run = 'explorer /select,"%1"', orphan = true, desc = "Reveal", for = "windows" },
{ run = 'termux-open "$(dirname "$1")"', desc = "Reveal", for = "android" },
{ run = '''clear; exiftool "$1"; echo "Press enter to exit"; read _''', block = true, desc = "Show EXIF", for = "unix" },
]
extract = [
{ run = 'ya pub extract --list "$@"', desc = "Extract here", for = "unix" },
{ run = 'ya pub extract --list %*', desc = "Extract here", for = "windows" },
]
play = [
{ run = 'mpv --force-window "$@"', orphan = true, for = "unix" },
{ run = 'mpv --force-window %*', orphan = true, for = "windows" },
{ run = '''mediainfo "$1"; echo "Press enter to exit"; read _''', block = true, desc = "Show media info", for = "unix" },
]
[open]
rules = [
# Folder
{ name = "*/", use = [ "edit", "open", "reveal" ] },
# Text
{ mime = "text/*", use = [ "edit", "reveal" ] },
# Image
{ mime = "image/*", use = [ "open", "reveal" ] },
# Media
{ mime = "{audio,video}/*", use = [ "play", "reveal" ] },
# Archive
{ mime = "application/{zip,rar,7z*,tar,gzip,xz,zstd,bzip*,lzma,compress,archive,cpio,arj,xar,ms-cab*}", use = [ "extract", "reveal" ] },
# JSON
{ mime = "application/{json,ndjson}", use = [ "edit", "reveal" ] },
{ mime = "*/javascript", use = [ "edit", "reveal" ] },
# Empty file
{ mime = "inode/empty", use = [ "edit", "reveal" ] },
# Fallback
{ name = "*", use = [ "open", "reveal" ] },
]
[tasks]
micro_workers = 10
macro_workers = 10
bizarre_retry = 3
image_alloc = 536870912 # 512MB
image_bound = [ 5000, 5000 ]
suppress_preload = false
[plugin]
fetchers = [
# Mimetype
{ id = "mime", name = "*", run = "mime", prio = "high" },
]
spotters = [
{ name = "*/", run = "folder" },
# Code
{ mime = "text/*", run = "code" },
{ mime = "application/{mbox,javascript,wine-extension-ini}", run = "code" },
# Image
{ mime = "image/{avif,hei?,jxl}", run = "magick" },
{ mime = "image/svg+xml", run = "svg" },
{ mime = "image/*", run = "image" },
# Video
{ mime = "video/*", run = "video" },
# Fallback
{ name = "*", run = "file" },
]
preloaders = [
# Image
{ mime = "image/{avif,hei?,jxl}", run = "magick" },
{ mime = "image/svg+xml", run = "svg" },
{ mime = "image/*", run = "image" },
# Video
{ mime = "video/*", run = "video" },
# PDF
{ mime = "application/pdf", run = "pdf" },
# Font
{ mime = "font/*", run = "font" },
{ mime = "application/ms-opentype", run = "font" },
]
previewers = [
{ name = "*/", run = "folder" },
# Code
{ mime = "text/*", run = "code" },
{ mime = "application/{mbox,javascript,wine-extension-ini}", run = "code" },
# JSON
{ mime = "application/{json,ndjson}", run = "json" },
# Image
{ mime = "image/{avif,hei?,jxl}", run = "magick" },
{ mime = "image/svg+xml", run = "svg" },
{ mime = "image/*", run = "image" },
# Video
{ mime = "video/*", run = "video" },
# PDF
{ mime = "application/pdf", run = "pdf" },
# Archive
{ mime = "application/{zip,rar,7z*,tar,gzip,xz,zstd,bzip*,lzma,compress,archive,cpio,arj,xar,ms-cab*}", run = "archive" },
{ mime = "application/{debian*-package,redhat-package-manager,rpm,android.package-archive}", run = "archive" },
{ name = "*.{AppImage,appimage}", run = "archive" },
# Virtual Disk / Disk Image
{ mime = "application/{iso9660-image,qemu-disk,ms-wim,apple-diskimage}", run = "archive" },
{ mime = "application/virtualbox-{vhd,vhdx}", run = "archive" },
{ name = "*.{img,fat,ext,ext2,ext3,ext4,squashfs,ntfs,hfs,hfsx}", run = "archive" },
# Font
{ mime = "font/*", run = "font" },
{ mime = "application/ms-opentype", run = "font" },
# Empty file
{ mime = "inode/empty", run = "empty" },
# Fallback
{ name = "*", run = "file" },
]
[input]
cursor_blink = false
# cd
cd_title = "Change directory:"
cd_origin = "top-center"
cd_offset = [ 0, 2, 50, 3 ]
# create
create_title = [ "Create:", "Create (dir):" ]
create_origin = "top-center"
create_offset = [ 0, 2, 50, 3 ]
# rename
rename_title = "Rename:"
rename_origin = "hovered"
rename_offset = [ 0, 1, 50, 3 ]
# filter
filter_title = "Filter:"
filter_origin = "top-center"
filter_offset = [ 0, 2, 50, 3 ]
# find
find_title = [ "Find next:", "Find previous:" ]
find_origin = "top-center"
find_offset = [ 0, 2, 50, 3 ]
# search
search_title = "Search via {n}:"
search_origin = "top-center"
search_offset = [ 0, 2, 50, 3 ]
# shell
shell_title = [ "Shell:", "Shell (block):" ]
shell_origin = "top-center"
shell_offset = [ 0, 2, 50, 3 ]
[confirm]
# trash
trash_title = "Trash {n} selected file{s}?"
trash_origin = "center"
trash_offset = [ 0, 0, 70, 20 ]
# delete
delete_title = "Permanently delete {n} selected file{s}?"
delete_origin = "center"
delete_offset = [ 0, 0, 70, 20 ]
# overwrite
overwrite_title = "Overwrite file?"
overwrite_content = "Will overwrite the following file:"
overwrite_origin = "center"
overwrite_offset = [ 0, 0, 50, 15 ]
# quit
quit_title = "Quit?"
quit_content = "The following tasks are still running, are you sure you want to quit?"
quit_origin = "center"
quit_offset = [ 0, 0, 50, 15 ]
[pick]
open_title = "Open with:"
open_origin = "hovered"
open_offset = [ 0, 1, 50, 7 ]
[which]
sort_by = "none"
sort_sensitive = false
sort_reverse = false
sort_translit = false