Compare commits
No commits in common. "ea842efa4de150c0f02e7aa3de5bd27c8087a4fb" and "293cd5f0226b7e1ee6b01cd9190a707ed81b493d" have entirely different histories.
ea842efa4d
...
293cd5f022
44 changed files with 1182 additions and 987 deletions
|
|
@ -1 +0,0 @@
|
|||
--layout=reverse
|
||||
|
|
@ -1,40 +1,34 @@
|
|||
version = "1.1.15"
|
||||
|
||||
[title."(?i)foot"]
|
||||
Yazi = ""
|
||||
|
||||
[class]
|
||||
DEFAULT = "{class}"
|
||||
"Anki" = " "
|
||||
"blueman-manager-wrapped" = " "
|
||||
"chromium" = " "
|
||||
"com.obsproject.Studio" = " "
|
||||
"com.usebottles.bottles" = " "
|
||||
"discord" = " "
|
||||
"Element" = " "
|
||||
"emacs" = " "
|
||||
"firefox" = " "
|
||||
"foot" = " "
|
||||
"ghidra" = " "
|
||||
"Gimp" = " "
|
||||
"kitty" = " "
|
||||
"libreoffice-calc" = " "
|
||||
"libreoffice-draw" = " "
|
||||
"libreoffice-impress" = " "
|
||||
"libreoffice-writer" = " "
|
||||
"mpv" = " "
|
||||
"mullvad vpn" = " "
|
||||
"Nsxiv" = " "
|
||||
"org.getmonero." = " "
|
||||
"org.kde.kdenlive" = " "
|
||||
"signal" = " "
|
||||
"Slack" = " "
|
||||
"spotify" = " "
|
||||
"st-256color" = " "
|
||||
"steam" = " "
|
||||
"teams-for-linux" = " "
|
||||
"VirtualBox" = " "
|
||||
"vlc" = " "
|
||||
"zathura" = " "
|
||||
"zen" = " "
|
||||
"zoom" = " "
|
||||
"(?i)anki" = " "
|
||||
"(?i)blueman-manager-wrapped" = " "
|
||||
"(?i)chromium" = " "
|
||||
"(?i)discord" = " "
|
||||
"(?i)element" = " "
|
||||
"(?i)emacs" = " "
|
||||
"(?i)firefox" = " "
|
||||
"(?i)foot" = " "
|
||||
"(?i)ghidra" = " "
|
||||
"(?i)gimp" = " "
|
||||
"(?i)kitty" = " "
|
||||
"(?i)libreoffice-draw" = " "
|
||||
"(?i)libreoffice-writer" = " "
|
||||
"(?i)mpv" = " "
|
||||
"(?i)mullvad vpn" = " "
|
||||
"(?i)nsxiv" = " "
|
||||
"(?i)signal" = " "
|
||||
"(?i)slack" = " "
|
||||
"(?i)spotify" = " "
|
||||
"(?i)st" = " "
|
||||
"(?i)steam" = " "
|
||||
"(?i)virtualbox" = " "
|
||||
"(?i)zathura" = " "
|
||||
"(?i)zen" = " "
|
||||
|
||||
[class_active]
|
||||
|
||||
|
|
@ -55,21 +49,15 @@ DEFAULT = "{class}"
|
|||
9 = "nine"
|
||||
10 = "ten"
|
||||
|
||||
[title_in_class."st-256color"]
|
||||
"Yazi" = " "
|
||||
"NVIM" = " "
|
||||
"btop" = " "
|
||||
"htop" = " "
|
||||
[title_in_class."(?i)foot"]
|
||||
"(?i)neovim" = "neovim"
|
||||
"(?i)nvim" = "nvim"
|
||||
|
||||
# Sometimes windows do not set a class
|
||||
[title_in_class.""]
|
||||
"Steam" = " "
|
||||
[title_in_class."(?i)kitty"]
|
||||
"(?i)neomutt" = "neomutt"
|
||||
|
||||
[title_in_class."VirtualBox Machine"]
|
||||
"Tiny11" = " "
|
||||
|
||||
[title_in_class."steam"]
|
||||
"Halo: The Master Chief Collection" = " "
|
||||
[title_in_class_active."(?i)firefox"]
|
||||
"(?i)twitch" = "<span style='color:purple'>{icon}</span>"
|
||||
|
||||
[title_in_initial_class]
|
||||
|
||||
|
|
@ -94,13 +82,11 @@ aProgram = "^$"
|
|||
dedup = false
|
||||
dedup_inactive_fullscreen = false
|
||||
delim = ""
|
||||
workspace = "{id} {clients}"
|
||||
workspace = "{id}:{delim}{clients}"
|
||||
workspace_empty = "{id}"
|
||||
# client = "<span>{icon}</span>"
|
||||
client = "{icon}"
|
||||
client_fullscreen = "{icon}"
|
||||
# client_active = "<span style='color:#FFFFFF'>{icon}</font>"
|
||||
client_active = "{icon}"
|
||||
client = "<span>{icon}</span>"
|
||||
client_fullscreen = "[{icon}]"
|
||||
client_active = "<span style='color:#FFFFFF'>{icon}</font>"
|
||||
client_dup = "{icon}{counter_sup}"
|
||||
client_dup_active = "*{icon}*{delim}{icon}{counter_unfocused_sup}"
|
||||
client_dup_fullscreen = "[{icon}]{delim}{icon}{counter_unfocused_sup}"
|
||||
|
|
|
|||
|
|
@ -1,54 +1,18 @@
|
|||
# Use starship.def.toml to edit the starship configuration. There should be an entr daemon
|
||||
# running which, upon changes to the file, will replace each instance of blue with
|
||||
# the appropriate environment variable. This hack was cobbled together because starship currently
|
||||
# does not allow environment variables to be used as a style (which is dumb)
|
||||
|
||||
# Inserts a blank line between shell prompts
|
||||
add_newline = false
|
||||
|
||||
format = '''${custom.color}╭──\(${custom.bold}$username@$hostname${custom.color}\)-\[$directory${custom.color}(\]-\[$git_branch$git_metrics$git_status)${custom.color}\]( $nix_shell) $cmd_duration
|
||||
${custom.color}╰─$shell '''
|
||||
|
||||
format = '''[╭──\([$username@$hostname](bold blue)\)-\[$directory\](-\[$git_branch$git_metrics$git_status\])(-\[$nix_shell\])](blue) $cmd_duration
|
||||
[╰─](blue)[$shell](bold blue) '''
|
||||
# format = '''
|
||||
# [\[$directory\](-\[$git_branch$git_metrics$git_status\])(-\[$nix_shell\])](blue)[λ ](blue bold)
|
||||
# '''
|
||||
right_format = '$status'
|
||||
|
||||
[custom.color]
|
||||
command = '''
|
||||
accent="$(cat ~/.config/colors/accent)"
|
||||
case "$accent" in
|
||||
black)
|
||||
code=30
|
||||
;;
|
||||
red)
|
||||
code=31
|
||||
;;
|
||||
green)
|
||||
code=32
|
||||
;;
|
||||
yellow)
|
||||
code=33
|
||||
;;
|
||||
blue)
|
||||
code=34
|
||||
;;
|
||||
purple)
|
||||
code=35
|
||||
;;
|
||||
cyan)
|
||||
code=36
|
||||
;;
|
||||
*)
|
||||
code=0
|
||||
;;
|
||||
esac
|
||||
|
||||
printf "\\033[0;${code}m"
|
||||
'''
|
||||
when = true
|
||||
format = "$output"
|
||||
|
||||
[custom.bold]
|
||||
command = '''
|
||||
printf "\\033[1m"
|
||||
'''
|
||||
when = true
|
||||
unsafe_no_escape = true
|
||||
format = "$output"
|
||||
|
||||
[line_break]
|
||||
disabled = false
|
||||
|
||||
|
|
@ -59,7 +23,7 @@ show_always = true
|
|||
|
||||
[nix_shell]
|
||||
symbol = '❄️'
|
||||
format = '[$symbol $name](bold purple)'
|
||||
format = '[$symbol$name](bold purple)'
|
||||
|
||||
[hostname]
|
||||
ssh_only = false
|
||||
|
|
@ -68,8 +32,9 @@ trim_at = '.companyname.com'
|
|||
disabled = false
|
||||
|
||||
[git_branch]
|
||||
style = 'bold green'
|
||||
symbol = ''
|
||||
format = '[$symbol$branch](bold green)'
|
||||
format = '[$symbol$branch(hello$banch)](bold green)'
|
||||
|
||||
[git_status]
|
||||
modified = '[✘](bold red)'
|
||||
|
|
@ -83,6 +48,12 @@ truncate_to_repo = true
|
|||
style = 'bold white'
|
||||
format = '[$path]($style)[$read_only]($read_only_style)'
|
||||
|
||||
[character]
|
||||
success_symbol = '[λ](bold blue)'
|
||||
error_symbol = '[λ](bold red)'
|
||||
# success_symbol = '[❯](bold blue)'
|
||||
# error_symbol = '[❯](bold red)'
|
||||
|
||||
[cmd_duration]
|
||||
min_time = 1_000
|
||||
style = "bold dimmed yellow"
|
||||
|
|
@ -95,7 +66,7 @@ bash_indicator = '\$'
|
|||
zsh_indicator = 'λ'
|
||||
unknown_indicator = '?'
|
||||
disabled = false
|
||||
format = '[$indicator](bold)'
|
||||
format = '$indicator'
|
||||
|
||||
[status]
|
||||
disabled = false
|
||||
|
|
|
|||
|
|
@ -17,19 +17,18 @@ end, 500, Header.LEFT)
|
|||
function Header:cwd()
|
||||
local max = self._area.w - self._right_width
|
||||
if max <= 0 then
|
||||
return ""
|
||||
return ui.Span("")
|
||||
end
|
||||
|
||||
local cwd = ya.readable_path(tostring(self._current.cwd)) .. self:flags()
|
||||
local hovered = ""
|
||||
if cx.active.current.hovered then
|
||||
hovered = tostring(cx.active.current.hovered.name or "")
|
||||
end
|
||||
return ui.Line {
|
||||
local cwd = ya.readable_path(tostring(self._tab.current.cwd)) .. self:flags()
|
||||
local left = ui.Line {
|
||||
ui.Span(cwd):fg("blue"):bold(true),
|
||||
ui.Span("/"):fg("blue"):bold(true),
|
||||
ui.Span(hovered):fg("white"):bold(true),
|
||||
ui.Span(tostring(cx.active.current.hovered.name)):fg("white"): bold(true),
|
||||
}
|
||||
|
||||
return left
|
||||
|
||||
end
|
||||
|
||||
-- Remove file size from status bar
|
||||
|
|
@ -37,7 +36,7 @@ function Status:size()
|
|||
end
|
||||
|
||||
-- Remove percentage from status bar
|
||||
function Status:percent()
|
||||
function Status:percentage()
|
||||
end
|
||||
|
||||
-- Show symlink path in status bar
|
||||
|
|
|
|||
|
|
@ -1,37 +1,31 @@
|
|||
[mgr]
|
||||
# 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"
|
||||
|
||||
[manager]
|
||||
|
||||
prepend_keymap = [
|
||||
# Jump
|
||||
{ on = [ "i" ], run = [ "plugin easyjump" ], desc = "easyjump" },
|
||||
{ on = [ "f" ], run = [ "plugin jump-to-char" ], desc = "Jump to char" },
|
||||
|
||||
# Smart enter
|
||||
{ on = [ "o" ], run = [ "plugin smart-enter --sync -- list", "escape --visual --select" ], desc = "List openers for file." },
|
||||
{ on = [ "o" ], run = [ "plugin smart-enter --sync --args='list'", "escape --visual --select" ], desc = "List openers for file." },
|
||||
{ on = [ "l" ], run = [ "plugin smart-enter --sync", "escape --visual --select" ], desc = "Enter the child directory, or open file." },
|
||||
{ on = [ "L" ], run = [ "plugin smart-enter --sync -- detatch", "escape --visual --select" ], desc = "Open in new window." },
|
||||
|
||||
# Archives
|
||||
{ on = [ "u" ], run = [ "shell 'punpack \"$0\"' --confirm"], desc = "Open archive" },
|
||||
|
||||
# Openers
|
||||
{ on = [ "1" ], run = [ "shell 'opener -n 1 \"$0\"' --block --confirm"], desc = "Open with program 1." },
|
||||
{ on = [ "2" ], run = [ "shell 'opener -n 2 \"$0\"' --block --confirm"], desc = "Open with program 2." },
|
||||
{ on = [ "3" ], run = [ "shell 'opener -n 3 \"$0\"' --block --confirm"], desc = "Open with program 3." },
|
||||
{ on = [ "4" ], run = [ "shell 'opener -n 4 \"$0\"' --block --confirm"], desc = "Open with program 4." },
|
||||
{ on = [ "5" ], run = [ "shell 'opener -n 5 \"$0\"' --block --confirm"], desc = "Open with program 5." },
|
||||
{ on = [ "!" ], run = [ "shell 'opener -n 1 detatch \"$0\"' --block --confirm"], desc = "Open in new window with program 1." },
|
||||
{ on = [ "@" ], run = [ "shell 'opener -n 2 detatch \"$0\"' --block --confirm"], desc = "Open in new window with program 2." },
|
||||
{ on = [ "#" ], run = [ "shell 'opener -n 3 detatch \"$0\"' --block --confirm"], desc = "Open in new window with program 3." },
|
||||
{ on = [ "$" ], run = [ "shell 'opener -n 4 detatch \"$0\"' --block --confirm"], desc = "Open in new window with program 4." },
|
||||
{ on = [ "%" ], run = [ "shell 'opener -n 5 detatch \"$0\"' --block --confirm"], desc = "Open in new window with program 5." },
|
||||
|
||||
{ on = [ "<C-n>" ], run = 'shell -- xdragon -x -T "$1"', desc = "Open file with dragon"},
|
||||
|
||||
{ on = [ "<C-t>" ], run = "shell 'swallow thunar' --block --confirm", desc = "Open thunar"},
|
||||
{ on = [ "L" ], run = [ "plugin smart-enter --sync --args='detatch'", "escape --visual --select" ], desc = "Open in new window." },
|
||||
{ on = [ "1" ], run = [ "shell 'opener -n 1 $0' --block --confirm"], desc = "Open with program 1." },
|
||||
{ on = [ "2" ], run = [ "shell 'opener -n 2 $0' --block --confirm"], desc = "Open with program 2." },
|
||||
{ on = [ "3" ], run = [ "shell 'opener -n 3 $0' --block --confirm"], desc = "Open with program 3." },
|
||||
{ on = [ "!" ], run = [ "shell 'opener -n 1 detatch $0' --block --confirm"], desc = "Open in new window with program 1." },
|
||||
{ on = [ "@" ], run = [ "shell 'opener -n 2 detatch $0' --block --confirm"], desc = "Open in new window with program 2." },
|
||||
{ on = [ "#" ], run = [ "shell 'opener -n 3 detatch $0' --block --confirm"], desc = "Open in new window with program 3." },
|
||||
|
||||
{ on = [ "j" ], run = [ "plugin --sync arrow --args=1"], desc = "Move selection downwards, or wrap." },
|
||||
{ on = [ "k" ], run = [ "plugin --sync arrow --args=-1"], desc = "Move selection upwards, or wrap." },
|
||||
{ on = [ "T" ], run = "plugin --sync max-preview", desc = "Maximize preview pane"},
|
||||
{ on = [ "n" ], run = "create", desc = "Create a file or directory (ends with / for directories)" },
|
||||
{ on = [ "<C-n>"], run = '''
|
||||
shell 'dragon -x -i -T "$1"' --confirm
|
||||
''', desc = "Open file with dragon"},
|
||||
{ on = [ "=" ], run = """
|
||||
shell 'printf "Mode Bits: "; read ans; chmod $ans "$@"' --block --confirm
|
||||
""", desc = "chmod" },
|
||||
|
||||
{ on = [ "<A-Enter>" ], run = """
|
||||
shell '$TERMINAL -e $SHELL -c -i \"cd $PWD && ya && exec $SHELL\"' --orphan --confirm
|
||||
""", desc = "Spawn new yazi window in CWD" },
|
||||
|
|
|
|||
10
misc/.config/yazi/plugins/arrow.yazi/init.lua
Normal file
10
misc/.config/yazi/plugins/arrow.yazi/init.lua
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
---@diagnostic disable: undefined-global
|
||||
|
||||
return {
|
||||
entry = function(_, args)
|
||||
local current = cx.active.current
|
||||
local new = (current.cursor + args[1]) % #current.files
|
||||
ya.manager_emit("arrow", { new - current.cursor })
|
||||
end,
|
||||
}
|
||||
|
||||
|
|
@ -1 +0,0 @@
|
|||
Subproject commit 6606fb1d56eea4c99809c056fd701e58890655be
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
local AVAILABLE_CHARS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789."
|
||||
|
||||
local changed = ya.sync(function(st, new)
|
||||
local b = st.last ~= new
|
||||
st.last = new
|
||||
return b or not cx.active.finder
|
||||
end)
|
||||
|
||||
local escape = function(s) return s == "." and "\\." or s end
|
||||
|
||||
return {
|
||||
entry = function()
|
||||
local cands = {}
|
||||
for i = 1, #AVAILABLE_CHARS do
|
||||
cands[#cands + 1] = { on = AVAILABLE_CHARS:sub(i, i) }
|
||||
end
|
||||
|
||||
local idx = ya.which { cands = cands, silent = true }
|
||||
if not idx then
|
||||
return
|
||||
end
|
||||
|
||||
local kw = escape(cands[idx].on)
|
||||
if changed(kw) then
|
||||
ya.mgr_emit("find_do", { "^" .. kw })
|
||||
else
|
||||
ya.mgr_emit("find_arrow", {})
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
31
misc/.config/yazi/plugins/smart-enter.yazi/init.lua
Normal file
31
misc/.config/yazi/plugins/smart-enter.yazi/init.lua
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
---@diagnostic disable: undefined-global
|
||||
|
||||
return {
|
||||
entry = function(self, args)
|
||||
local h = cx.active.current.hovered
|
||||
if h and h.cha.is_dir then
|
||||
ya.manager_emit("enter", {})
|
||||
return
|
||||
end
|
||||
|
||||
if #args == 0 then
|
||||
ya.manager_emit("open", {})
|
||||
end
|
||||
|
||||
if args[1] == "detatch" then
|
||||
os.execute(string.format("opener detatch \"%s\"", h.url))
|
||||
elseif args[1] == "list" then
|
||||
local f = assert(io.popen(string.format(
|
||||
"opener list \"%s\"", h.url), 'r'))
|
||||
local out = assert(f:read('*a'))
|
||||
f:close()
|
||||
ya.notify {
|
||||
title = string.format("Openers for %s:", h.name),
|
||||
content = out,
|
||||
timeout = 6.5,
|
||||
level = "info",
|
||||
}
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
--- @since 25.2.26
|
||||
--- @sync entry
|
||||
|
||||
local function setup(self, opts) self.open_multi = opts.open_multi end
|
||||
|
||||
local function entry(_, job)
|
||||
local h = cx.active.current.hovered
|
||||
if h and h.cha.is_dir then
|
||||
ya.manager_emit("enter", {})
|
||||
return
|
||||
end
|
||||
|
||||
if #job.args == 0 then
|
||||
ya.manager_emit("open", {})
|
||||
end
|
||||
|
||||
if job.args[1] == "detatch" then
|
||||
os.execute(string.format("opener detatch \"%s\"", h.url))
|
||||
elseif job.args[1] == "list" then
|
||||
local f = assert(io.popen(string.format(
|
||||
"opener list \"%s\"", h.url), 'r'))
|
||||
local out = assert(f:read('*a'))
|
||||
f:close()
|
||||
ya.notify {
|
||||
title = string.format("Openers for %s:", h.name),
|
||||
content = out,
|
||||
timeout = 6.5,
|
||||
level = "info",
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
return { entry = entry, setup = setup }
|
||||
|
||||
|
|
@ -1,6 +1,66 @@
|
|||
# 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/theme.json"
|
||||
|
||||
# vim:fileencoding=utf-8:foldmethod=marker
|
||||
|
||||
# : Flavor {{{
|
||||
|
||||
[flavor]
|
||||
use = ""
|
||||
|
||||
# : }}}
|
||||
|
||||
# : Manager {{{
|
||||
|
||||
[manager]
|
||||
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 }
|
||||
|
||||
# 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" }
|
||||
|
||||
# Tab
|
||||
tab_active = { reversed = true }
|
||||
tab_inactive = {}
|
||||
tab_width = 1
|
||||
|
||||
# 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 = ""
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Status {{{
|
||||
|
||||
[status]
|
||||
sep_left = { open = "", close = "" }
|
||||
sep_right = { open = "", close = "" }
|
||||
separator_open = ""
|
||||
separator_close = ""
|
||||
separator_style = { fg = "darkgray", bg = "darkgray" }
|
||||
|
||||
# Mode
|
||||
mode_normal = { fg = "black", bg = "lightblue", bold = false }
|
||||
mode_select = { fg = "black", bg = "lightgreen", bold = false }
|
||||
mode_unset = { fg = "black", bg = "lightmagenta", bold = false }
|
||||
|
||||
# Progress
|
||||
progress_label = { bold = false }
|
||||
|
|
@ -8,15 +68,103 @@ progress_normal = { fg = "lightblue", bg = "black" }
|
|||
progress_error = { fg = "red", bg = "black" }
|
||||
|
||||
# Permissions
|
||||
perm_type = { fg = "lightgreen" }
|
||||
perm_read = { fg = "lightyellow" }
|
||||
perm_write = { fg = "lightred" }
|
||||
perm_exec = { fg = "lightcyan" }
|
||||
permissions_t = { fg = "lightgreen" }
|
||||
permissions_r = { fg = "lightyellow" }
|
||||
permissions_w = { fg = "lightred" }
|
||||
permissions_x = { fg = "lightcyan" }
|
||||
permissions_s = { fg = "darkgray" }
|
||||
|
||||
[mode]
|
||||
normal_main = { fg = "black", bg = "lightblue", bold = false }
|
||||
select_main = { fg = "black", bg = "lightgreen", bold = false }
|
||||
unset_main = { fg = "black", bg = "lightmagenta", bold = false }
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Select {{{
|
||||
|
||||
[select]
|
||||
border = { fg = "blue" }
|
||||
active = { fg = "magenta", bold = true }
|
||||
inactive = {}
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Input {{{
|
||||
|
||||
[input]
|
||||
border = { fg = "blue" }
|
||||
title = {}
|
||||
value = {}
|
||||
selected = { reversed = true }
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Completion {{{
|
||||
|
||||
[completion]
|
||||
border = { fg = "blue" }
|
||||
active = { reversed = true }
|
||||
inactive = {}
|
||||
|
||||
# Icons
|
||||
icon_file = ""
|
||||
icon_folder = ""
|
||||
icon_command = ""
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Tasks {{{
|
||||
|
||||
[tasks]
|
||||
border = { fg = "blue" }
|
||||
title = {}
|
||||
hovered = { fg = "magenta", underline = true }
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Which {{{
|
||||
|
||||
[which]
|
||||
cols = 3
|
||||
mask = { bg = "black" }
|
||||
cand = { fg = "lightcyan" }
|
||||
rest = { fg = "darkgray" }
|
||||
desc = { fg = "lightmagenta" }
|
||||
separator = " "
|
||||
separator_style = { fg = "darkgray" }
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Help {{{
|
||||
|
||||
[help]
|
||||
on = { fg = "cyan" }
|
||||
run = { fg = "magenta" }
|
||||
desc = {}
|
||||
hovered = { reversed = true, bold = true }
|
||||
footer = { fg = "black", bg = "white" }
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : Notify {{{
|
||||
|
||||
[notify]
|
||||
title_info = { fg = "green" }
|
||||
title_warn = { fg = "yellow" }
|
||||
title_error = { fg = "red" }
|
||||
|
||||
# Icons
|
||||
icon_info = ""
|
||||
icon_warn = ""
|
||||
icon_error = ""
|
||||
|
||||
# : }}}
|
||||
|
||||
|
||||
# : File-specific styles {{{
|
||||
|
||||
[filetype]
|
||||
|
||||
|
|
@ -50,24 +198,576 @@ rules = [
|
|||
|
||||
[icon]
|
||||
|
||||
globs = []
|
||||
dirs = [
|
||||
# { name = ".config", text = "" },
|
||||
# { name = ".git", text = "" },
|
||||
]
|
||||
files = [
|
||||
{ name = ".babelrc", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = ".bash_profile", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = ".bashrc", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = ".dockerignore", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = ".ds_store", text = "", fg_dark = "#41535b", fg_light = "#41535b" },
|
||||
{ name = ".editorconfig", text = "", fg_dark = "#fff2f2", fg_light = "#333030" },
|
||||
{ name = ".env", text = "", fg_dark = "#faf743", fg_light = "#32310d" },
|
||||
{ name = ".eslintignore", text = "", fg_dark = "#4b32c3", fg_light = "#4b32c3" },
|
||||
{ name = ".eslintrc", text = "", fg_dark = "#4b32c3", fg_light = "#4b32c3" },
|
||||
{ name = ".gitattributes", text = "", fg_dark = "#f54d27", fg_light = "#b83a1d" },
|
||||
{ name = ".gitconfig", text = "", fg_dark = "#f54d27", fg_light = "#b83a1d" },
|
||||
{ name = ".gitignore", text = "", fg_dark = "#f54d27", fg_light = "#b83a1d" },
|
||||
{ name = ".gitlab-ci.yml", text = "", fg_dark = "#e24329", fg_light = "#aa321f" },
|
||||
{ name = ".gitmodules", text = "", fg_dark = "#f54d27", fg_light = "#b83a1d" },
|
||||
{ name = ".gtkrc-2.0", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = ".gvimrc", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = ".luaurc", text = "", fg_dark = "#00a2ff", fg_light = "#007abf" },
|
||||
{ name = ".mailmap", text = "", fg_dark = "#41535b", fg_light = "#41535b" },
|
||||
{ name = ".npmignore", text = "", fg_dark = "#e8274b", fg_light = "#ae1d38" },
|
||||
{ name = ".npmrc", text = "", fg_dark = "#e8274b", fg_light = "#ae1d38" },
|
||||
{ name = ".prettierrc", text = "", fg_dark = "#4285f4", fg_light = "#3264b7" },
|
||||
{ name = ".settings.json", text = "", fg_dark = "#854cc7", fg_light = "#643995" },
|
||||
{ name = ".SRCINFO", text = "", fg_dark = "#0f94d2", fg_light = "#0b6f9e" },
|
||||
{ name = ".vimrc", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = ".Xauthority", text = "", fg_dark = "#e54d18", fg_light = "#ac3a12" },
|
||||
{ name = ".xinitrc", text = "", fg_dark = "#e54d18", fg_light = "#ac3a12" },
|
||||
{ name = ".Xresources", text = "", fg_dark = "#e54d18", fg_light = "#ac3a12" },
|
||||
{ name = ".xsession", text = "", fg_dark = "#e54d18", fg_light = "#ac3a12" },
|
||||
{ name = ".zprofile", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = ".zshenv", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = ".zshrc", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "_gvimrc", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "_vimrc", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "avif", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "brewfile", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "bspwmrc", text = "", fg_dark = "#2f2f2f", fg_light = "#2f2f2f" },
|
||||
{ name = "build", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "build.gradle", text = "", fg_dark = "#005f87", fg_light = "#005f87" },
|
||||
{ name = "build.zig.zon", text = "", fg_dark = "#f69a1b", fg_light = "#7b4d0e" },
|
||||
{ name = "cantorrc", text = "", fg_dark = "#1c99f3", fg_light = "#1573b6" },
|
||||
{ name = "checkhealth", text = "", fg_dark = "#75b4fb", fg_light = "#3a5a7e" },
|
||||
{ name = "cmakelists.txt", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "commit_editmsg", text = "", fg_dark = "#f54d27", fg_light = "#b83a1d" },
|
||||
{ name = "compose.yaml", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "compose.yml", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "config", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "containerfile", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "copying", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "copying.lesser", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "docker-compose.yaml", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "docker-compose.yml", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "dockerfile", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "ext_typoscript_setup.txt", text = "", fg_dark = "#ff8700", fg_light = "#aa5a00" },
|
||||
{ name = "favicon.ico", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "fp-info-cache", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "fp-lib-table", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "FreeCAD.conf", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "gemfile$", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "gnumakefile", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "gradle-wrapper.properties", text = "", fg_dark = "#005f87", fg_light = "#005f87" },
|
||||
{ name = "gradle.properties", text = "", fg_dark = "#005f87", fg_light = "#005f87" },
|
||||
{ name = "gradlew", text = "", fg_dark = "#005f87", fg_light = "#005f87" },
|
||||
{ name = "groovy", text = "", fg_dark = "#4a687c", fg_light = "#384e5d" },
|
||||
{ name = "gruntfile.babel.js", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "gruntfile.coffee", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "gruntfile.js", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "gruntfile.ts", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "gtkrc", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "gulpfile.babel.js", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "gulpfile.coffee", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "gulpfile.js", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "gulpfile.ts", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "hyprland.conf", text = "", fg_dark = "#00aaae", fg_light = "#008082" },
|
||||
{ name = "i3blocks.conf", text = "", fg_dark = "#e8ebee", fg_light = "#2e2f30" },
|
||||
{ name = "i3status.conf", text = "", fg_dark = "#e8ebee", fg_light = "#2e2f30" },
|
||||
{ name = "kalgebrarc", text = "", fg_dark = "#1c99f3", fg_light = "#1573b6" },
|
||||
{ name = "kdeglobals", text = "", fg_dark = "#1c99f3", fg_light = "#1573b6" },
|
||||
{ name = "kdenlive-layoutsrc", text = "", fg_dark = "#83b8f2", fg_light = "#425c79" },
|
||||
{ name = "kdenliverc", text = "", fg_dark = "#83b8f2", fg_light = "#425c79" },
|
||||
{ name = "kritadisplayrc", text = "", fg_dark = "#f245fb", fg_light = "#a12ea7" },
|
||||
{ name = "kritarc", text = "", fg_dark = "#f245fb", fg_light = "#a12ea7" },
|
||||
{ name = "license", text = "", fg_dark = "#d0bf41", fg_light = "#686020" },
|
||||
{ name = "lxde-rc.xml", text = "", fg_dark = "#909090", fg_light = "#606060" },
|
||||
{ name = "lxqt.conf", text = "", fg_dark = "#0192d3", fg_light = "#016e9e" },
|
||||
{ name = "makefile", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "mix.lock", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "mpv.conf", text = "", fg_dark = "#3b1342", fg_light = "#3b1342" },
|
||||
{ name = "node_modules", text = "", fg_dark = "#e8274b", fg_light = "#ae1d38" },
|
||||
{ name = "package-lock.json", text = "", fg_dark = "#7a0d21", fg_light = "#7a0d21" },
|
||||
{ name = "package.json", text = "", fg_dark = "#e8274b", fg_light = "#ae1d38" },
|
||||
{ name = "PKGBUILD", text = "", fg_dark = "#0f94d2", fg_light = "#0b6f9e" },
|
||||
{ name = "platformio.ini", text = "", fg_dark = "#f6822b", fg_light = "#a4571d" },
|
||||
{ name = "pom.xml", text = "", fg_dark = "#7a0d21", fg_light = "#7a0d21" },
|
||||
{ name = "procfile", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "PrusaSlicer.ini", text = "", fg_dark = "#ec6b23", fg_light = "#9d4717" },
|
||||
{ name = "PrusaSlicerGcodeViewer.ini", text = "", fg_dark = "#ec6b23", fg_light = "#9d4717" },
|
||||
{ name = "py.typed", text = "", fg_dark = "#ffbc03", fg_light = "#805e02" },
|
||||
{ name = "QtProject.conf", text = "", fg_dark = "#40cd52", fg_light = "#2b8937" },
|
||||
{ name = "R", text = "", fg_dark = "#2266ba", fg_light = "#1a4c8c" },
|
||||
{ name = "r", text = "", fg_dark = "#2266ba", fg_light = "#1a4c8c" },
|
||||
{ name = "rakefile", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "rmd", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "settings.gradle", text = "", fg_dark = "#005f87", fg_light = "#005f87" },
|
||||
{ name = "svelte.config.js", text = "", fg_dark = "#ff3e00", fg_light = "#bf2e00" },
|
||||
{ name = "sxhkdrc", text = "", fg_dark = "#2f2f2f", fg_light = "#2f2f2f" },
|
||||
{ name = "sym-lib-table", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "tailwind.config.js", text = "", fg_dark = "#20c2e3", fg_light = "#158197" },
|
||||
{ name = "tailwind.config.mjs", text = "", fg_dark = "#20c2e3", fg_light = "#158197" },
|
||||
{ name = "tailwind.config.ts", text = "", fg_dark = "#20c2e3", fg_light = "#158197" },
|
||||
{ name = "tmux.conf", text = "", fg_dark = "#14ba19", fg_light = "#0f8c13" },
|
||||
{ name = "tmux.conf.local", text = "", fg_dark = "#14ba19", fg_light = "#0f8c13" },
|
||||
{ name = "tsconfig.json", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "unlicense", text = "", fg_dark = "#d0bf41", fg_light = "#686020" },
|
||||
{ name = "vagrantfile$", text = "", fg_dark = "#1563ff", fg_light = "#104abf" },
|
||||
{ name = "vlcrc", text = "", fg_dark = "#ee7a00", fg_light = "#9f5100" },
|
||||
{ name = "webpack", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "weston.ini", text = "", fg_dark = "#ffbb01", fg_light = "#805e00" },
|
||||
{ name = "workspace", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "xmobarrc", text = "", fg_dark = "#fd4d5d", fg_light = "#a9333e" },
|
||||
{ name = "xmobarrc.hs", text = "", fg_dark = "#fd4d5d", fg_light = "#a9333e" },
|
||||
{ name = "xmonad.hs", text = "", fg_dark = "#fd4d5d", fg_light = "#a9333e" },
|
||||
{ name = "xorg.conf", text = "", fg_dark = "#e54d18", fg_light = "#ac3a12" },
|
||||
{ name = "xsettingsd.conf", text = "", fg_dark = "#e54d18", fg_light = "#ac3a12" },
|
||||
]
|
||||
exts = [
|
||||
{ name = "3gp", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "3mf", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "7z", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "a", text = "", fg_dark = "#dcddd6", fg_light = "#494a47" },
|
||||
{ name = "aac", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "ai", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "aif", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "aiff", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "android", text = "", fg_dark = "#34a853", fg_light = "#277e3e" },
|
||||
{ name = "ape", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "apk", text = "", fg_dark = "#34a853", fg_light = "#277e3e" },
|
||||
{ name = "app", text = "", fg_dark = "#9f0500", fg_light = "#9f0500" },
|
||||
{ name = "applescript", text = "", fg_dark = "#6d8085", fg_light = "#526064" },
|
||||
{ name = "asc", text = "", fg_dark = "#576d7f", fg_light = "#41525f" },
|
||||
{ name = "ass", text = "", fg_dark = "#ffb713", fg_light = "#805c0a" },
|
||||
{ name = "astro", text = "", fg_dark = "#e23f67", fg_light = "#aa2f4d" },
|
||||
{ name = "awk", text = "", fg_dark = "#4d5a5e", fg_light = "#3a4446" },
|
||||
{ name = "azcli", text = "", fg_dark = "#0078d4", fg_light = "#005a9f" },
|
||||
{ name = "bak", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "bash", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "bat", text = "", fg_dark = "#c1f12e", fg_light = "#40500f" },
|
||||
{ name = "bazel", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "bib", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "bicep", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "bicepparam", text = "", fg_dark = "#9f74b3", fg_light = "#6a4d77" },
|
||||
{ name = "bin", text = "", fg_dark = "#9f0500", fg_light = "#9f0500" },
|
||||
{ name = "blade.php", text = "", fg_dark = "#f05340", fg_light = "#a0372b" },
|
||||
{ name = "blend", text = "", fg_dark = "#ea7600", fg_light = "#9c4f00" },
|
||||
{ name = "blp", text = "", fg_dark = "#5796e2", fg_light = "#3a6497" },
|
||||
{ name = "bmp", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "brep", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "bz", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "bz2", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "bz3", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "bzl", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "c", text = "", fg_dark = "#599eff", fg_light = "#3b69aa" },
|
||||
{ name = "c++", text = "", fg_dark = "#f34b7d", fg_light = "#a23253" },
|
||||
{ name = "cache", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "cast", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "cbl", text = "⚙", fg_dark = "#005ca5", fg_light = "#005ca5" },
|
||||
{ name = "cc", text = "", fg_dark = "#f34b7d", fg_light = "#a23253" },
|
||||
{ name = "ccm", text = "", fg_dark = "#f34b7d", fg_light = "#a23253" },
|
||||
{ name = "cfg", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "cjs", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "clj", text = "", fg_dark = "#8dc149", fg_light = "#466024" },
|
||||
{ name = "cljc", text = "", fg_dark = "#8dc149", fg_light = "#466024" },
|
||||
{ name = "cljd", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cljs", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cmake", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "cob", text = "⚙", fg_dark = "#005ca5", fg_light = "#005ca5" },
|
||||
{ name = "cobol", text = "⚙", fg_dark = "#005ca5", fg_light = "#005ca5" },
|
||||
{ name = "coffee", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "conf", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "config.ru", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "cp", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cpp", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cppm", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cpy", text = "⚙", fg_dark = "#005ca5", fg_light = "#005ca5" },
|
||||
{ name = "cr", text = "", fg_dark = "#c8c8c8", fg_light = "#434343" },
|
||||
{ name = "crdownload", text = "", fg_dark = "#44cda8", fg_light = "#226654" },
|
||||
{ name = "cs", text = "", fg_dark = "#596706", fg_light = "#434d04" },
|
||||
{ name = "csh", text = "", fg_dark = "#4d5a5e", fg_light = "#3a4446" },
|
||||
{ name = "cshtml", text = "", fg_dark = "#512bd4", fg_light = "#512bd4" },
|
||||
{ name = "cson", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "csproj", text = "", fg_dark = "#512bd4", fg_light = "#512bd4" },
|
||||
{ name = "css", text = "", fg_dark = "#42a5f5", fg_light = "#2c6ea3" },
|
||||
{ name = "csv", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "cts", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cu", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "cue", text = "", fg_dark = "#ed95ae", fg_light = "#764a57" },
|
||||
{ name = "cuh", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "cxx", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "cxxm", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "d", text = "", fg_dark = "#427819", fg_light = "#325a13" },
|
||||
{ name = "d.ts", text = "", fg_dark = "#d59855", fg_light = "#6a4c2a" },
|
||||
{ name = "dart", text = "", fg_dark = "#03589c", fg_light = "#03589c" },
|
||||
{ name = "db", text = "", fg_dark = "#dad8d8", fg_light = "#494848" },
|
||||
{ name = "dconf", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "desktop", text = "", fg_dark = "#563d7c", fg_light = "#563d7c" },
|
||||
{ name = "diff", text = "", fg_dark = "#41535b", fg_light = "#41535b" },
|
||||
{ name = "dll", text = "", fg_dark = "#4d2c0b", fg_light = "#4d2c0b" },
|
||||
{ name = "doc", text = "", fg_dark = "#185abd", fg_light = "#185abd" },
|
||||
{ name = "Dockerfile", text = "", fg_dark = "#458ee6", fg_light = "#2e5f99" },
|
||||
{ name = "docx", text = "", fg_dark = "#185abd", fg_light = "#185abd" },
|
||||
{ name = "dot", text = "", fg_dark = "#30638e", fg_light = "#244a6a" },
|
||||
{ name = "download", text = "", fg_dark = "#44cda8", fg_light = "#226654" },
|
||||
{ name = "drl", text = "", fg_dark = "#ffafaf", fg_light = "#553a3a" },
|
||||
{ name = "dropbox", text = "", fg_dark = "#0061fe", fg_light = "#0049be" },
|
||||
{ name = "dump", text = "", fg_dark = "#dad8d8", fg_light = "#494848" },
|
||||
{ name = "dwg", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "dxf", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "ebook", text = "", fg_dark = "#eab16d", fg_light = "#755836" },
|
||||
{ name = "edn", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "eex", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "ejs", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "el", text = "", fg_dark = "#8172be", fg_light = "#61568e" },
|
||||
{ name = "elc", text = "", fg_dark = "#8172be", fg_light = "#61568e" },
|
||||
{ name = "elf", text = "", fg_dark = "#9f0500", fg_light = "#9f0500" },
|
||||
{ name = "elm", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "eln", text = "", fg_dark = "#8172be", fg_light = "#61568e" },
|
||||
{ name = "env", text = "", fg_dark = "#faf743", fg_light = "#32310d" },
|
||||
{ name = "eot", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "epp", text = "", fg_dark = "#ffa61a", fg_light = "#80530d" },
|
||||
{ name = "epub", text = "", fg_dark = "#eab16d", fg_light = "#755836" },
|
||||
{ name = "erb", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "erl", text = "", fg_dark = "#b83998", fg_light = "#8a2b72" },
|
||||
{ name = "ex", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "exe", text = "", fg_dark = "#9f0500", fg_light = "#9f0500" },
|
||||
{ name = "exs", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "f#", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "f3d", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "f90", text = "", fg_dark = "#734f96", fg_light = "#563b70" },
|
||||
{ name = "fbx", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "fcbak", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fcmacro", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fcmat", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fcparam", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fcscript", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fcstd", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fcstd1", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fctb", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fctl", text = "", fg_dark = "#cb0d0d", fg_light = "#cb0d0d" },
|
||||
{ name = "fdmdownload", text = "", fg_dark = "#44cda8", fg_light = "#226654" },
|
||||
{ name = "fish", text = "", fg_dark = "#4d5a5e", fg_light = "#3a4446" },
|
||||
{ name = "flac", text = "", fg_dark = "#0075aa", fg_light = "#005880" },
|
||||
{ name = "flc", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "flf", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "fnl", text = "", fg_dark = "#fff3d7", fg_light = "#33312b" },
|
||||
{ name = "fs", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "fsi", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "fsscript", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "fsx", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "gcode", text = "", fg_dark = "#1471ad", fg_light = "#0f5582" },
|
||||
{ name = "gd", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "gemspec", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "gif", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "git", text = "", fg_dark = "#f14c28", fg_light = "#b5391e" },
|
||||
{ name = "glb", text = "", fg_dark = "#ffb13b", fg_light = "#80581e" },
|
||||
{ name = "gnumakefile", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "go", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "godot", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "gql", text = "", fg_dark = "#e535ab", fg_light = "#ac2880" },
|
||||
{ name = "graphql", text = "", fg_dark = "#e535ab", fg_light = "#ac2880" },
|
||||
{ name = "gresource", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "gv", text = "", fg_dark = "#30638e", fg_light = "#244a6a" },
|
||||
{ name = "gz", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "h", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "haml", text = "", fg_dark = "#eaeae1", fg_light = "#2f2f2d" },
|
||||
{ name = "hbs", text = "", fg_dark = "#f0772b", fg_light = "#a04f1d" },
|
||||
{ name = "heex", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "hex", text = "", fg_dark = "#2e63ff", fg_light = "#224abf" },
|
||||
{ name = "hh", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "hpp", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "hrl", text = "", fg_dark = "#b83998", fg_light = "#8a2b72" },
|
||||
{ name = "hs", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "htm", text = "", fg_dark = "#e34c26", fg_light = "#aa391c" },
|
||||
{ name = "html", text = "", fg_dark = "#e44d26", fg_light = "#ab3a1c" },
|
||||
{ name = "huff", text = "", fg_dark = "#4242c7", fg_light = "#4242c7" },
|
||||
{ name = "hurl", text = "", fg_dark = "#ff0288", fg_light = "#bf0266" },
|
||||
{ name = "hx", text = "", fg_dark = "#ea8220", fg_light = "#9c5715" },
|
||||
{ name = "hxx", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "ical", text = "", fg_dark = "#2b2e83", fg_light = "#2b2e83" },
|
||||
{ name = "icalendar", text = "", fg_dark = "#2b2e83", fg_light = "#2b2e83" },
|
||||
{ name = "ico", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "ics", text = "", fg_dark = "#2b2e83", fg_light = "#2b2e83" },
|
||||
{ name = "ifb", text = "", fg_dark = "#2b2e83", fg_light = "#2b2e83" },
|
||||
{ name = "ifc", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "ige", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "iges", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "igs", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "image", text = "", fg_dark = "#d0bec8", fg_light = "#453f43" },
|
||||
{ name = "img", text = "", fg_dark = "#d0bec8", fg_light = "#453f43" },
|
||||
{ name = "import", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "info", text = "", fg_dark = "#ffffcd", fg_light = "#333329" },
|
||||
{ name = "ini", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "ino", text = "", fg_dark = "#56b6c2", fg_light = "#397981" },
|
||||
{ name = "ipynb", text = "", fg_dark = "#51a0cf", fg_light = "#366b8a" },
|
||||
{ name = "iso", text = "", fg_dark = "#d0bec8", fg_light = "#453f43" },
|
||||
{ name = "ixx", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "java", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "jl", text = "", fg_dark = "#a270ba", fg_light = "#6c4b7c" },
|
||||
{ name = "jpeg", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "jpg", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "js", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "json", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "json5", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "jsonc", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "jsx", text = "", fg_dark = "#20c2e3", fg_light = "#158197" },
|
||||
{ name = "jwmrc", text = "", fg_dark = "#0078cd", fg_light = "#005a9a" },
|
||||
{ name = "jxl", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "kbx", text = "", fg_dark = "#737672", fg_light = "#565856" },
|
||||
{ name = "kdb", text = "", fg_dark = "#529b34", fg_light = "#3e7427" },
|
||||
{ name = "kdbx", text = "", fg_dark = "#529b34", fg_light = "#3e7427" },
|
||||
{ name = "kdenlive", text = "", fg_dark = "#83b8f2", fg_light = "#425c79" },
|
||||
{ name = "kdenlivetitle", text = "", fg_dark = "#83b8f2", fg_light = "#425c79" },
|
||||
{ name = "kicad_dru", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_mod", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_pcb", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_prl", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_pro", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_sch", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_sym", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "kicad_wks", text = "", fg_dark = "#ffffff", fg_light = "#333333" },
|
||||
{ name = "ko", text = "", fg_dark = "#dcddd6", fg_light = "#494a47" },
|
||||
{ name = "kpp", text = "", fg_dark = "#f245fb", fg_light = "#a12ea7" },
|
||||
{ name = "kra", text = "", fg_dark = "#f245fb", fg_light = "#a12ea7" },
|
||||
{ name = "krz", text = "", fg_dark = "#f245fb", fg_light = "#a12ea7" },
|
||||
{ name = "ksh", text = "", fg_dark = "#4d5a5e", fg_light = "#3a4446" },
|
||||
{ name = "kt", text = "", fg_dark = "#7f52ff", fg_light = "#5f3ebf" },
|
||||
{ name = "kts", text = "", fg_dark = "#7f52ff", fg_light = "#5f3ebf" },
|
||||
{ name = "lck", text = "", fg_dark = "#bbbbbb", fg_light = "#5e5e5e" },
|
||||
{ name = "leex", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "less", text = "", fg_dark = "#563d7c", fg_light = "#563d7c" },
|
||||
{ name = "lff", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "lhs", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "lib", text = "", fg_dark = "#4d2c0b", fg_light = "#4d2c0b" },
|
||||
{ name = "license", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "liquid", text = "", fg_dark = "#95bf47", fg_light = "#4a6024" },
|
||||
{ name = "lock", text = "", fg_dark = "#bbbbbb", fg_light = "#5e5e5e" },
|
||||
{ name = "log", text = "", fg_dark = "#dddddd", fg_light = "#4a4a4a" },
|
||||
{ name = "lrc", text = "", fg_dark = "#ffb713", fg_light = "#805c0a" },
|
||||
{ name = "lua", text = "", fg_dark = "#51a0cf", fg_light = "#366b8a" },
|
||||
{ name = "luac", text = "", fg_dark = "#51a0cf", fg_light = "#366b8a" },
|
||||
{ name = "luau", text = "", fg_dark = "#00a2ff", fg_light = "#007abf" },
|
||||
{ name = "m", text = "", fg_dark = "#599eff", fg_light = "#3b69aa" },
|
||||
{ name = "m3u", text = "", fg_dark = "#ed95ae", fg_light = "#764a57" },
|
||||
{ name = "m3u8", text = "", fg_dark = "#ed95ae", fg_light = "#764a57" },
|
||||
{ name = "m4a", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "m4v", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "magnet", text = "", fg_dark = "#a51b16", fg_light = "#a51b16" },
|
||||
{ name = "makefile", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "markdown", text = "", fg_dark = "#dddddd", fg_light = "#4a4a4a" },
|
||||
{ name = "material", text = "", fg_dark = "#b83998", fg_light = "#8a2b72" },
|
||||
{ name = "md", text = "", fg_dark = "#dddddd", fg_light = "#4a4a4a" },
|
||||
{ name = "md5", text = "", fg_dark = "#8c86af", fg_light = "#5d5975" },
|
||||
{ name = "mdx", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "mint", text = "", fg_dark = "#87c095", fg_light = "#44604a" },
|
||||
{ name = "mjs", text = "", fg_dark = "#f1e05a", fg_light = "#504b1e" },
|
||||
{ name = "mk", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "mkv", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "ml", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "mli", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "mm", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "mo", text = "∞", fg_dark = "#9772fb", fg_light = "#654ca7" },
|
||||
{ name = "mobi", text = "", fg_dark = "#eab16d", fg_light = "#755836" },
|
||||
{ name = "mov", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "mp3", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "mp4", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "mpp", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "msf", text = "", fg_dark = "#137be1", fg_light = "#0e5ca9" },
|
||||
{ name = "mts", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "mustache", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "nfo", text = "", fg_dark = "#ffffcd", fg_light = "#333329" },
|
||||
{ name = "nim", text = "", fg_dark = "#f3d400", fg_light = "#514700" },
|
||||
{ name = "nix", text = "", fg_dark = "#7ebae4", fg_light = "#3f5d72" },
|
||||
{ name = "nswag", text = "", fg_dark = "#85ea2d", fg_light = "#427516" },
|
||||
{ name = "nu", text = ">", fg_dark = "#3aa675", fg_light = "#276f4e" },
|
||||
{ name = "o", text = "", fg_dark = "#9f0500", fg_light = "#9f0500" },
|
||||
{ name = "obj", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "ogg", text = "", fg_dark = "#0075aa", fg_light = "#005880" },
|
||||
{ name = "opus", text = "", fg_dark = "#0075aa", fg_light = "#005880" },
|
||||
{ name = "org", text = "", fg_dark = "#77aa99", fg_light = "#4f7166" },
|
||||
{ name = "otf", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "out", text = "", fg_dark = "#9f0500", fg_light = "#9f0500" },
|
||||
{ name = "part", text = "", fg_dark = "#44cda8", fg_light = "#226654" },
|
||||
{ name = "patch", text = "", fg_dark = "#41535b", fg_light = "#41535b" },
|
||||
{ name = "pck", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "pcm", text = "", fg_dark = "#0075aa", fg_light = "#005880" },
|
||||
{ name = "pdf", text = "", fg_dark = "#b30b00", fg_light = "#b30b00" },
|
||||
{ name = "php", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "pl", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "pls", text = "", fg_dark = "#ed95ae", fg_light = "#764a57" },
|
||||
{ name = "ply", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "pm", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "png", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "po", text = "", fg_dark = "#2596be", fg_light = "#1c708e" },
|
||||
{ name = "pot", text = "", fg_dark = "#2596be", fg_light = "#1c708e" },
|
||||
{ name = "pp", text = "", fg_dark = "#ffa61a", fg_light = "#80530d" },
|
||||
{ name = "ppt", text = "", fg_dark = "#cb4a32", fg_light = "#983826" },
|
||||
{ name = "prisma", text = "", fg_dark = "#5a67d8", fg_light = "#444da2" },
|
||||
{ name = "pro", text = "", fg_dark = "#e4b854", fg_light = "#725c2a" },
|
||||
{ name = "ps1", text = "", fg_dark = "#4273ca", fg_light = "#325698" },
|
||||
{ name = "psb", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "psd", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "psd1", text = "", fg_dark = "#6975c4", fg_light = "#4f5893" },
|
||||
{ name = "psm1", text = "", fg_dark = "#6975c4", fg_light = "#4f5893" },
|
||||
{ name = "pub", text = "", fg_dark = "#e3c58e", fg_light = "#4c422f" },
|
||||
{ name = "pxd", text = "", fg_dark = "#5aa7e4", fg_light = "#3c6f98" },
|
||||
{ name = "pxi", text = "", fg_dark = "#5aa7e4", fg_light = "#3c6f98" },
|
||||
{ name = "py", text = "", fg_dark = "#ffbc03", fg_light = "#805e02" },
|
||||
{ name = "pyc", text = "", fg_dark = "#ffe291", fg_light = "#332d1d" },
|
||||
{ name = "pyd", text = "", fg_dark = "#ffe291", fg_light = "#332d1d" },
|
||||
{ name = "pyi", text = "", fg_dark = "#ffbc03", fg_light = "#805e02" },
|
||||
{ name = "pyo", text = "", fg_dark = "#ffe291", fg_light = "#332d1d" },
|
||||
{ name = "pyx", text = "", fg_dark = "#5aa7e4", fg_light = "#3c6f98" },
|
||||
{ name = "qm", text = "", fg_dark = "#2596be", fg_light = "#1c708e" },
|
||||
{ name = "qml", text = "", fg_dark = "#40cd52", fg_light = "#2b8937" },
|
||||
{ name = "qrc", text = "", fg_dark = "#40cd52", fg_light = "#2b8937" },
|
||||
{ name = "qss", text = "", fg_dark = "#40cd52", fg_light = "#2b8937" },
|
||||
{ name = "query", text = "", fg_dark = "#90a850", fg_light = "#607035" },
|
||||
{ name = "r", text = "", fg_dark = "#2266ba", fg_light = "#1a4c8c" },
|
||||
{ name = "rake", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "rar", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "razor", text = "", fg_dark = "#512bd4", fg_light = "#512bd4" },
|
||||
{ name = "rb", text = "", fg_dark = "#701516", fg_light = "#701516" },
|
||||
{ name = "res", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "resi", text = "", fg_dark = "#f55385", fg_light = "#a33759" },
|
||||
{ name = "rlib", text = "", fg_dark = "#dea584", fg_light = "#6f5242" },
|
||||
{ name = "rmd", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "rproj", text = "", fg_dark = "#358a5b", fg_light = "#286844" },
|
||||
{ name = "rs", text = "", fg_dark = "#dea584", fg_light = "#6f5242" },
|
||||
{ name = "rss", text = "", fg_dark = "#fb9d3b", fg_light = "#7e4e1e" },
|
||||
{ name = "sass", text = "", fg_dark = "#f55385", fg_light = "#a33759" },
|
||||
{ name = "sbt", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "sc", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "scad", text = "", fg_dark = "#f9d72c", fg_light = "#53480f" },
|
||||
{ name = "scala", text = "", fg_dark = "#cc3e44", fg_light = "#992e33" },
|
||||
{ name = "scm", text = "", fg_dark = "#eeeeee", fg_light = "#303030" },
|
||||
{ name = "scss", text = "", fg_dark = "#f55385", fg_light = "#a33759" },
|
||||
{ name = "sh", text = "", fg_dark = "#4d5a5e", fg_light = "#3a4446" },
|
||||
{ name = "sha1", text = "", fg_dark = "#8c86af", fg_light = "#5d5975" },
|
||||
{ name = "sha224", text = "", fg_dark = "#8c86af", fg_light = "#5d5975" },
|
||||
{ name = "sha256", text = "", fg_dark = "#8c86af", fg_light = "#5d5975" },
|
||||
{ name = "sha384", text = "", fg_dark = "#8c86af", fg_light = "#5d5975" },
|
||||
{ name = "sha512", text = "", fg_dark = "#8c86af", fg_light = "#5d5975" },
|
||||
{ name = "sig", text = "λ", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "signature", text = "λ", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "skp", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "sldasm", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "sldprt", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "slim", text = "", fg_dark = "#e34c26", fg_light = "#aa391c" },
|
||||
{ name = "sln", text = "", fg_dark = "#854cc7", fg_light = "#643995" },
|
||||
{ name = "slvs", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "sml", text = "λ", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "so", text = "", fg_dark = "#dcddd6", fg_light = "#494a47" },
|
||||
{ name = "sol", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "spec.js", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "spec.jsx", text = "", fg_dark = "#20c2e3", fg_light = "#158197" },
|
||||
{ name = "spec.ts", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "spec.tsx", text = "", fg_dark = "#1354bf", fg_light = "#1354bf" },
|
||||
{ name = "sql", text = "", fg_dark = "#dad8d8", fg_light = "#494848" },
|
||||
{ name = "sqlite", text = "", fg_dark = "#dad8d8", fg_light = "#494848" },
|
||||
{ name = "sqlite3", text = "", fg_dark = "#dad8d8", fg_light = "#494848" },
|
||||
{ name = "srt", text = "", fg_dark = "#ffb713", fg_light = "#805c0a" },
|
||||
{ name = "ssa", text = "", fg_dark = "#ffb713", fg_light = "#805c0a" },
|
||||
{ name = "ste", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "step", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "stl", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "stp", text = "", fg_dark = "#839463", fg_light = "#576342" },
|
||||
{ name = "strings", text = "", fg_dark = "#2596be", fg_light = "#1c708e" },
|
||||
{ name = "styl", text = "", fg_dark = "#8dc149", fg_light = "#466024" },
|
||||
{ name = "sub", text = "", fg_dark = "#ffb713", fg_light = "#805c0a" },
|
||||
{ name = "sublime", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "suo", text = "", fg_dark = "#854cc7", fg_light = "#643995" },
|
||||
{ name = "sv", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "svelte", text = "", fg_dark = "#ff3e00", fg_light = "#bf2e00" },
|
||||
{ name = "svg", text = "", fg_dark = "#ffb13b", fg_light = "#80581e" },
|
||||
{ name = "svh", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "swift", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "t", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "tbc", text = "", fg_dark = "#1e5cb3", fg_light = "#1e5cb3" },
|
||||
{ name = "tcl", text = "", fg_dark = "#1e5cb3", fg_light = "#1e5cb3" },
|
||||
{ name = "templ", text = "", fg_dark = "#dbbd30", fg_light = "#6e5e18" },
|
||||
{ name = "terminal", text = "", fg_dark = "#31b53e", fg_light = "#217929" },
|
||||
{ name = "test.js", text = "", fg_dark = "#cbcb41", fg_light = "#666620" },
|
||||
{ name = "test.jsx", text = "", fg_dark = "#20c2e3", fg_light = "#158197" },
|
||||
{ name = "test.ts", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "test.tsx", text = "", fg_dark = "#1354bf", fg_light = "#1354bf" },
|
||||
{ name = "tex", text = "", fg_dark = "#3d6117", fg_light = "#3d6117" },
|
||||
{ name = "tf", text = "", fg_dark = "#5f43e9", fg_light = "#4732af" },
|
||||
{ name = "tfvars", text = "", fg_dark = "#5f43e9", fg_light = "#4732af" },
|
||||
{ name = "tgz", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "tmux", text = "", fg_dark = "#14ba19", fg_light = "#0f8c13" },
|
||||
{ name = "toml", text = "", fg_dark = "#9c4221", fg_light = "#753219" },
|
||||
{ name = "torrent", text = "", fg_dark = "#44cda8", fg_light = "#226654" },
|
||||
{ name = "tres", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "ts", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "tscn", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "tsconfig", text = "", fg_dark = "#ff8700", fg_light = "#aa5a00" },
|
||||
{ name = "tsx", text = "", fg_dark = "#1354bf", fg_light = "#1354bf" },
|
||||
{ name = "ttf", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "twig", text = "", fg_dark = "#8dc149", fg_light = "#466024" },
|
||||
{ name = "txt", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "txz", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "typoscript", text = "", fg_dark = "#ff8700", fg_light = "#aa5a00" },
|
||||
{ name = "ui", text = "", fg_dark = "#0c306e", fg_light = "#0c306e" },
|
||||
{ name = "v", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "vala", text = "", fg_dark = "#7239b3", fg_light = "#562b86" },
|
||||
{ name = "vh", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "vhd", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "vhdl", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "vim", text = "", fg_dark = "#019833", fg_light = "#017226" },
|
||||
{ name = "vsh", text = "", fg_dark = "#5d87bf", fg_light = "#3e5a7f" },
|
||||
{ name = "vsix", text = "", fg_dark = "#854cc7", fg_light = "#643995" },
|
||||
{ name = "vue", text = "", fg_dark = "#8dc149", fg_light = "#466024" },
|
||||
{ name = "wasm", text = "", fg_dark = "#5c4cdb", fg_light = "#4539a4" },
|
||||
{ name = "wav", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "webm", text = "", fg_dark = "#fd971f", fg_light = "#7e4c10" },
|
||||
{ name = "webmanifest", text = "", fg_dark = "#f1e05a", fg_light = "#504b1e" },
|
||||
{ name = "webp", text = "", fg_dark = "#a074c4", fg_light = "#6b4d83" },
|
||||
{ name = "webpack", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "wma", text = "", fg_dark = "#00afff", fg_light = "#0075aa" },
|
||||
{ name = "woff", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "woff2", text = "", fg_dark = "#ececec", fg_light = "#2f2f2f" },
|
||||
{ name = "wrl", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "wrz", text = "", fg_dark = "#888888", fg_light = "#5b5b5b" },
|
||||
{ name = "x", text = "", fg_dark = "#599eff", fg_light = "#3b69aa" },
|
||||
{ name = "xaml", text = "", fg_dark = "#512bd4", fg_light = "#512bd4" },
|
||||
{ name = "xcf", text = "", fg_dark = "#635b46", fg_light = "#4a4434" },
|
||||
{ name = "xcplayground", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "xcstrings", text = "", fg_dark = "#2596be", fg_light = "#1c708e" },
|
||||
{ name = "xls", text = "", fg_dark = "#207245", fg_light = "#207245" },
|
||||
{ name = "xlsx", text = "", fg_dark = "#207245", fg_light = "#207245" },
|
||||
{ name = "xm", text = "", fg_dark = "#519aba", fg_light = "#36677c" },
|
||||
{ name = "xml", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "xpi", text = "", fg_dark = "#ff1b01", fg_light = "#bf1401" },
|
||||
{ name = "xul", text = "", fg_dark = "#e37933", fg_light = "#975122" },
|
||||
{ name = "xz", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "yaml", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "yml", text = "", fg_dark = "#6d8086", fg_light = "#526064" },
|
||||
{ name = "zig", text = "", fg_dark = "#f69a1b", fg_light = "#7b4d0e" },
|
||||
{ name = "zip", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
{ name = "zsh", text = "", fg_dark = "#89e051", fg_light = "#447028" },
|
||||
{ name = "zst", text = "", fg_dark = "#eca517", fg_light = "#76520c" },
|
||||
]
|
||||
|
||||
conds = [
|
||||
# Special files
|
||||
{ if = "orphan", text = "" },
|
||||
|
||||
{ if = "block", text = "" },
|
||||
{ if = "char", text = "" },
|
||||
{ if = "fifo", text = "" },
|
||||
{ if = "sock", text = "" },
|
||||
{ if = "block" , text = "" },
|
||||
{ if = "char" , text = "" },
|
||||
{ if = "fifo" , text = "" },
|
||||
{ if = "sock" , text = "" },
|
||||
{ if = "sticky", text = "" },
|
||||
{ if = "dummy", text = "" },
|
||||
|
||||
# Fallback
|
||||
{ if = "dir", text = "", fg = "yellow" },
|
||||
{ if = "exec", text = "" },
|
||||
# { if = "!dir", text = "" },
|
||||
{ if = "dir", text = "", fg_dark = "yellow" },
|
||||
{ if = "exec", text = "", fg_dark = "yellow" },
|
||||
{ if = "!dir", text = "" },
|
||||
]
|
||||
|
||||
# : }}}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,31 @@
|
|||
[mgr]
|
||||
# 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"
|
||||
|
||||
show_symlink = false
|
||||
[manager]
|
||||
ratio = [ 1, 2, 3 ]
|
||||
sort_by = "alphabetical"
|
||||
sort_sensitive = false
|
||||
sort_reverse = false
|
||||
sort_dir_first = true
|
||||
sort_translit = false
|
||||
linemode = "size"
|
||||
show_hidden = true
|
||||
show_symlink = false
|
||||
# scrolloff = 5
|
||||
mouse_events = [ "click", "scroll" ]
|
||||
title_format = "Yazi: {cwd}"
|
||||
|
||||
[preview]
|
||||
tab_size = 2
|
||||
max_width = 1000
|
||||
max_height = 1500
|
||||
cache_dir = ""
|
||||
image_filter = "triangle"
|
||||
image_quality = 75
|
||||
sixel_fraction = 15
|
||||
ueberzug_scale = 4
|
||||
ueberzug_offset = [ 0, 0, 0, 0 ]
|
||||
|
||||
[opener]
|
||||
open = [
|
||||
|
|
@ -20,9 +44,124 @@ rules = [
|
|||
{ mime = "*", use = [ "open", "alt" ] },
|
||||
]
|
||||
|
||||
[tasks]
|
||||
micro_workers = 10
|
||||
macro_workers = 25
|
||||
bizarre_retry = 5
|
||||
image_alloc = 536870912 # 512MB
|
||||
image_bound = [ 0, 0 ]
|
||||
suppress_preload = false
|
||||
|
||||
[plugin]
|
||||
prepend_previewers = [
|
||||
# Default json previewer not working for some reason
|
||||
{ mime = "application/{json,ndjson}", run = "code" },
|
||||
|
||||
fetchers = [
|
||||
# Mimetype
|
||||
{ id = "mime", name = "*", run = "mime", if = "!mime", prio = "high" },
|
||||
]
|
||||
preloaders = [
|
||||
# Image
|
||||
{ mime = "image/{avif,hei?,jxl,svg+xml}", run = "magick" },
|
||||
{ mime = "image/*", run = "image" },
|
||||
# Video
|
||||
{ mime = "video/*", run = "video" },
|
||||
# PDF
|
||||
{ mime = "application/pdf", run = "pdf" },
|
||||
# Font
|
||||
{ mime = "font/*", run = "font" },
|
||||
{ mime = "application/vnd.ms-opentype", run = "font" },
|
||||
]
|
||||
previewers = [
|
||||
{ name = "*/", run = "folder", sync = true },
|
||||
# Code
|
||||
{ mime = "text/*", run = "code" },
|
||||
{ mime = "*/{xml,javascript,x-wine-extension-ini}", run = "code" },
|
||||
# JSON
|
||||
{ mime = "application/{json,x-ndjson}", run = "json" },
|
||||
# Image
|
||||
{ mime = "image/{avif,hei?,jxl,svg+xml}", run = "magick" },
|
||||
{ mime = "image/*", run = "image" },
|
||||
# Video
|
||||
{ mime = "video/*", run = "video" },
|
||||
# PDF
|
||||
{ mime = "application/pdf", run = "pdf" },
|
||||
# Archive
|
||||
{ mime = "application/{,g}zip", run = "archive" },
|
||||
{ mime = "application/x-{tar,bzip*,7z-compressed,xz,rar,iso9660-image}", run = "archive" },
|
||||
# Font
|
||||
{ mime = "font/*", run = "font" },
|
||||
{ mime = "application/vnd.ms-opentype", run = "font" },
|
||||
# Empty file
|
||||
{ mime = "inode/x-empty", run = "empty" },
|
||||
# Fallback
|
||||
{ name = "*", run = "file" },
|
||||
]
|
||||
|
||||
[input]
|
||||
# cd
|
||||
cd_title = "Change directory:"
|
||||
cd_origin = "top-center"
|
||||
cd_offset = [ 0, 2, 50, 3 ]
|
||||
|
||||
# create
|
||||
create_title = "Create:"
|
||||
create_origin = "top-center"
|
||||
create_offset = [ 0, 2, 50, 3 ]
|
||||
|
||||
# rename
|
||||
rename_title = "Rename:"
|
||||
rename_origin = "hovered"
|
||||
rename_offset = [ 0, 1, 50, 3 ]
|
||||
|
||||
# trash
|
||||
trash_title = "Move {n} selected file{s} to trash? (y/N)"
|
||||
trash_origin = "top-center"
|
||||
trash_offset = [ 0, 2, 50, 3 ]
|
||||
|
||||
# delete
|
||||
delete_title = "Delete {n} selected file{s} permanently? (y/N)"
|
||||
delete_origin = "top-center"
|
||||
delete_offset = [ 0, 2, 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 ]
|
||||
|
||||
# overwrite
|
||||
overwrite_title = "Overwrite an existing file? (y/N)"
|
||||
overwrite_origin = "top-center"
|
||||
overwrite_offset = [ 0, 2, 50, 3 ]
|
||||
|
||||
# quit
|
||||
quit_title = "{n} task{s} running, sure to quit? (y/N)"
|
||||
quit_origin = "top-center"
|
||||
quit_offset = [ 0, 2, 50, 3 ]
|
||||
|
||||
[select]
|
||||
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
|
||||
|
||||
[log]
|
||||
enabled = false
|
||||
|
|
|
|||
|
|
@ -39,7 +39,6 @@ export XDG_STATE_HOME="$HOME/.local/state"
|
|||
export CARGO_HOME="$XDG_DATA_HOME/cargo"
|
||||
export CUDA_CACHE_PATH="$XDG_CACHE_HOME/nv"
|
||||
export EMACS_INIT_FILE="$XDG_CONFIG_HOME/emacs"
|
||||
export FZF_DEFAULT_OPTS_FILE="$XDG_CONFIG_HOME/fzf/config"
|
||||
export GIT_CONFIG="$XDG_CONFIG_HOME/git/config"
|
||||
export GNUPGHOME="$XDG_DATA_HOME/gnupg"
|
||||
export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc"
|
||||
|
|
|
|||
|
|
@ -59,6 +59,7 @@ alias asciiquarium='asciiquarium -t'
|
|||
alias ll='ls -l'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
alias python='python3'
|
||||
alias xournal='xournalpp'
|
||||
alias wget='wget --hsts-file="$XDG_CACHE_HOME/wget-hsts"'
|
||||
alias sxiv='nsxiv'
|
||||
|
|
@ -68,8 +69,6 @@ alias zoom='dlkiller zoom'
|
|||
alias tor='torbrowser-launcher'
|
||||
alias emax="devour emacsclient -c -a 'emacs' 1>/dev/null"
|
||||
alias em="emacsclient -nw -a 'emacs -nw'"
|
||||
alias wgup="sudo wg-quick up ~/wg-quick.conf"
|
||||
alias wgdown="sudo wg-quick down ~/wg-quick.conf"
|
||||
|
||||
# Colorful output
|
||||
alias ls='LC_COLLATE=C ls --color=auto --group-directories-first -hN -A'
|
||||
|
|
@ -107,41 +106,6 @@ function pwdterm {
|
|||
setsid -f $TERMINAL -e $SHELL >/dev/null 2>&1 &
|
||||
}
|
||||
|
||||
function ncd() {
|
||||
local dir=$1
|
||||
local file=$2
|
||||
|
||||
cd "$dir" || return
|
||||
|
||||
if [[ -n "$file" ]]; then
|
||||
nvim "$file"
|
||||
else
|
||||
nvim
|
||||
fi
|
||||
}
|
||||
|
||||
_ncd_completion() {
|
||||
local dir
|
||||
local resolved_dir
|
||||
|
||||
dir="${words[2]}"
|
||||
|
||||
if command -v realpath &>/dev/null; then
|
||||
resolved_dir="$(realpath -- "$dir" 2>/dev/null)"
|
||||
elif command -v readlink &>/dev/null; then
|
||||
resolved_dir="$(readlink -f -- "$dir" 2>/dev/null)"
|
||||
else
|
||||
# fallback: assume relative to $PWD manually
|
||||
resolved_dir="$PWD/$dir"
|
||||
fi
|
||||
|
||||
if [[ -d $resolved_dir ]]; then
|
||||
_files -W "$resolved_dir"
|
||||
else
|
||||
_files
|
||||
fi
|
||||
}
|
||||
|
||||
function ya() {
|
||||
local tmp="$(mktemp -t "yazi-cwd.XXXXX")"
|
||||
yazi "$@" --cwd-file="$tmp"
|
||||
|
|
@ -235,9 +199,6 @@ compinit -d ~/.cache/zcompdump
|
|||
zstyle ':completion:*:*:*:*:*' menu select
|
||||
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' # case insensitive tab completion
|
||||
|
||||
|
||||
compdef _ncd_completion ncd
|
||||
|
||||
# Remove green background of simlinks
|
||||
LS_COLORS+=':ow=01;33'
|
||||
|
||||
|
|
@ -279,5 +240,8 @@ if [ -f ~/.config/zsh/.zshpersonalrc ]; then
|
|||
source ~/.config/zsh/.zshpersonalrc
|
||||
fi
|
||||
|
||||
accent_color="$(cat $HOME/.config/colors/accent)"
|
||||
starship config format "'''[╭──\([\$username@\$hostname](bold $accent_color)\)-\[\$directory\](-\[\$git_branch\$git_metrics\$git_status\])(-\[\$nix_shell\])]($accent_color) \$cmd_duration
|
||||
[╰─]($accent_color)[\$shell](bold $accent_color) '''"
|
||||
eval "$(starship init zsh)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,12 @@
|
|||
#!/bin/sh
|
||||
|
||||
sel="$(man -k . | fzf --prompt "Man page: ")"
|
||||
sel="$(man -k . | fuzzel --dmenu -i -p "Man page:")"
|
||||
[ "$sel" = "" ] && exit # Exit on no selection
|
||||
|
||||
# Selection comes in the form of:
|
||||
# $program ($num) - $desc
|
||||
# Need to run `man $num $program`
|
||||
page="$(echo "$sel" | awk -F'[()]' '{print $2" "$1}')"
|
||||
# hyprctl dispatch exec [floating] "foot -W 78x38 -e man $page"
|
||||
|
||||
man $page
|
||||
# nohup $TERMINAL -e man $page >/dev/null 2>&1 &
|
||||
hyprctl dispatch exec [floating] "foot -W 78x38 -e man $page"
|
||||
|
||||
|
|
|
|||
|
|
@ -93,27 +93,16 @@ case $(file --mime-type "$file" -b) in
|
|||
launch_term nvim "$file"
|
||||
fi
|
||||
;;
|
||||
image/x-xcf)
|
||||
list_exit \
|
||||
"Gimp"
|
||||
|
||||
launch_gui gimp "$file"
|
||||
;;
|
||||
image/*)
|
||||
list_exit \
|
||||
"nsxiv" \
|
||||
"Gimp"
|
||||
|
||||
if [ "$num" -eq 2 ]; then
|
||||
launch_gui gimp "$file"
|
||||
else
|
||||
"nsxiv"
|
||||
launch_gui nsxiv "$file"
|
||||
fi
|
||||
;;
|
||||
video/*)
|
||||
list_exit \
|
||||
"MPV"
|
||||
|
||||
"Neovim" \
|
||||
"Emacs GUI" \
|
||||
"Emacs TUI"
|
||||
launch_gui mpv -quiet "$file"
|
||||
;;
|
||||
application/epub*|\
|
||||
|
|
@ -124,14 +113,12 @@ case $(file --mime-type "$file" -b) in
|
|||
image/vnd.djvu)
|
||||
list_exit \
|
||||
"Zathura"
|
||||
|
||||
launch_gui zathura "$file"
|
||||
;;
|
||||
audio/*|\
|
||||
video/x-ms-asf)
|
||||
list_exit \
|
||||
"MPV"
|
||||
|
||||
# If it has an album cover, launch graphical mpv
|
||||
[ -z "$(mediainfo "$1" | grep "Cover\s*: Yes")" ] \
|
||||
&& (launch_term mpv --audio-display=no "$file") \
|
||||
|
|
|
|||
|
|
@ -11,9 +11,6 @@ in {
|
|||
dates = "weekly";
|
||||
options = "--delete-older-than 7d";
|
||||
};
|
||||
# I do not use flakes personally, but being able to run other
|
||||
# people's flakes is convenient.
|
||||
settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
};
|
||||
|
||||
# Files to add to /etc
|
||||
|
|
@ -32,8 +29,6 @@ in {
|
|||
];
|
||||
};
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "en_US.UTF-8";
|
||||
|
|
@ -53,23 +48,21 @@ in {
|
|||
# version of this font centers the symbols which is nice.
|
||||
nur.repos.bandithedoge.symbols-nerd-font
|
||||
|
||||
fira-code
|
||||
nerd-fonts.fira-code
|
||||
font-awesome
|
||||
hack-font
|
||||
fira-code
|
||||
inter
|
||||
libertine
|
||||
roboto
|
||||
source-sans-pro
|
||||
fira-code-nerdfont
|
||||
];
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Bluetooth daemon
|
||||
services.blueman.enable = true;
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.powerOnBoot = true;
|
||||
|
||||
# Audio daemon
|
||||
services.pulseaudio.enable = false;
|
||||
hardware.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
|
|
@ -108,7 +101,6 @@ in {
|
|||
];
|
||||
};
|
||||
zsh.enable = true;
|
||||
command-not-found.enable = true;
|
||||
};
|
||||
|
||||
virtualisation.docker.enable = true;
|
||||
|
|
@ -154,7 +146,6 @@ in {
|
|||
man-pages-posix # Documentation
|
||||
neofetch # Aesthetic sysinfo
|
||||
openconnect # Connect to VPNs
|
||||
p7zip # Open 7z files
|
||||
pass-nodmenu # CLI password store (without dmenu dependency)
|
||||
pinentry-curses # Terminal-based pinentry program
|
||||
socat # Interact with sockets
|
||||
|
|
@ -162,8 +153,6 @@ in {
|
|||
tldr # Brief info about a command
|
||||
tmux # Terminal multiplexor
|
||||
udisks # Good way of dealing with USBs and similar media
|
||||
unrar-free # Open .rar files
|
||||
wget # Similar to curl
|
||||
yazi # Terminal file manager
|
||||
|
||||
# Shell
|
||||
|
|
@ -197,7 +186,7 @@ in {
|
|||
(self: super: {
|
||||
# Pop into an environment abiding by the Filesystem Hierarchy Standard
|
||||
# to run applications which do not play nicely with NixOS.
|
||||
fhs-run = pkgs.buildFHSEnv {
|
||||
fhs-run = pkgs.buildFHSUserEnv {
|
||||
name = "fhs-run";
|
||||
targetPkgs = pkgs: [];
|
||||
multiPkgs = pkgs: [ pkgs.dpkg ];
|
||||
|
|
|
|||
|
|
@ -1,35 +0,0 @@
|
|||
{ lib
|
||||
, pkgs
|
||||
, stdenv
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "extra-icons";
|
||||
version = "0.0.1";
|
||||
|
||||
src = ./.;
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
imagemagick # for resize
|
||||
inkscape # for svgs
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/icons/hicolor/scalable/apps/
|
||||
for icon in ${src}/raster/*; do
|
||||
icon_name=$(basename "$icon")
|
||||
inkscape -p "$icon" -o "$out/share/icons/hicolor/scalable/apps/extra-scale-''${icon_name%.*}.svg"
|
||||
for i in 16 24 48 64 96 128 256 512; do
|
||||
mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps
|
||||
magick convert -background none -resize "''${i}x''${i}" "$icon" "$out/share/icons/hicolor/''${i}x''${i}/apps/extra-$icon_name"
|
||||
done
|
||||
done
|
||||
for icon in ${src}/vector/*; do
|
||||
icon_name=$(basename "$icon")
|
||||
cp "$icon" "$out/share/icons/hicolor/scalable/apps/extra-scale-$icon_name"
|
||||
inkscape -p "$icon" -o "$out/share/icons/hicolor/scalable/apps/extra-''${icon_name%.*}-svg.svg"
|
||||
done
|
||||
'';
|
||||
}
|
||||
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
{ appimageTools, fetchurl, ... }:
|
||||
let
|
||||
pname = "zen";
|
||||
version = "latest";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/zen-browser/desktop/releases/latest/download/zen-x86_64.AppImage";
|
||||
sha256 = "sha256-hZiJ8JLzLhtD1W8DAso3yBAJYhFE+nJEbQJa59AWjnU=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extract {
|
||||
inherit pname version src;
|
||||
};
|
||||
in
|
||||
appimageTools.wrapType2 {
|
||||
inherit pname version src;
|
||||
|
||||
extraInstallCommands = ''
|
||||
# Install .desktop file
|
||||
install -m 444 -D ${appimageContents}/zen.desktop $out/share/applications/${pname}.desktop
|
||||
# Install icon
|
||||
install -m 444 -D ${appimageContents}/zen.png $out/share/icons/hicolor/128x128/apps/${pname}.png
|
||||
'';
|
||||
|
||||
meta = {
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -9,11 +9,12 @@
|
|||
type = "fcitx5";
|
||||
fcitx5 = {
|
||||
waylandFrontend = true;
|
||||
plasma6Support = false;
|
||||
addons = with pkgs; [
|
||||
qt6Packages.fcitx5-with-addons
|
||||
qt6Packages.fcitx5-configtool
|
||||
qt6Packages.fcitx5-chinese-addons
|
||||
fcitx5-with-addons
|
||||
fcitx5-configtool
|
||||
fcitx5-rime
|
||||
fcitx5-chinese-addons
|
||||
fcitx5-m17n
|
||||
];
|
||||
};
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
javaPackages.openjfx17
|
||||
javaPackages.openjfx19
|
||||
jdk17
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,10 +5,8 @@
|
|||
neovim
|
||||
|
||||
# LSPs
|
||||
clang
|
||||
clang-tools
|
||||
lua-language-server
|
||||
python3Packages.python-lsp-server
|
||||
|
||||
# Misc
|
||||
ripgrep # Used by telescope
|
||||
|
|
|
|||
10
nixos/.config/nixos/profiles/steam.nix
Normal file
10
nixos/.config/nixos/profiles/steam.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
steam
|
||||
];
|
||||
}
|
||||
|
||||
|
|
@ -5,7 +5,11 @@ let
|
|||
nixos-unstable = (import <nixos-unstable> {});
|
||||
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
|
||||
hyprland_nightly = (import flake-compat {
|
||||
src = builtins.fetchTarball "https://github.com/hyprwm/Hyprland/archive/main.tar.gz";
|
||||
src = builtins.fetchGit {
|
||||
ref = "main";
|
||||
url = "https://github.com/hyprwm/Hyprland.git";
|
||||
submodules = true;
|
||||
};
|
||||
}).defaultNix;
|
||||
in {
|
||||
# Trusted Hyprland cache, as to not have to rebuild nightly
|
||||
|
|
@ -17,39 +21,14 @@ in {
|
|||
# Or else swaylock will not accept correct password
|
||||
security.pam.services.swaylock = {};
|
||||
|
||||
services.keyd.enable = true;
|
||||
services.keyd.keyboards = {
|
||||
default = {
|
||||
ids = [ "*" ];
|
||||
settings = {
|
||||
main = {
|
||||
capslock = "overload(control, esc)";
|
||||
esc = "capslock";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable OpenGL
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
programs = {
|
||||
hyprland = { # Dynamic tiling window manager
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
# package = nixos-unstable.hyprland;
|
||||
# package = hyprland_nightly.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
};
|
||||
|
||||
dconf = {
|
||||
enable = true;
|
||||
profiles.gdm.databases = [{
|
||||
settings = {
|
||||
# set dark theme for gtk 4
|
||||
"org/gnome/desktop/interface" = { color-scheme = "prefer-dark"; };
|
||||
};
|
||||
}];
|
||||
};
|
||||
nm-applet.enable = true;
|
||||
};
|
||||
|
||||
systemd.user.services = {
|
||||
|
|
@ -62,27 +41,24 @@ in {
|
|||
serviceConfig.Restart = "always";
|
||||
serviceConfig.RestartSec = 1;
|
||||
};
|
||||
# network-manager-applet = {
|
||||
# description = "Start the network manager applet";
|
||||
# after = [ "graphical-session.target" ];
|
||||
# requires = [ "graphical-session.target" ];
|
||||
# wantedBy = [ "graphical-session.target" ];
|
||||
# serviceConfig.Type = "forking";
|
||||
# serviceConfig.Restart = "always";
|
||||
# serviceConfig.RestartSec = 1;
|
||||
# serviceConfig.ExecStart = "${pkgs.networkmanagerapplet}/bin/nm-applet";
|
||||
# };
|
||||
};
|
||||
|
||||
environment.variables.GSETTINGS_SCHEMA_DIR =
|
||||
let
|
||||
paths = [
|
||||
"${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}/glib-2.0/schemas/"
|
||||
"${pkgs.bottles-unwrapped}/share/gsettings-schemas/${pkgs.bottles-unwrapped.name}/glib-2.0/schemas/"
|
||||
];
|
||||
in
|
||||
builtins.concatStringsSep ":" paths;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
adwaita-icon-theme
|
||||
adwaita-qt
|
||||
blueman # Bluetooth manager
|
||||
dunst # Notification daemon
|
||||
firefox # My browser of choice
|
||||
foot # Wayland native terminal
|
||||
fuzzel # Fuzzy finding menuing program
|
||||
glib
|
||||
gnome-themes-extra
|
||||
gobble # Wayland alternative to devour
|
||||
grimblast # Allows freezing screen
|
||||
grim # Screenshot tool
|
||||
|
|
@ -90,21 +66,22 @@ in {
|
|||
hypridle # Do commands upon user idle
|
||||
hyprland-autoname-workspaces # Add icons to workspace titles
|
||||
hyprlock # Screen locking utility
|
||||
hyprpaper
|
||||
hyprpicker # Colorpicker utility
|
||||
hyprsunset # Bluelight filter
|
||||
kanshi # Autorandr substitute
|
||||
libnotify # Send messages to notification daemon
|
||||
libreoffice # MSOffice btfo
|
||||
# networkmanagerapplet # Wifi dropdown menu
|
||||
networkmanager_dmenu # Manage wifi with dmenu
|
||||
nsxiv # Image viewer
|
||||
nwg-displays
|
||||
pcmanfm # Graphical file manager
|
||||
pinentry-rofi # Rofi frontend for pinentry program
|
||||
quickshell # Use QT to create widgets
|
||||
pyprland # Plugin manager for Hyprland
|
||||
rofi # Menu prompt program
|
||||
rofi-pass # Rofi frontend for password store
|
||||
sassc # SCSS interpreter
|
||||
slurp # Screen selection utility
|
||||
st # Suckless Simple Terminal
|
||||
st
|
||||
swaylock # Wayland session locker
|
||||
swww # Sets background images
|
||||
texlive.combined.scheme-full # LaTeX to create documents
|
||||
|
|
@ -116,46 +93,38 @@ in {
|
|||
wdisplays # Arnadr substitute
|
||||
wl-clipboard # Copy/paste utility
|
||||
wlr-randr # Xrandr substitute
|
||||
xwaylandvideobridge # Allows screensharing from XWayland programs
|
||||
xorg.xcursorthemes
|
||||
zathura # Minimalist PDF reader
|
||||
zen-browser # Better firefox
|
||||
intel-gpu-tools # Tools for intel GPU
|
||||
mesa-demos # Tools for Mesa drivers
|
||||
|
||||
xfce.thunar # Graphical file manager
|
||||
xfce.tumbler # Thumbnailer service
|
||||
|
||||
# libsForQt5.qt5.qtsvg # Allow for svg icons in QT applications
|
||||
kdePackages.qt6ct
|
||||
zen-browser
|
||||
|
||||
# GTK Themes
|
||||
lxappearance-gtk2 # Theme switcher
|
||||
gruvbox-dark-gtk
|
||||
|
||||
# Custom packages
|
||||
extra-icons
|
||||
];
|
||||
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
hyprland-autoname-workspaces = nixos-unstable.hyprland-autoname-workspaces;
|
||||
waybar = nixos-unstable.waybar;
|
||||
typst = nixos-unstable.typst;
|
||||
swww = nixos-unstable.swww;
|
||||
# typst = (import flake-compat {
|
||||
# src = builtins.fetchGit {
|
||||
# url = "https://github.com/typst/typst.git";
|
||||
# };
|
||||
# }).outputs.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
zen-browser = (import flake-compat {
|
||||
src = builtins.fetchGit {
|
||||
url = "https://github.com/0xc000022070/zen-browser-flake.git";
|
||||
};
|
||||
}).outputs.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
st = prev.callPackage /home/vince/.config/st/default.nix {};
|
||||
extra-icons = prev.callPackage ../../derivations/extra-icons {};
|
||||
# quickshell = (nixos-unstable.callPackage "${builtins.fetchGit {
|
||||
# url = "https://git.outfoxxed.me/outfoxxed/quickshell.git";
|
||||
# ref = "master";
|
||||
# }}/" {}).overrideAttrs (oa: {
|
||||
# buildInputs = (oa.buildInputs or []) ++ [ nixos-unstable.qt6.qt5compat ];
|
||||
# });
|
||||
quickshell = nixos-unstable.quickshell.overrideAttrs(oa: {
|
||||
buildInputs = (oa.buildInputs or []) ++ [ nixos-unstable.qt6.qt5compat ];
|
||||
st = prev.st.overrideAttrs (o: {
|
||||
src = /home/vince/.config/st;
|
||||
buildInputs = o.buildInputs ++ (with pkgs; [
|
||||
# Extra libraries needed to build patches
|
||||
harfbuzz
|
||||
imlib2
|
||||
]);
|
||||
});
|
||||
})
|
||||
];
|
||||
|
|
|
|||
18
quickshell/.config/quickshell/Globals.qml
Normal file
18
quickshell/.config/quickshell/Globals.qml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
pragma Singleton
|
||||
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
|
||||
Singleton {
|
||||
id: root
|
||||
property var popupContext: PopupContext {};
|
||||
property var date: new Date()
|
||||
|
||||
Timer {
|
||||
interval: 1000
|
||||
repeat: true
|
||||
running: true
|
||||
|
||||
onTriggered: root.date = new Date()
|
||||
}
|
||||
}
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
pragma Singleton
|
||||
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
|
||||
Singleton {
|
||||
property Item get: black
|
||||
|
||||
Item {
|
||||
id: windowsXP
|
||||
|
||||
property string barBgColor: "#235EDC"
|
||||
property string buttonBorderColor: "#99000000"
|
||||
property bool buttonBorderShadow: false
|
||||
property bool onTop: false
|
||||
property string iconColor: "green"
|
||||
property string iconPressedColor: "green"
|
||||
property Gradient barGradient: black.barGradient
|
||||
property Gradient buttonInactiveGradientV: Gradient {
|
||||
GradientStop { position: 0.0; color: "#55FFFFFF" }
|
||||
GradientStop { position: 0.3; color: "#22FFFFFF" }
|
||||
}
|
||||
property Gradient buttonInactiveGradientH: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: "#55FFFFFF" }
|
||||
GradientStop { position: 0.1; color: "#00000000" }
|
||||
}
|
||||
property Gradient buttonActiveGradient: Gradient {
|
||||
GradientStop { position: 0.0; color: "#99000000" }
|
||||
GradientStop { position: 0.3; color: "#55000000" }
|
||||
GradientStop { position: 1.0; color: "#55000000" }
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: black
|
||||
|
||||
property string barBgColor: "#cc000000"
|
||||
property string buttonBorderColor: "#44FFFFFF"
|
||||
property bool buttonBorderShadow: true
|
||||
property bool onTop: true
|
||||
property string iconColor: "blue"
|
||||
property string iconPressedColor: "dark_blue"
|
||||
property Gradient barGradient: Gradient {
|
||||
GradientStop { position: 0.0; color: "#55FFFFFF" }
|
||||
GradientStop { position: 0.4; color: "#00FFFFFF" }
|
||||
GradientStop { position: 0.8; color: "#00FFFFFF" }
|
||||
GradientStop { position: 1.0; color: "#AA000000" }
|
||||
}
|
||||
property Gradient buttonInactiveGradientV: Gradient {
|
||||
GradientStop { position: 0.0; color: "#33FFFFFF" }
|
||||
GradientStop { position: 0.3; color: "#55000000" }
|
||||
}
|
||||
property Gradient buttonInactiveGradientH: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: "#55FFFFFF" }
|
||||
GradientStop { position: 0.1; color: "#00000000" }
|
||||
}
|
||||
property Gradient buttonActiveGradient: Gradient {
|
||||
GradientStop { position: 0.92; color: "#FF000000" }
|
||||
GradientStop { position: 0.93; color: "#FFFFFFFF" }
|
||||
GradientStop { position: 1.0; color: "#FFFFFFFF" }
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: black_bright
|
||||
|
||||
property string barBgColor: black.barBgColor
|
||||
property string buttonBorderColor: windowsXP.buttonBorderColor
|
||||
property bool buttonBorderShadow: windowsXP.buttonBorderShadow
|
||||
property bool onTop: black.onTop
|
||||
property string iconColor: "orange"
|
||||
property string iconPressedColor: "orange"
|
||||
property Gradient barGradient: black.barGradient
|
||||
property Gradient buttonInactiveGradientV: windowsXP.buttonInactiveGradientV
|
||||
property Gradient buttonInactiveGradientH: windowsXP.buttonInactiveGradientH
|
||||
property Gradient buttonActiveGradient: windowsXP.buttonActiveGradient
|
||||
}
|
||||
|
||||
Item {
|
||||
id: black_flat
|
||||
|
||||
property string barBgColor: "#cc000000"
|
||||
property string buttonBorderColor: "#01000000" // Making this transparent breaks things
|
||||
property bool buttonBorderShadow: false
|
||||
property bool onTop: true
|
||||
property string iconColor: ""
|
||||
property string iconPressedColor: ""
|
||||
property Gradient barGradient: Gradient {
|
||||
GradientStop { position: 0.0; color: "transparent" }
|
||||
}
|
||||
property Gradient buttonInactiveGradientV: Gradient {
|
||||
GradientStop { position: 0.0; color: "transparent" }
|
||||
}
|
||||
property Gradient buttonInactiveGradientH: Gradient {
|
||||
orientation: Gradient.Horizontal
|
||||
GradientStop { position: 0.0; color: "transparent" }
|
||||
}
|
||||
property Gradient buttonActiveGradient: black.buttonActiveGradient
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,98 +1,49 @@
|
|||
import Quickshell
|
||||
import Quickshell.Io
|
||||
import Quickshell.Hyprland
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import "blocks" as Blocks
|
||||
import "root:/"
|
||||
|
||||
Scope {
|
||||
Variants {
|
||||
model: Quickshell.screens
|
||||
|
||||
PanelWindow {
|
||||
id: bar
|
||||
property var modelData
|
||||
screen: modelData
|
||||
|
||||
color: Theme.get.barBgColor
|
||||
|
||||
Rectangle {
|
||||
id: highlight
|
||||
anchors.fill: parent
|
||||
gradient: Theme.get.barGradient
|
||||
}
|
||||
|
||||
height: 30
|
||||
|
||||
visible: true
|
||||
|
||||
IpcHandler {
|
||||
target: "bar"
|
||||
|
||||
function toggleVis(): void {
|
||||
visible = !visible;
|
||||
}
|
||||
}
|
||||
color: "#cc000000"
|
||||
height: 27
|
||||
|
||||
anchors {
|
||||
top: Theme.get.onTop
|
||||
bottom: !Theme.get.onTop
|
||||
top: true
|
||||
left: true
|
||||
right: true
|
||||
}
|
||||
|
||||
RowLayout {
|
||||
id: allBlocks
|
||||
spacing: 0
|
||||
anchors.fill: parent
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
|
||||
// Left side
|
||||
RowLayout {
|
||||
id: leftBlocks
|
||||
spacing: 10
|
||||
spacing: 0
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
Layout.fillWidth: true
|
||||
|
||||
Blocks.Icon {}
|
||||
Blocks.Workspaces {}
|
||||
}
|
||||
|
||||
Blocks.ActiveWorkspace {
|
||||
id: activeWorkspace
|
||||
Layout.leftMargin: 10
|
||||
anchors.centerIn: undefined
|
||||
|
||||
chopLength: {
|
||||
var space = Math.floor(bar.width - (rightBlocks.implicitWidth + leftBlocks.implicitWidth))
|
||||
return space * 0.08;
|
||||
}
|
||||
|
||||
text: {
|
||||
var str = activeWindowTitle
|
||||
return str.length > chopLength ? str.slice(0, chopLength) + '...' : str;
|
||||
}
|
||||
|
||||
color: {
|
||||
return Hyprland.focusedMonitor == Hyprland.monitorFor(screen)
|
||||
? "#FFFFFF" : "#CCCCCC"
|
||||
}
|
||||
}
|
||||
|
||||
// Without this filler item, the active window block will be centered
|
||||
// despite setting left alignment
|
||||
Item {
|
||||
Layout.fillWidth: true
|
||||
Blocks.ActiveWorkspace {}
|
||||
}
|
||||
|
||||
// Right side
|
||||
RowLayout {
|
||||
id: rightBlocks
|
||||
spacing: 0
|
||||
Layout.alignment: Qt.AlignRight
|
||||
Layout.fillWidth: true
|
||||
|
||||
Blocks.SystemTray {}
|
||||
Blocks.Test {}
|
||||
Blocks.Notifications {}
|
||||
Blocks.Memory {}
|
||||
Blocks.Sound {}
|
||||
Blocks.Battery {}
|
||||
|
|
|
|||
|
|
@ -4,11 +4,8 @@ import Quickshell
|
|||
|
||||
Rectangle {
|
||||
id: root
|
||||
Layout.preferredWidth: contentContainer.implicitWidth + 10
|
||||
Layout.preferredHeight: 30
|
||||
|
||||
property Item content
|
||||
property Item mouseArea: mouseArea
|
||||
Layout.preferredWidth: wsText.implicitWidth + 10
|
||||
Layout.preferredHeight: 27
|
||||
|
||||
property string text
|
||||
property bool dim: false
|
||||
|
|
@ -17,7 +14,9 @@ Rectangle {
|
|||
property int leftPadding
|
||||
property int rightPadding
|
||||
|
||||
property string hoveredBgColor: "#666666"
|
||||
property string fgColor: "white"
|
||||
property string dimFgColor: "#999999"
|
||||
property string hoveredBgColor: "#444444"
|
||||
|
||||
// Background color
|
||||
color: {
|
||||
|
|
@ -41,13 +40,28 @@ Rectangle {
|
|||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
// Contents of the bar block
|
||||
id: contentContainer
|
||||
implicitWidth: content.implicitWidth
|
||||
implicitHeight: content.implicitHeight
|
||||
anchors.centerIn: parent
|
||||
children: content
|
||||
BarText {
|
||||
id: wsText
|
||||
text: root.text
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
leftMargin: root.leftPadding
|
||||
rightMargin: root.rightPadding
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
color: {
|
||||
if (mouseArea.containsMouse || !root.dim)
|
||||
return fgColor
|
||||
return dimFgColor
|
||||
}
|
||||
|
||||
Behavior on color {
|
||||
ColorAnimation {
|
||||
duration: 100
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
|
|
@ -62,11 +76,11 @@ Rectangle {
|
|||
Rectangle {
|
||||
id: wsLine
|
||||
width: parent.width
|
||||
height: 2
|
||||
height: 3
|
||||
|
||||
color: {
|
||||
if (parent.underline)
|
||||
return "white";
|
||||
return fgColor;
|
||||
return "transparent";
|
||||
}
|
||||
anchors.bottom: parent.bottom
|
||||
|
|
|
|||
|
|
@ -1,57 +1,39 @@
|
|||
import Quickshell
|
||||
import Quickshell.Io
|
||||
import Quickshell.Widgets
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import QtQuick.Effects
|
||||
import Qt5Compat.GraphicalEffects
|
||||
|
||||
Text {
|
||||
Item {
|
||||
property string text
|
||||
property string color: "white"
|
||||
property string mainFont: "FiraCode"
|
||||
property string symbolFont: "Symbols Nerd Font Mono"
|
||||
property int pointSize: 12
|
||||
property int symbolSize: pointSize * 1.37
|
||||
property string symbolText
|
||||
property bool dim
|
||||
text: wrapSymbols(symbolText)
|
||||
anchors.centerIn: parent
|
||||
color: dim ? "#CCCCCC" : "white"
|
||||
textFormat: Text.RichText
|
||||
font {
|
||||
family: mainFont
|
||||
pointSize: pointSize
|
||||
}
|
||||
property int pointSize: 11
|
||||
|
||||
Text {
|
||||
visible: false
|
||||
id: textcopy
|
||||
text: parent.text
|
||||
textFormat: parent.textFormat
|
||||
color: parent.color
|
||||
font: parent.font
|
||||
}
|
||||
|
||||
DropShadow {
|
||||
anchors.fill: parent
|
||||
horizontalOffset: 1
|
||||
verticalOffset: 1
|
||||
color: "#000000"
|
||||
source: textcopy
|
||||
}
|
||||
implicitWidth: thetext.implicitWidth
|
||||
implicitHeight: thetext.implicitHeight
|
||||
|
||||
function wrapSymbols(text) {
|
||||
if (!text)
|
||||
return ""
|
||||
|
||||
const isSymbol = (codePoint) =>
|
||||
(codePoint >= 0xE000 && codePoint <= 0xF8FF) // Private Use Area
|
||||
|| (codePoint >= 0xF0000 && codePoint <= 0xFFFFF) // Supplementary Private Use Area-A
|
||||
|| (codePoint >= 0x100000 && codePoint <= 0x10FFFF); // Supplementary Private Use Area-B
|
||||
|
||||
return text.replace(/./gu, (c) => isSymbol(c.codePointAt(0))
|
||||
? `<span style='font-family: ${symbolFont}; letter-spacing: -5px; font-size: ${symbolSize}px'>${c}</span>`
|
||||
// ? c
|
||||
? `<span style='font-family: ${symbolFont}; letter-spacing: -5px; font-size: ${pointSize + 4}px'>${c}</span>`
|
||||
: c);
|
||||
}
|
||||
|
||||
Text {
|
||||
id: thetext
|
||||
text: wrapSymbols(parent.text)
|
||||
color: parent.color
|
||||
anchors.centerIn: parent
|
||||
|
||||
font {
|
||||
family: parent.mainFont
|
||||
pointSize: parent.pointSize
|
||||
}
|
||||
textFormat: Text.RichText
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,16 +1,15 @@
|
|||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import Quickshell.Io
|
||||
import Quickshell.Hyprland
|
||||
import "../"
|
||||
|
||||
BarText {
|
||||
// text: {
|
||||
// var str = activeWindowTitle
|
||||
// return str.length > chopLength ? str.slice(0, chopLength) + '...' : str;
|
||||
// }
|
||||
text: {
|
||||
var str = activeWindowTitle
|
||||
return str.length > chopLength ? str.slice(0, chopLength) + '...' : str;
|
||||
}
|
||||
|
||||
property int chopLength
|
||||
property int chopLength: 70
|
||||
property string activeWindowTitle
|
||||
|
||||
Process {
|
||||
|
|
|
|||
|
|
@ -4,9 +4,7 @@ import "../"
|
|||
|
||||
BarBlock {
|
||||
property string battery
|
||||
content: BarText {
|
||||
symbolText: battery
|
||||
}
|
||||
text: battery
|
||||
|
||||
Process {
|
||||
id: batteryProc
|
||||
|
|
|
|||
|
|
@ -3,8 +3,6 @@ import "../"
|
|||
|
||||
BarBlock {
|
||||
id: text
|
||||
content: BarText {
|
||||
symbolText: ` ${Datetime.date}`
|
||||
}
|
||||
text: ` ${Datetime.date}`
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,66 +1,11 @@
|
|||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import Quickshell
|
||||
import Quickshell.Io
|
||||
import Quickshell.Widgets
|
||||
import Qt5Compat.GraphicalEffects
|
||||
import "../"
|
||||
import "root:/"
|
||||
|
||||
BarBlock {
|
||||
id: root
|
||||
Layout.preferredWidth: 40
|
||||
|
||||
content: BarText {
|
||||
Layout.preferredWidth: 30
|
||||
rightPadding: 5
|
||||
text: ""
|
||||
pointSize: 17
|
||||
anchors.horizontalCenterOffset: -2
|
||||
}
|
||||
// content: IconImage {
|
||||
// id: theicon
|
||||
// visible: false
|
||||
// anchors.centerIn: parent
|
||||
// source: "image://icon/extra-nixos"
|
||||
// implicitSize: 20
|
||||
// }
|
||||
// DropShadow {
|
||||
// anchors.fill: parent
|
||||
// horizontalOffset: 1
|
||||
// verticalOffset: 1
|
||||
// radius: 6.0
|
||||
// samples: 20
|
||||
// color: "#000000"
|
||||
// source: parent.content
|
||||
// }
|
||||
// IconImage {
|
||||
// anchors.centerIn: parent
|
||||
// source: "image://icon/extra-nixos"
|
||||
// implicitSize: 20
|
||||
// }
|
||||
|
||||
Image {
|
||||
anchors.fill: parent
|
||||
source: mouseArea.containsMouse
|
||||
? "../images/" + Theme.get.iconPressedColor + ".png"
|
||||
: "../images/" + Theme.get.iconColor + ".png";
|
||||
visible: true
|
||||
z: -1
|
||||
}
|
||||
|
||||
color: "transparent"
|
||||
|
||||
Process {
|
||||
id: neofetch
|
||||
running: false
|
||||
command: [ "sh", "-c", "hyprctl dispatch exec [float] \
|
||||
\"foot -W 95x22 -e zsh -c 'neofetch; while true; do; done'\"" ]
|
||||
stdout: SplitParser {
|
||||
onRead: data => console.log(`line read: ${data}`)
|
||||
}
|
||||
}
|
||||
|
||||
onClicked: function() {
|
||||
neofetch.running = true
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,9 +6,7 @@ import "../"
|
|||
|
||||
BarBlock {
|
||||
id: text
|
||||
content: BarText {
|
||||
symbolText: ` ${Math.floor(percentFree)}%`
|
||||
}
|
||||
text: ` ${Math.floor(percentFree)}%`
|
||||
|
||||
property real percentFree
|
||||
|
||||
|
|
|
|||
|
|
@ -7,15 +7,9 @@ import "../"
|
|||
|
||||
BarBlock {
|
||||
id: text
|
||||
visible: Pipewire.ready
|
||||
|
||||
content: BarText {
|
||||
symbolText: ` ${volume}`
|
||||
}
|
||||
text: ` ${Math.floor(sink?.audio.volume * 100)}%`
|
||||
|
||||
property PwNode sink: Pipewire.defaultAudioSink
|
||||
property string volume: Pipewire.ready ? `${Math.floor(sink.audio.volume * 100)}%` : ""
|
||||
|
||||
PwObjectTracker { objects: [ sink ] }
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,20 +4,13 @@ import QtQuick.Layouts
|
|||
import Quickshell
|
||||
import Quickshell.Widgets
|
||||
import Quickshell.Services.SystemTray
|
||||
import "root:/bar"
|
||||
import "../" as Bar
|
||||
|
||||
RowLayout {
|
||||
spacing: 5
|
||||
|
||||
Repeater {
|
||||
model: ScriptModel {
|
||||
values: {[...SystemTray.items.values]
|
||||
.filter((item) => {
|
||||
return (item.id != "spotify-client"
|
||||
&& item.id != "chrome_status_icon_1")
|
||||
})
|
||||
}
|
||||
}
|
||||
model: SystemTray.items
|
||||
|
||||
MouseArea {
|
||||
id: delegate
|
||||
|
|
@ -50,6 +43,7 @@ RowLayout {
|
|||
id: icon
|
||||
anchors.centerIn: parent
|
||||
source: item.icon
|
||||
|
||||
implicitSize: 16
|
||||
}
|
||||
|
||||
|
|
@ -68,7 +62,7 @@ RowLayout {
|
|||
}
|
||||
}
|
||||
|
||||
Tooltip {
|
||||
Bar.Tooltip {
|
||||
relativeItem: delegate.containsMouse ? delegate : null
|
||||
|
||||
Label {
|
||||
|
|
|
|||
|
|
@ -3,8 +3,6 @@ import "../"
|
|||
|
||||
BarBlock {
|
||||
id: text
|
||||
content: BarText {
|
||||
symbolText: ` ${Datetime.time}`
|
||||
}
|
||||
text: ` ${Datetime.time}`
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@ import QtQuick
|
|||
import QtQuick.Layouts
|
||||
import Quickshell
|
||||
import Quickshell.Hyprland
|
||||
import Quickshell.Widgets
|
||||
import Qt5Compat.GraphicalEffects
|
||||
import "root:/"
|
||||
import "../"
|
||||
|
||||
|
|
@ -45,224 +43,21 @@ RowLayout {
|
|||
property bool hasClients: ws.name.length > 2
|
||||
|
||||
dim: true
|
||||
underline: false
|
||||
border.color: Theme.get.buttonBorderColor
|
||||
radius: 5
|
||||
gradient: isActive || isOpen ? Theme.get.buttonActiveGradient : Theme.get.buttonInactiveGradientV
|
||||
Layout.preferredWidth: content.width + 20
|
||||
|
||||
Rectangle {
|
||||
visible: !isActive && !isOpen
|
||||
gradient: Theme.get.buttonInactiveGradientH
|
||||
implicitWidth: parent.width
|
||||
implicitHeight: parent.height
|
||||
radius: parent.radius
|
||||
z:-1
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
visible: Theme.get.buttonBorderShadow
|
||||
implicitWidth: parent.width - 1
|
||||
implicitHeight: parent.height - 1
|
||||
radius: parent.radius
|
||||
color: "transparent" // Transparent fill
|
||||
border.color: parent.isActive || parent.isOpen ? "transparent" : "black" // Inner border color
|
||||
border.width: 1 // Inner border width
|
||||
|
||||
x: 1
|
||||
y: 1
|
||||
z: -1
|
||||
}
|
||||
|
||||
underline: isActive || isOpen
|
||||
onClicked: function() {
|
||||
Hyprland.dispatch(`workspace ${ws.id}`);
|
||||
}
|
||||
|
||||
content: RowLayout {
|
||||
spacing: 0
|
||||
anchors.centerIn: parent
|
||||
|
||||
Repeater {
|
||||
id: therepeater
|
||||
model: ScriptModel {
|
||||
values: getChunks(ws.name)
|
||||
leftPadding: hasClients ? 2 : 0
|
||||
text: {
|
||||
if (isActive) {
|
||||
if (!hasClients)
|
||||
return `<span style='color:${fgColor};'>${ws.name}</span>`
|
||||
var split_i = ws.id > 9 ? 3 : 2
|
||||
return `<span style='color:${fgColor};'>${ws.name.slice(0, split_i)}</span>${ws.name.slice(split_i)}`
|
||||
}
|
||||
|
||||
delegate: Item {
|
||||
property bool showText: modelData.type === "text" && modelData.value.length > 0
|
||||
property bool showIcon: modelData.type === "icon"
|
||||
// property int symbolSize: 18
|
||||
property int symbolSize: 22
|
||||
property int spacerSize: 3
|
||||
|
||||
implicitWidth: {
|
||||
if (showText)
|
||||
return thetext.implicitWidth
|
||||
if (showIcon)
|
||||
return symbolSize
|
||||
return spacerSize;
|
||||
}
|
||||
implicitHeight: {
|
||||
if (showText)
|
||||
return thetext.implicitHeight
|
||||
if (showIcon)
|
||||
return symbolSize
|
||||
return spacerSize;
|
||||
}
|
||||
Layout.alignment: Qt.AlignCenter
|
||||
|
||||
Loader {
|
||||
id: thetext
|
||||
anchors.centerIn: parent
|
||||
active: modelData.type === "text"
|
||||
sourceComponent: BarText {
|
||||
text: modelData.value
|
||||
dim: !isActive
|
||||
|
||||
// pointSize: 10
|
||||
return ws.name
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: theicon
|
||||
anchors.centerIn: parent
|
||||
active: modelData.type === "icon"
|
||||
|
||||
sourceComponent: Item {
|
||||
implicitWidth: inside.implicitWidth
|
||||
implicitHeight: inside.implicitHeight
|
||||
IconImage {
|
||||
id: inside
|
||||
anchors.centerIn: parent
|
||||
source: modelData.source
|
||||
implicitSize: symbolSize
|
||||
opacity: modelData.active ? 1 : 0.7
|
||||
mipmap: true
|
||||
}
|
||||
DropShadow {
|
||||
anchors.fill: parent
|
||||
verticalOffset: 1
|
||||
horizontalOffset: 1
|
||||
radius: 8.0
|
||||
color: "#000000"
|
||||
source: inside
|
||||
opacity: modelData.active ? 1 : 0.7
|
||||
}
|
||||
Rectangle {
|
||||
visible: modelData.mult > 1
|
||||
width: 10
|
||||
height: width
|
||||
radius: width / 2
|
||||
color: "black"
|
||||
opacity: 0.8
|
||||
BarText {
|
||||
text: modelData.mult
|
||||
pointSize: 10
|
||||
dim: !isActive
|
||||
style: Text.Outline
|
||||
styleColor: "black"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getChunks(text) {
|
||||
let chunks = [];
|
||||
let buffer = ""; // Temporary storage for text segments
|
||||
|
||||
let symbolChunkInd = {}
|
||||
|
||||
let nextIsActive = false
|
||||
for (let c of text) {
|
||||
if (c === "") {
|
||||
nextIsActive = true
|
||||
continue
|
||||
}
|
||||
|
||||
if (!(c in symbolImgMap)) {
|
||||
buffer += c;
|
||||
nextIsActive = false
|
||||
continue;
|
||||
}
|
||||
|
||||
if (buffer.length > 0 && !/^\s*$/.test(buffer)) {
|
||||
chunks.push({
|
||||
type: "text",
|
||||
value: buffer,
|
||||
});
|
||||
buffer = ""; // Reset text buffer
|
||||
}
|
||||
|
||||
if (!(c in symbolChunkInd)) {
|
||||
if (chunks[chunks.length - 1].type == "icon") {
|
||||
chunks.push({type: "spacer"})
|
||||
}
|
||||
symbolChunkInd[c] = chunks.length
|
||||
chunks.push({
|
||||
type: "icon",
|
||||
active: nextIsActive,
|
||||
source: `image://icon/${symbolImgMap[c]}`,
|
||||
mult: 1, // multiplicity; how many times this symbol was seen
|
||||
});
|
||||
} else {
|
||||
chunks[symbolChunkInd[c]].mult++
|
||||
if (nextIsActive)
|
||||
chunks[symbolChunkInd[c]].active = true;
|
||||
}
|
||||
nextIsActive = false
|
||||
}
|
||||
|
||||
if (buffer.length > 0 && !/^\s*$/.test(buffer)) {
|
||||
chunks.push({ type: "text", value: buffer})
|
||||
}
|
||||
|
||||
return chunks;
|
||||
}
|
||||
|
||||
property var symbolImgMap: {
|
||||
"": "extra-scale-vim",
|
||||
"": "extra-scale-yazi",
|
||||
// "": "extra-zen",
|
||||
"": "extra-scale-firefox",
|
||||
"": "extra-scale-slack",
|
||||
"": "extra-scale-terminal-thin",
|
||||
"": "extra-scale-firefox",
|
||||
"": "extra-scale-element-desktop",
|
||||
"": "extra-scale-discord-circle-dark",
|
||||
"": "extra-scale-chromium",
|
||||
// "": "chromium",
|
||||
"": "libreoffice-draw",
|
||||
"": "libreoffice-writer",
|
||||
"": "libreoffice-calc",
|
||||
"": "libreoffice-impress",
|
||||
// "": "signal-desktop",
|
||||
"": "extra-signal-simple",
|
||||
"": "extra-zathura",
|
||||
"": "extra-spotify",
|
||||
// "": "extra-scale-spotify",
|
||||
"": "extra-steam",
|
||||
"": "extra-scale-bluetooth",
|
||||
"": "extra-anki",
|
||||
"": "extra-scale-gimp",
|
||||
"": "extra-ghidra",
|
||||
// "": "com.obsproject.Studio",
|
||||
"": "extra-scale-obs",
|
||||
"": "extra-scale-photos",
|
||||
"": "extra-anki",
|
||||
"": "extra-mpv",
|
||||
"": "extra-virtualbox",
|
||||
"": "extra-scale-emacs",
|
||||
"": "monero",
|
||||
"": "extra-system-explorer-outline",
|
||||
"": "extra-scale-vlc",
|
||||
"": "com.usebottles.bottles",
|
||||
"": "Zoom",
|
||||
"": "teams-for-linux",
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 36 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 37 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 35 KiB |
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 37 KiB |
|
|
@ -1,8 +1,8 @@
|
|||
//@ pragma UseQApplication
|
||||
import Quickshell
|
||||
import "bar"
|
||||
import "bar" as Bar
|
||||
|
||||
ShellRoot {
|
||||
Bar {}
|
||||
Bar.Bar {}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue