repositories / dotfiles
dotfiles
bugabingas dorkfiles
owned by admin
nugu/yazi.nu
Rawuse palette.nu
# Generate a Yazi flavor.toml from the Nugu semantic palette.
export def flavor [mode: string] {
let nugu = (palette nugu $mode)
let p = $nugu.palette
let theme = {
mgr: {
cwd: { fg: $p.content.normal }
find_keyword: { fg: $p.content.accent, bold: true, italic: true, underline: true }
find_position: { fg: $p.content.accent, bold: true }
symlink_target: { fg: $p.content.minor }
marker_copied: { fg: $p.content.focus, bg: $p.content.focus }
marker_cut: { fg: $p.warning, bg: $p.warning }
marker_marked: { fg: $p.content.accent, bg: $p.content.accent }
marker_selected: { fg: $p.ui.important_local, bg: $p.ui.important_local }
count_copied: { fg: $p.content.backdrop, bg: $p.content.focus, bold: true }
count_cut: { fg: $p.content.backdrop, bg: $p.warning, bold: true }
count_selected: { fg: $p.ui.backdrop, bg: $p.ui.important_local, bold: true }
border_symbol: "│"
border_style: { fg: $p.ui.unfocus }
}
status: {
overall: { fg: $p.ui.normal, bg: $p.ui.backdrop }
sep_left: { open: "", close: "" }
sep_right: { open: "", close: "" }
perm_type: { fg: $p.content.important_global }
perm_read: { fg: $p.content.focus }
perm_write: { fg: $p.warning }
perm_exec: { fg: $p.error }
perm_sep: { fg: $p.content.minor }
progress_label: { fg: $p.content.normal, bold: true }
progress_normal: { fg: $p.ui.accent, bg: $p.ui.backdrop }
progress_error: { fg: $p.error, bg: $p.ui.backdrop }
}
mode: {
normal_main: { fg: $p.ui.backdrop, bg: $p.ui.accent, bold: true }
normal_alt: { fg: $p.ui.normal, bg: $p.ui.backdrop }
select_main: { fg: $p.ui.backdrop, bg: $p.ui.important_local, bold: true }
select_alt: { fg: $p.ui.normal, bg: $p.ui.backdrop }
unset_main: { fg: $p.content.backdrop, bg: $p.warning, bold: true }
unset_alt: { fg: $p.ui.normal, bg: $p.ui.backdrop }
}
tabs: {
active: { fg: $p.ui.backdrop, bg: $p.ui.accent, bold: true }
inactive: { fg: $p.ui.minor, bg: $p.ui.backdrop }
sep_inner: { open: "", close: "" }
sep_outer: { open: "", close: "" }
}
which: {
cols: 3
mask: { bg: $p.ui.backdrop }
cand: { fg: $p.ui.accent, bold: true }
rest: { fg: $p.ui.minor }
desc: { fg: $p.ui.normal }
separator: " → "
separator_style: { fg: $p.ui.minor }
}
input: {
border: { fg: $p.ui.unfocus }
title: { fg: $p.ui.accent, bold: true }
value: { fg: $p.content.normal }
selected: { fg: $p.content.backdrop, bg: $p.content.focus }
}
confirm: {
border: { fg: $p.warning }
title: { fg: $p.warning, bold: true }
body: { fg: $p.content.normal }
list: { fg: $p.content.normal }
btn_yes: { fg: $p.content.backdrop, bg: $p.error, bold: true }
btn_no: { fg: $p.ui.backdrop, bg: $p.ui.focus, bold: true }
btn_labels: ["yes", "no"]
}
spot: {
border: { fg: $p.ui.unfocus }
title: { fg: $p.ui.accent, bold: true }
tbl_col: { fg: $p.content.normal }
tbl_cell: { fg: $p.content.backdrop, bg: $p.content.focus }
}
pick: {
border: { fg: $p.ui.unfocus }
active: { fg: $p.ui.backdrop, bg: $p.ui.focus, bold: true }
inactive: { fg: $p.ui.normal }
}
cmp: {
border: { fg: $p.ui.unfocus }
active: { fg: $p.ui.backdrop, bg: $p.ui.focus, bold: true }
inactive: { fg: $p.ui.normal }
}
tasks: {
border: { fg: $p.ui.unfocus }
title: { fg: $p.ui.accent, bold: true }
hovered: { fg: $p.content.focus, bold: true }
}
help: {
on: { fg: $p.ui.accent, bold: true }
run: { fg: $p.content.important_local }
desc: { fg: $p.content.normal }
hovered: { fg: $p.ui.backdrop, bg: $p.ui.focus, bold: true }
footer: { fg: $p.ui.backdrop, bg: $p.ui.accent, bold: true }
}
notify: {
title_info: { fg: $p.info, bold: true }
title_warn: { fg: $p.warning, bold: true }
title_error: { fg: $p.error, bold: true }
}
filetype: {
rules: [
{ mime: "image/*", fg: $p.content.focus }
{ mime: "{audio,video}/*", fg: $p.content.important_local }
{ mime: "application/{zip,rar,7z*,tar,gzip,xz,zstd,bzip*,lzma,compress,archive,cpio,arj,xar,ms-cab*}", fg: $p.content.accent }
{ mime: "application/{pdf,doc,rtf}", fg: $p.content.important_global }
{ mime: "*", is: "orphan", fg: $p.content.backdrop, bg: $p.error, bold: true }
{ mime: "application/*exec*", fg: $p.error }
{ url: "*/", fg: $p.ui.accent, bold: true }
{ url: "*", fg: $p.content.normal }
]
}
git: {
unknown: { fg: $p.content.minor }
modified: { fg: $p.warning, bold: true }
added: { fg: $p.content.focus, bold: true }
untracked: { fg: $p.content.accent, bold: true }
ignored: { fg: $p.content.minor }
deleted: { fg: $p.error, bold: true }
updated: { fg: $p.warning, bold: true }
clean: { fg: $p.content.minor }
unknown_sign: ""
modified_sign: "M "
added_sign: "A "
untracked_sign: "? "
ignored_sign: "I "
deleted_sign: "D "
updated_sign: "U "
clean_sign: ""
}
}
$theme | to toml
}