Misc formatting
This commit is contained in:
parent
be91349e6a
commit
a7ed77a74c
@ -21,21 +21,29 @@ let
|
|||||||
inherit (lib.strings) concatStringsSep;
|
inherit (lib.strings) concatStringsSep;
|
||||||
inherit (lib.termColors.front) blue;
|
inherit (lib.termColors.front) blue;
|
||||||
genWrapper = type: value: { inherit type; inherit value; };
|
genWrapper = type: value: { inherit type; inherit value; };
|
||||||
in {
|
in
|
||||||
shellPipe = {
|
{
|
||||||
wrap = genWrapper "shellPipe";
|
shellPipe = {
|
||||||
apply = f: concatStringsSep " | " f.value;
|
wrap = genWrapper "shellPipe";
|
||||||
stringify = f: concatStringsSep (blue "\n| ") f.value;
|
apply = f: concatStringsSep " | " f.value;
|
||||||
|
stringify = f: concatStringsSep (blue "\n| ") f.value;
|
||||||
|
};
|
||||||
|
join = {
|
||||||
|
wrap = genWrapper "join";
|
||||||
|
apply = f: concatStringsSep " " f.value;
|
||||||
|
stringify = f: concatStringsSep " \\\n " f.value;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
join = {
|
|
||||||
wrap = genWrapper "join";
|
|
||||||
apply = f: concatStringsSep " " f.value;
|
|
||||||
stringify = f: concatStringsSep " \\\n " f.value;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# AttrSet -> Bool
|
# AttrSet -> Bool
|
||||||
isFunctor = attrset: if !(attrset ? "type") then false else lib.lists.any (f: (f.wrap "").type == attrset.type) (lib.attrsets.attrValues functors);
|
isFunctor = let
|
||||||
|
inherit (lib.lists) any;
|
||||||
|
inherit (lib.attrsets) attrValues;
|
||||||
|
in
|
||||||
|
attrset:
|
||||||
|
if !(attrset ? "type")
|
||||||
|
then false
|
||||||
|
else any (f: (f.wrap "").type == attrset.type) (attrValues functors);
|
||||||
|
|
||||||
in rec {
|
in rec {
|
||||||
_module.args.shellOptions = {
|
_module.args.shellOptions = {
|
||||||
@ -349,14 +357,16 @@ in rec {
|
|||||||
removeNixLinks = text: let
|
removeNixLinks = text: let
|
||||||
maybeMatches = builtins.match "(|.*[^)])(/nix/store/.*/bin/).*" text;
|
maybeMatches = builtins.match "(|.*[^)])(/nix/store/.*/bin/).*" text;
|
||||||
matches = mapNullable (remove "") maybeMatches;
|
matches = mapNullable (remove "") maybeMatches;
|
||||||
in if (maybeMatches == null)
|
in
|
||||||
then text
|
if (maybeMatches == null)
|
||||||
else replaceStrings' matches "" text;
|
then text
|
||||||
|
else replaceStrings' matches "" text;
|
||||||
|
|
||||||
applyFunctor = attrset: let
|
applyFunctor = attrset: let
|
||||||
applied = functors.${attrset.type}.stringify attrset;
|
applied = functors.${attrset.type}.stringify attrset;
|
||||||
indent' = indent + (repeatString " " ((stringLength " ->") + (stringLength n)));
|
indent' = indent + (repeatString " " ((stringLength " -> \"") + (stringLength n))) + " ";
|
||||||
in replaceStrings' ["\n"] ("\n" + indent') applied;
|
in
|
||||||
|
replaceStrings' ["\n"] ("\n" + indent') applied;
|
||||||
|
|
||||||
recurse = stringifyCategory (level + 1) n v;
|
recurse = stringifyCategory (level + 1) n v;
|
||||||
in
|
in
|
||||||
|
Loading…
Reference in New Issue
Block a user