mirror of
https://github.com/ItsDrike/nixdots
synced 2024-12-25 16:04:35 +00:00
Add yazi (terminal filemgr)
This commit is contained in:
parent
8d337e6a47
commit
aee32f4113
6
home/programs/terminal/file-managers/default.nix
Normal file
6
home/programs/terminal/file-managers/default.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
_: {
|
||||
imports = [
|
||||
./yazi
|
||||
];
|
||||
}
|
||||
|
41
home/programs/terminal/file-managers/yazi/default.nix
Normal file
41
home/programs/terminal/file-managers/yazi/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./theme/icons.nix
|
||||
./theme/manager.nix
|
||||
./theme/status.nix
|
||||
];
|
||||
|
||||
home.packages = [pkgs.exiftool];
|
||||
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
|
||||
enableBashIntegration = config.programs.bash.enable;
|
||||
enableZshIntegration = config.programs.zsh.enable;
|
||||
|
||||
settings = {
|
||||
manager = {
|
||||
layout = [1 4 3];
|
||||
sort_by = "alphabetical";
|
||||
sort_sensitive = true;
|
||||
sort_reverse = false;
|
||||
sort_dir_first = true;
|
||||
linemode = "none";
|
||||
show_hidden = false;
|
||||
show_symlink = true;
|
||||
};
|
||||
|
||||
preview = {
|
||||
tab_size = 2;
|
||||
max_width = 600;
|
||||
max_height = 900;
|
||||
cache_dir = "${config.xdg.cacheHome}/yazi";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
147
home/programs/terminal/file-managers/yazi/theme/icons.nix
Normal file
147
home/programs/terminal/file-managers/yazi/theme/icons.nix
Normal file
|
@ -0,0 +1,147 @@
|
|||
{
|
||||
programs.yazi.theme.icons = {
|
||||
# Default
|
||||
"*" = "";
|
||||
"*/" = "";
|
||||
|
||||
# Home
|
||||
".config/" = "";
|
||||
".ssh/" = "";
|
||||
"Desktop/" = "";
|
||||
"Development/" = "";
|
||||
"Documents/" = "";
|
||||
"Downloads/" = "";
|
||||
"Library/" = "";
|
||||
"Movies/" = "";
|
||||
"Music/" = "";
|
||||
"Pictures/" = "";
|
||||
"Videos/" = "";
|
||||
"Public/" = "";
|
||||
|
||||
# Git
|
||||
".git/" = "";
|
||||
".gitignore" = "";
|
||||
".gitmodules" = "";
|
||||
".gitattributes" = "";
|
||||
|
||||
# Dotfiles
|
||||
".DS_Store" = "";
|
||||
".bashrc" = "";
|
||||
".bashprofile" = "";
|
||||
".zshrc" = "";
|
||||
".zshenv" = "";
|
||||
".zprofile" = "";
|
||||
".vimrc" = "";
|
||||
|
||||
# Text
|
||||
"*.txt" = "";
|
||||
"*.md" = "";
|
||||
"*.rst" = "";
|
||||
COPYING = "";
|
||||
LICENSE = "";
|
||||
|
||||
# Archives
|
||||
"*.zip" = "";
|
||||
"*.tar" = "";
|
||||
"*.gz" = "";
|
||||
"*.7z" = "";
|
||||
"*.bz2" = "";
|
||||
"*.xz" = "";
|
||||
|
||||
# Documents
|
||||
"*.csv" = "";
|
||||
"*.doc" = "";
|
||||
"*.doct" = "";
|
||||
"*.docx" = "";
|
||||
"*.dot" = "";
|
||||
"*.ods" = "";
|
||||
"*.ots" = "";
|
||||
"*.pdf" = "";
|
||||
"*.pom" = "";
|
||||
"*.pot" = "";
|
||||
"*.ppm" = "";
|
||||
"*.pps" = "";
|
||||
"*.ppt" = "";
|
||||
"*.potx" = "";
|
||||
"*.ppmx" = "";
|
||||
"*.ppsx" = "";
|
||||
"*.pptx" = "";
|
||||
"*.xlc" = "";
|
||||
"*.xlm" = "";
|
||||
"*.xls" = "";
|
||||
"*.xlt" = "";
|
||||
"*.xlsm" = "";
|
||||
"*.xlsx" = "";
|
||||
|
||||
# Audio
|
||||
"*.mp3" = "";
|
||||
"*.flac" = "";
|
||||
"*.wav" = "";
|
||||
"*.aac" = "";
|
||||
"*.ogg" = "";
|
||||
"*.m4a" = "";
|
||||
"*.mp2" = "";
|
||||
|
||||
# Movies
|
||||
"*.mp4" = "";
|
||||
"*.mkv" = "";
|
||||
"*.avi" = "";
|
||||
"*.mov" = "";
|
||||
"*.webm" = "";
|
||||
|
||||
# Images
|
||||
"*.jpg" = "";
|
||||
"*.jpeg" = "";
|
||||
"*.png" = "";
|
||||
"*.gif" = "";
|
||||
"*.webp" = "";
|
||||
"*.avif" = "";
|
||||
"*.bmp" = "";
|
||||
"*.ico" = "";
|
||||
"*.svg" = "";
|
||||
"*.xcf" = "";
|
||||
"*.HEIC" = "";
|
||||
|
||||
# Programming
|
||||
"*.c" = "";
|
||||
"*.cpp" = "";
|
||||
"*.h" = "";
|
||||
"*.hpp" = "";
|
||||
"*.rs" = "";
|
||||
"*.go" = "";
|
||||
"*.py" = "";
|
||||
"*.hs" = "";
|
||||
"*.js" = "";
|
||||
"*.ts" = "";
|
||||
"*.tsx" = "";
|
||||
"*.jsx" = "";
|
||||
"*.rb" = "";
|
||||
"*.php" = "";
|
||||
"*.java" = "";
|
||||
"*.sh" = "";
|
||||
"*.fish" = "";
|
||||
"*.swift" = "";
|
||||
"*.vim" = "";
|
||||
"*.lua" = "";
|
||||
"*.html" = "";
|
||||
"*.css" = "";
|
||||
"*.sass" = "";
|
||||
"*.scss" = "";
|
||||
"*.json" = "";
|
||||
"*.toml" = "";
|
||||
"*.yml" = "";
|
||||
"*.yaml" = "";
|
||||
"*.ini" = "";
|
||||
"*.conf" = "";
|
||||
"*.lock" = "";
|
||||
"*.nix" = "";
|
||||
Containerfile = "";
|
||||
Dockerfile = "";
|
||||
|
||||
# Misc
|
||||
"*.bin" = "";
|
||||
"*.exe" = "";
|
||||
"*.pkg" = "";
|
||||
};
|
||||
}
|
||||
|
64
home/programs/terminal/file-managers/yazi/theme/manager.nix
Normal file
64
home/programs/terminal/file-managers/yazi/theme/manager.nix
Normal file
|
@ -0,0 +1,64 @@
|
|||
{
|
||||
programs.yazi.theme.manager = {
|
||||
cwd = {fg = "cyan";};
|
||||
|
||||
# Hovered
|
||||
hovered = {
|
||||
fg = "black";
|
||||
bg = "lightblue";
|
||||
};
|
||||
|
||||
preview_hovered = {
|
||||
fg = "black";
|
||||
bg = "lightblue";
|
||||
};
|
||||
|
||||
# Find
|
||||
find_keyword = {
|
||||
fg = "yellow";
|
||||
italic = true;
|
||||
};
|
||||
find_position = {
|
||||
fg = "magenta";
|
||||
bg = "reset";
|
||||
italic = true;
|
||||
};
|
||||
|
||||
# Marker
|
||||
marker_selected = {
|
||||
fg = "lightgreen";
|
||||
# bg = "lightgreen";
|
||||
};
|
||||
marker_copied = {
|
||||
fg = "lightyellow";
|
||||
# bg = "lightyellow";
|
||||
};
|
||||
marker_cut = {
|
||||
fg = "lightred";
|
||||
# bg = "lightred";
|
||||
};
|
||||
|
||||
# Tab
|
||||
tab_active = {
|
||||
fg = "black";
|
||||
bg = "lightblue";
|
||||
};
|
||||
tab_inactive = {
|
||||
fg = "white";
|
||||
bg = "darkgray";
|
||||
};
|
||||
tab_width = 1;
|
||||
|
||||
# Border;
|
||||
border_symbol = "│";
|
||||
border_style = {fg = "gray";};
|
||||
|
||||
# Offset;
|
||||
folder_offset = [1 0 1 0];
|
||||
preview_offset = [1 1 1 1];
|
||||
|
||||
# Highlighting;
|
||||
syntect_theme = "";
|
||||
};
|
||||
}
|
||||
|
46
home/programs/terminal/file-managers/yazi/theme/status.nix
Normal file
46
home/programs/terminal/file-managers/yazi/theme/status.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
programs.yazi.theme.status = {
|
||||
separator_open = "█";
|
||||
separator_close = "█";
|
||||
separator_style = {
|
||||
fg = "darkgray";
|
||||
bg = "darkgray";
|
||||
};
|
||||
|
||||
# Mode;
|
||||
mode_normal = {
|
||||
fg = "black";
|
||||
bg = "lightblue";
|
||||
bold = true;
|
||||
};
|
||||
mode_select = {
|
||||
fg = "black";
|
||||
bg = "lightgreen";
|
||||
bold = true;
|
||||
};
|
||||
mode_unset = {
|
||||
fg = "black";
|
||||
bg = "lightmagenta";
|
||||
bold = true;
|
||||
};
|
||||
|
||||
# Progress;
|
||||
progress_label = {bold = true;};
|
||||
progress_normal = {
|
||||
fg = "blue";
|
||||
bg = "black";
|
||||
};
|
||||
progress_error = {
|
||||
fg = "red";
|
||||
bg = "black";
|
||||
};
|
||||
|
||||
# Permissions;
|
||||
permissions_t = {fg = "blue";};
|
||||
permissions_r = {fg = "lightyellow";};
|
||||
permissions_w = {fg = "lightred";};
|
||||
permissions_x = {fg = "lightgreen";};
|
||||
permissions_s = {fg = "darkgray";};
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in a new issue