configuration.nix/home/programs/files.nix

45 lines
1.2 KiB
Nix

{ config, ... }: {
programs = {
fd = {
enable = true;
ignores = [ ".git/" "node_modules/" ];
};
yazi = {
enable = true;
enableZshIntegration = true;
settings = {
manager = {
sort_by = "natural";
sort_dir_first = true;
show_hidden = true;
};
preview = {
image_filter = "lanczos3";
image_quality = 90;
};
opener = {
open-image = [
{ run = "${config.programs.imv.package}/bin/imv $0"; orphan = true; }
];
edit-text = [
{ run = "${config.programs.neovim.package}/bin/nvim $0"; block = true; }
];
play = [
{ run = "${config.programs.mpv.package}/bin/mpv $0"; orphan = true; }
];
terminal = [
{ run = "${config.programs.kitty.package}/bin/kitty --class=yazi -d=$0"; orphan = true; }
];
};
open.rules = [
{ mime = "image/*"; use = "open-image"; }
{ mime = "text/*"; use = [ "edit-text" ]; }
{ mime = "video/*"; use = [ "play" ]; }
{ mime = "inode/directory"; use = [ "terminal" ]; }
];
};
};
};
}