mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-01-21 16:21:34 +01:00
Improve clarity of ls alias generation
This commit is contained in:
parent
e7eaa7e482
commit
8730e3a2ee
1 changed files with 8 additions and 8 deletions
|
|
@ -18,22 +18,22 @@
|
|||
lsAliases = let
|
||||
list = "${lib.getExe pkgs.eza} --header --group --time-style=long-iso --group-directories-first --sort=name --icons=auto --git --git-repos-no-status --binary";
|
||||
|
||||
getFlag = alias:
|
||||
convertFlagAliasToFlag = char:
|
||||
{
|
||||
a = "--all";
|
||||
d = "--only-dirs";
|
||||
f = "--only-files";
|
||||
}
|
||||
.${alias};
|
||||
convertAliasesToFlags = str: "${lib.concatStringsSep " " (lib.forEach (lib.stringToCharacters str) getFlag)}";
|
||||
flagCombos = lib.crossLists (a: b: "${a}${b}") [["" "a"] ["" "d" "f"]];
|
||||
|
||||
flaggedAliases = lib.concatMapAttrs (name: value: {
|
||||
.${char};
|
||||
convertFlagAliasesToFlags = str: "${lib.concatStringsSep " " (lib.forEach (lib.stringToCharacters str) convertFlagAliasToFlag)}";
|
||||
flagAliasCombos = lib.crossLists (a: b: "${a}${b}") [["" "a"] ["" "d" "f"]];
|
||||
flagAttrs = lib.genAttrs flagAliasCombos convertFlagAliasesToFlags;
|
||||
aliasTemplate = name: value: {
|
||||
"l${name}" = "${list} --oneline --dereference ${value}";
|
||||
"ll${name}" = "${list} --long ${value}";
|
||||
"lt${name}" = "${list} --tree ${value}";
|
||||
})
|
||||
(lib.genAttrs flagCombos convertAliasesToFlags);
|
||||
};
|
||||
flaggedAliases = lib.concatMapAttrs aliasTemplate flagAttrs;
|
||||
in
|
||||
flaggedAliases // {ls = "l";};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue