style: format entire depot with nixpkgs-fmt

This CL can be used to compare the style of nixpkgs-fmt against other
formatters (nixpkgs, alejandra).

Change-Id: I87c6abff6bcb546b02ead15ad0405f81e01b6d9e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4397
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: cynthia <cynthia@tvl.fyi>
Reviewed-by: edef <edef@edef.eu>
Reviewed-by: eta <tvl@eta.st>
Reviewed-by: grfn <grfn@gws.fyi>
This commit is contained in:
Vincent Ambo 2022-01-30 19:06:58 +03:00 committed by tazjin
parent 2d10d60fac
commit aa122cbae7
310 changed files with 7278 additions and 5490 deletions

View file

@ -21,7 +21,8 @@ let
charAt = i: s:
let
r = builtins.substring i 1 s;
in if r == "" then null else r;
in
if r == "" then null else r;
charIndex = char: s:
let
@ -32,7 +33,8 @@ let
[ (charAt i s == char) i ]
[ true (go (i + 1)) ]
];
in go 0;
in
go 0;
toChars = lib.stringToCharacters;
fromChars = lib.concatStrings;
@ -46,15 +48,16 @@ let
let
leftS = fromChars (builtins.genList (_: char) left);
rightS = fromChars (builtins.genList (_: char) right);
in "${leftS}${s}${rightS}";
in
"${leftS}${s}${rightS}";
fit = { char ? " ", width, side ? "left" }: s:
let
diff = width - builtins.stringLength s;
in
if diff <= 0
then s
else pad { inherit char; "${side}" = diff; } s;
if diff <= 0
then s
else pad { inherit char; "${side}" = diff; } s;
# pattern matching for strings only
match = val: matcher: matcher."${val}";
@ -80,23 +83,28 @@ let
tokens = lib.flatten (builtins.split "(%.)" formatString);
argsNeeded = builtins.length (builtins.filter specifierWithArg tokens);
format = args: (builtins.foldl' ({ out ? "", argIndex ? 0 }: token: {
argIndex = argIndex + (if specifierWithArg token then 1 else 0);
out =
/**/ if token == "%s" then out + builtins.elemAt args argIndex
else if token == "%%" then out + "%"
else if isSpecifier token then throw "Unsupported format specifier ${token}"
else out + token;
}) {} tokens).out;
format = args: (builtins.foldl'
({ out ? "", argIndex ? 0 }: token: {
argIndex = argIndex + (if specifierWithArg token then 1 else 0);
out =
/**/
if token == "%s" then out + builtins.elemAt args argIndex
else if token == "%%" then out + "%"
else if isSpecifier token then throw "Unsupported format specifier ${token}"
else out + token;
})
{ }
tokens).out;
accumulateArgs = argCount: args:
if argCount > 0
then arg: accumulateArgs (argCount - 1) (args ++ [ arg ])
else format args;
in
accumulateArgs argsNeeded [];
accumulateArgs argsNeeded [ ];
in {
in
{
inherit
take
drop

View file

@ -63,10 +63,10 @@ let
];
in
runTestsuite "nix.string" [
testTakeDrop
testIndexing
testFinding
testMatch
testPrintf
]
runTestsuite "nix.string" [
testTakeDrop
testIndexing
testFinding
testMatch
testPrintf
]