53 lines
1.7 KiB
Nix
53 lines
1.7 KiB
Nix
{ pkgs, ... }:
|
|
let tomlGenerate = (pkgs.formats.toml { }).generate; in
|
|
{
|
|
home.packages = [ pkgs.unstable_pkgs.yazi pkgs.ffmpegthumbnailer pkgs.exiftool pkgs.mediainfo ];
|
|
|
|
home.shellAliases."yz" = "yazi";
|
|
|
|
xdg.configFile."yazi/yazi.toml".source = tomlGenerate "yazi.toml" {
|
|
manager = {
|
|
sort_by = "natural";
|
|
sort_dir_first = true;
|
|
sort_reverse = false;
|
|
};
|
|
|
|
opener = {
|
|
folder = [
|
|
{ exec = ''xdg-open "$@"''; display_name = "Open folder"; }
|
|
{ exec = ''$EDITOR "$@"''; }
|
|
];
|
|
archive = [
|
|
{ exec = ''file-roller "$1"''; display_name = "Open with File Roller"; }
|
|
{ exec = ''unar "$1"''; display_name = "Extract here"; }
|
|
];
|
|
text = [
|
|
{ exec = ''$EDITOR "$@"''; block = true; display_name = "Open with editor"; }
|
|
];
|
|
image = [
|
|
{ exec = ''xdg-open "$@"''; display_name = "Open"; }
|
|
{ exec = '''exiftool "$1"; echo "Press enter to exit"; read''; block = true; display_name = "Show EXIF"; }
|
|
];
|
|
video = [
|
|
{ exec = ''mpv "$@"''; }
|
|
{ exec = ''mediainfo "$1"; echo "Press enter to exit"; read''; block = true; display_name = "Show media info"; }
|
|
];
|
|
audio = [
|
|
{ exec = ''mpv "$@"''; }
|
|
{ exec = '''mediainfo "$1"; echo "Press enter to exit"; read''; block = true; display_name = "Show media info"; }
|
|
];
|
|
fallback = [
|
|
{ exec = ''xdg-open "$@"''; display_name = "Open"; }
|
|
{ exec = ''bat --pagin=always "$@"''; block = true; display_name = "Open with bat"; }
|
|
{ exec = ''$EDITOR "$@"''; block = true; display_name = "Open with editor"; }
|
|
];
|
|
};
|
|
};
|
|
|
|
# programs.yazi = {
|
|
# enable = true;
|
|
# enableBashIntegration = true;
|
|
# enableZshIntegration = true;
|
|
# };
|
|
|
|
}
|