{ pkgs, # config, lib, ... }: { programs.yazi.enable = true; programs.yazi = { shellWrapperName = "y"; # settings = { # opener = { # open = [ # { # run = "xdg-open \"$@\""; # orphan = true; # desc = "Open"; # } # ]; # edit = [ # { # run = "$EDITOR \"$@\""; # block = true; # desc = "Edit"; # } # ]; # dragdrop = [ # { # run = "${lib.getExe pkgs.ripdrag} -ab \"$@\""; # desc = "Drag'n'drop"; # orphan = true; # for = "unix"; # } # ]; # }; # open.rules = [ # { # mime = "text/*"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.json"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.yaml"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.yml"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.toml"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.sh"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.ini"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.conf"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.csv"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.go"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.html"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.c"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.cpp"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.rs"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.nix"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*.py"; # use = ["edit" "open" "dragdrop"]; # } # { # name = "*"; # use = ["open" "edit" "dragdrop"]; # } # ]; # }; }; }