mirror of
https://github.com/RGBCube/alejandra
synced 2025-08-01 04:57:44 +00:00
commit
6236164305
4 changed files with 112 additions and 11 deletions
18
README.md
18
README.md
|
@ -40,12 +40,12 @@
|
||||||
[^benchmark-specs]
|
[^benchmark-specs]
|
||||||
|
|
||||||
| Cores | Seconds |
|
| Cores | Seconds |
|
||||||
|:-----:|:--------:
|
| :---: | :-----: |
|
||||||
| 1 | 40 |
|
| 1 | 40 |
|
||||||
| 2 | 21 |
|
| 2 | 21 |
|
||||||
| 4 | 15 |
|
| 4 | 15 |
|
||||||
| 8 | 11 |
|
| 8 | 11 |
|
||||||
| 16 | 10 |
|
| 16 | 10 |
|
||||||
|
|
||||||
- ✔️ **Powerful**
|
- ✔️ **Powerful**
|
||||||
|
|
||||||
|
@ -84,6 +84,7 @@ Let's get Alejandra on our systems:
|
||||||
- Nix stable:
|
- Nix stable:
|
||||||
|
|
||||||
Pick one depending on your platform:
|
Pick one depending on your platform:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ nix-env -ivA aarch64-darwin -f https://github.com/kamadorueda/alejandra/tarball/main
|
$ nix-env -ivA aarch64-darwin -f https://github.com/kamadorueda/alejandra/tarball/main
|
||||||
$ nix-env -ivA aarch64-linux -f https://github.com/kamadorueda/alejandra/tarball/main
|
$ nix-env -ivA aarch64-linux -f https://github.com/kamadorueda/alejandra/tarball/main
|
||||||
|
@ -118,7 +119,6 @@ Let's get Alejandra on our systems:
|
||||||
## Footnotes
|
## Footnotes
|
||||||
|
|
||||||
[^benchmark-specs]:
|
[^benchmark-specs]:
|
||||||
|
|
||||||
Running on a [machine](https://github.com/kamadorueda/machine) with:
|
Running on a [machine](https://github.com/kamadorueda/machine) with:
|
||||||
|
|
||||||
- CPU: 16 x Intel(R) Core(TM) i7-10700K
|
- CPU: 16 x Intel(R) Core(TM) i7-10700K
|
||||||
|
@ -126,9 +126,7 @@ Let's get Alejandra on our systems:
|
||||||
- BogoMips: 7599.80
|
- BogoMips: 7599.80
|
||||||
- Cache Size: 16384 KB
|
- Cache Size: 16384 KB
|
||||||
|
|
||||||
[^semantic-changes]:
|
[^semantic-changes]: The methodology to claim this is:
|
||||||
|
|
||||||
The methodology to claim this is:
|
|
||||||
|
|
||||||
1. Checkout [Nixpkgs](https://github.com/nixos/nixpkgs) and run:
|
1. Checkout [Nixpkgs](https://github.com/nixos/nixpkgs) and run:
|
||||||
|
|
||||||
|
|
39
flake.lock
generated
39
flake.lock
generated
|
@ -21,6 +21,21 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1610051610,
|
||||||
|
"narHash": "sha256-U9rPz/usA1/Aohhk7Cmc2gBrEEKRzcW4nwPWMPwja4Y=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "3982c9903e93927c2164caa727cd3f6a0e6d14cc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flakeCompat": {
|
"flakeCompat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -73,7 +88,8 @@
|
||||||
"fenix": "fenix",
|
"fenix": "fenix",
|
||||||
"flakeCompat": "flakeCompat",
|
"flakeCompat": "flakeCompat",
|
||||||
"flakeUtils": "flakeUtils",
|
"flakeUtils": "flakeUtils",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
|
"treefmt": "treefmt"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-analyzer-src": {
|
"rust-analyzer-src": {
|
||||||
|
@ -92,6 +108,27 @@
|
||||||
"repo": "rust-analyzer",
|
"repo": "rust-analyzer",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"treefmt": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1640364438,
|
||||||
|
"narHash": "sha256-sV1Oa9JVNmpAwZ4cnVs7ovHrKL8EPg3J08jPX/a48LI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt",
|
||||||
|
"rev": "26d7f5f15e5d22d4413ba7c5ae0447fdc0b5cc76",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
|
@ -5,6 +5,8 @@
|
||||||
flakeCompat.url = github:edolstra/flake-compat;
|
flakeCompat.url = github:edolstra/flake-compat;
|
||||||
flakeCompat.flake = false;
|
flakeCompat.flake = false;
|
||||||
flakeUtils.url = "github:numtide/flake-utils";
|
flakeUtils.url = "github:numtide/flake-utils";
|
||||||
|
treefmt.url = "github:numtide/treefmt";
|
||||||
|
treefmt.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||||
};
|
};
|
||||||
outputs =
|
outputs =
|
||||||
|
@ -15,6 +17,7 @@
|
||||||
let
|
let
|
||||||
nixpkgs = import inputs.nixpkgs { inherit system; };
|
nixpkgs = import inputs.nixpkgs { inherit system; };
|
||||||
cargoToml = builtins.fromTOML ( builtins.readFile ./Cargo.toml );
|
cargoToml = builtins.fromTOML ( builtins.readFile ./Cargo.toml );
|
||||||
|
treefmt = inputs.treefmt.defaultPackage.${ system };
|
||||||
fenix = inputs.fenix.packages.${ system };
|
fenix = inputs.fenix.packages.${ system };
|
||||||
fenixPlatform = nixpkgs.makeRustPlatform { inherit ( fenix.latest ) cargo rustc; };
|
fenixPlatform = nixpkgs.makeRustPlatform { inherit ( fenix.latest ) cargo rustc; };
|
||||||
in
|
in
|
||||||
|
@ -53,7 +56,11 @@
|
||||||
fenix.latest.rust-src
|
fenix.latest.rust-src
|
||||||
fenix.latest.rustc
|
fenix.latest.rustc
|
||||||
fenix.latest.rustfmt
|
fenix.latest.rustfmt
|
||||||
|
treefmt
|
||||||
|
nixpkgs.shfmt
|
||||||
|
nixpkgs.nodePackages.prettier
|
||||||
];
|
];
|
||||||
|
shellHook = "cargo build";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
59
treefmt.toml
Normal file
59
treefmt.toml
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
# One CLI to format the code tree - https://github.com/numtide/treefmt
|
||||||
|
|
||||||
|
[formatter.nix]
|
||||||
|
command = "./target/debug/alejandra"
|
||||||
|
includes = ["*.nix"]
|
||||||
|
|
||||||
|
[formatter.prettier]
|
||||||
|
command = "prettier"
|
||||||
|
options = ["--write"]
|
||||||
|
includes = [
|
||||||
|
"*.css",
|
||||||
|
"*.html",
|
||||||
|
"*.js",
|
||||||
|
"*.json",
|
||||||
|
"*.jsx",
|
||||||
|
"*.md",
|
||||||
|
"*.mdx",
|
||||||
|
"*.scss",
|
||||||
|
"*.ts",
|
||||||
|
"*.yaml",
|
||||||
|
]
|
||||||
|
|
||||||
|
[formatter.rust]
|
||||||
|
command = "rustfmt"
|
||||||
|
options = [
|
||||||
|
"--edition", "2021",
|
||||||
|
"--config",
|
||||||
|
"""enum_discrim_align_threshold=999,\
|
||||||
|
format_code_in_doc_comments=true,\
|
||||||
|
format_generated_files=true,\
|
||||||
|
format_macro_bodies=true,\
|
||||||
|
format_macro_matchers=true,\
|
||||||
|
format_strings=true,\
|
||||||
|
hex_literal_case=Lower,\
|
||||||
|
imports_granularity=Crate,\
|
||||||
|
imports_layout=HorizontalVertical,\
|
||||||
|
max_width=80,\
|
||||||
|
normalize_comments=true,\
|
||||||
|
normalize_doc_attributes=true,\
|
||||||
|
reorder_impl_items=true,\
|
||||||
|
struct_field_align_threshold=999,\
|
||||||
|
unstable_features=true,\
|
||||||
|
use_small_heuristics=Max,\
|
||||||
|
version=Two""",
|
||||||
|
]
|
||||||
|
includes = ["*.rs"]
|
||||||
|
|
||||||
|
[formatter.shell]
|
||||||
|
command = "shfmt"
|
||||||
|
options = [
|
||||||
|
"-bn", # binary ops like && and | may start a line
|
||||||
|
"-ci", # switch cases will be indented
|
||||||
|
"-sr", # redirect operators will be followed by a space
|
||||||
|
"-i", "2", # indent 2
|
||||||
|
"-s", # simplify the code
|
||||||
|
"-w", # write back to the file
|
||||||
|
]
|
||||||
|
includes = ["*.sh"]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue