| Branch | Windows (Debug) | Windows (Release) | Linux (Debug) | Linux (Release) | Localization (Debug) | Localization (Release) |
|---|---|---|---|---|---|---|
| master |
dotnet-format is a code formatter for dotnet that applies style preferences to a project or solution. Preferences will be read from an .editorconfig file, if present, otherwise a default set of preferences will be used. At this time dotnet-format is able to format C# and Visual Basic projects with a subset of supported .editorconfig options.
- Enhance --files option to support folder paths and add --include alias (533)
- format-500: Add
--excludeoption to ignore given files/folders (529) - format-379: Add
--reportcommand line argument to export json format report to given directory (495) - Update charset formatter to check for equivalent encodings (508)
The dotnet-format nuget package is published to nuget.org.
You can install the tool using the following command.
dotnet tool install -g dotnet-formatDevelopment builds of dotnet-format are being hosted on myget. You can visit the dotnet-format myget page to get the latest version number.
You can install the tool using the following command.
dotnet tool install -g dotnet-format --version 4.0.111308 --add-source https://dotnet.myget.org/F/format/api/v3/index.jsonBy default dotnet-format will look in the current directory for a project or solution file and use that as the workspace to format. If more than one project or solution file is present in the current directory you will need to specify the workspace to format using the -w or -f options. You can control how verbose the output will be by using the -v option.
Usage:
dotnet-format [options]
Options:
-f, --folder <FOLDER> The folder to operate on. Cannot be used with the `--workspace` option.
-w, --workspace <WORKSPACE> The solution or project file to operate on. If a file is not specified, the command will search the current directory for one.
--files, --include <INCLUDE> A list of relative file or folder paths to include in formatting. All files are formatted if empty.
--exclude <EXCLUDE> A list of relative file or folder paths to exclude from formatting.
--check, --dry-run <CHECK> Formats files without saving changes to disk. Terminates with a non-zero exit code if any files were formatted.
--report <REPORT> Accepts a file path, which if provided, will produce a json report in the given directory.
-v, --verbosity <VERBOSITY> Set the verbosity level. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]
--version Display version informationAdd format after dotnet and before the command arguments that you want to run:
| Examples | Description |
|---|---|
| dotnet format | Formats the project or solution in the current directory. |
| dotnet format -f <folder> | Formats a particular folder and subfolders. |
| dotnet format -w <workspace> | Formats a specific project or solution. |
| dotnet format -v diag | Formats with very verbose logging. |
| dotnet format --include Programs.cs Utility\Logging.cs | Formats the files Program.cs and Utility\Logging.cs |
| dotnet format --check | Formats but does not save. Returns a non-zero exit code if any files would have been changed. |
| dotnet format --report <report-path> | Formats and saves a json report file to the given directory. |
You can uninstall the tool using the following command.
dotnet tool uninstall -g dotnet-formatYou can build and package the tool using the following commands. The instructions assume that you are in the root of the repository.
build -pack
# The final line from the build will read something like
# Successfully created package '..\artifacts\packages\Debug\Shipping\dotnet-format.4.0.0-dev.nupkg'.
# Use the value that is in the form `4.0.0-dev` as the version in the next command.
dotnet tool install --add-source .\artifacts\packages\Debug\Shipping -g dotnet-format --version <version>
dotnet formatNote: On macOS and Linux,
.\artifactswill need be switched to./artifactsto accommodate for the different slash directions.
