Fantomas.Core
8.0.0-alpha-020
See the version list below for details.
dotnet add package Fantomas.Core --version 8.0.0-alpha-020
NuGet\Install-Package Fantomas.Core -Version 8.0.0-alpha-020
<PackageReference Include="Fantomas.Core" Version="8.0.0-alpha-020" />
<PackageVersion Include="Fantomas.Core" Version="8.0.0-alpha-020" />
<PackageReference Include="Fantomas.Core" />
paket add Fantomas.Core --version 8.0.0-alpha-020
#r "nuget: Fantomas.Core, 8.0.0-alpha-020"
#:package Fantomas.Core@8.0.0-alpha-020
#addin nuget:?package=Fantomas.Core&version=8.0.0-alpha-020&prerelease
#tool nuget:?package=Fantomas.Core&version=8.0.0-alpha-020&prerelease
Fantomas

An opinionated F# source code formatter.
dotnet tool install fantomas
Documentation is available at https://fsprojects.github.io/fantomas/docs/index.html
If you point a coding agent at Fantomas, give it llms.txt for an index of the documentation, or llms-full.txt for all of it in one file.
Contributing Guidelines
See the Contribution Guidelines and our contributors documentation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Fantomas.FCS (>= 8.0.0-alpha-020)
- FSharp.Core (>= 10.0.100)
- System.Collections.Immutable (>= 10.0.6)
- System.Diagnostics.DiagnosticSource (>= 10.0.6)
- System.Memory (>= 4.6.3)
- System.Runtime (>= 4.3.1)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Fantomas.Core:
| Package | Downloads |
|---|---|
|
Myriad.Core
Core Myriad library used for developing plugins |
|
|
Fantomas.Extras
Utility package for Fantomas |
|
|
WoofWare.Whippet.Fantomas
Helpers for accessing Fantomas syntax trees. |
|
|
Fabulous.AST
Fabulous.AST, an Abstract Syntax Tree (AST) Domain Specific Language (DSL) for F#. |
|
|
Partas.Feliz.Generator
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 8.0.0-alpha-022 | 0 | 8/27/2026 |
| 8.0.0-alpha-021 | 0 | 8/27/2026 |
| 8.0.0-alpha-020 | 6 | 8/27/2026 |
| 8.0.0-alpha-019 | 35 | 8/26/2026 |
| 8.0.0-alpha-018 | 32 | 8/26/2026 |
| 8.0.0-alpha-017 | 67 | 8/25/2026 |
| 8.0.0-alpha-016 | 68 | 8/25/2026 |
| 8.0.0-alpha-015 | 75 | 8/24/2026 |
| 8.0.0-alpha-014 | 85 | 8/20/2026 |
| 8.0.0-alpha-013 | 81 | 8/19/2026 |
| 8.0.0-alpha-012 | 145 | 4/16/2026 |
| 8.0.0-alpha-011 | 123 | 4/15/2026 |
| 8.0.0-alpha-010 | 121 | 4/15/2026 |
| 8.0.0-alpha-009 | 133 | 4/3/2026 |
| 8.0.0-alpha-008 | 143 | 3/25/2026 |
| 8.0.0-alpha-007 | 133 | 3/10/2026 |
| 8.0.0-alpha-006 | 126 | 3/9/2026 |
| 8.0.0-alpha-005 | 122 | 3/9/2026 |
| 8.0.0-alpha-004 | 123 | 3/7/2026 |
| 7.0.6 | 692 | 8/19/2026 |
### Fixed
- A list or an array on the right of `=`, `>`, `<`, `%` or `%%` is indented from the binding again, so `let a = b = [ ... ]` breaks to `b = [` with its items one level in and the `]` back at the column of `b`. Since `8.0.0-alpha-003` both the items and the closing bracket sat a further level to the right. The right-hand side of these operators is indented so that a comment between the operator and that side lands below the operator, which is what [#2944](https://github.com/fsprojects/fantomas/issues/2944) asked for, and so that the lines under a chain or an application are not read as a continuation of the left-hand side. A list or an array needs neither: its bracket says where the right-hand side begins and indents its items from the left-hand side by itself, so indenting it again pushed the items and the closing bracket a level too far. This concerns `aligned`, which is the default, and `stroustrup`. `cramped` lines the items up under the opening bracket, so the indent never reached them and nothing changes there. Right-hand sides that open a bracket in some other way, such as `seq { }`, `<@ @>`, `begin ... end` and `new T(...)`, still carry the extra level; where a no-break operator should put what follows it is a wider question than this fix. [#3428](https://github.com/fsprojects/fantomas/issues/3428)