Chapter 3. rustfmt
The rustfmt tool provides automatic formatting of Rust source code.
Rust Toolset is distributed with rustfmt 1.0.0.
3.1. Installing rustfmt
On Red Hat Enterprise Linux 7, the rustfmt
tool is provided by the rust-toolset-1.31-rustfmt-preview package. To install it:
# yum install rust-toolset-1.31-rustfmt-preview
3.2. Using rustfmt as a standalone tool
To format a rust source file and all its dependencies with the rustfmt
tool:
For Red Hat Enterprise Linux 7:
$ scl enable rust-toolset-1.31 'rustfmt source-file'
For Red Hat Enterprise Linux 8:
$ rustfmt source-file
Replace source-file with path to the source file.
By default, rustfmt
modifies the affected files in place without displaying details or creating backups. To change the behavior, use the --write-mode value
option. For further details see the help mesage of rustfmt
:
For Red Hat Enterprise Linux 7:
$ scl enable rust-toolset-1.31 'rustfmt --help'
For Red Hat Enterprise Linux 8:
$ rustfmt --help
Additionally, rustfmt
accepts standard input instead of a file and provides its output in standard output.
3.3. Using rustfmt with cargo
To format all source files in a cargo crate:
For Red Hat Enterprise Linux 7:
$ scl enable rust-toolset-1.31 'cargo fmt'
For Red Hat Enterprise Linux 8:
$ cargo fmt
To change the rustfmt
formatting options, create the configuration file rustfmt.toml
in the project directory and supply the configuration there. For further details see the help message of rustfmt
:
For Red Hat Enterprise Linux 7:
$ scl enable rust-toolset-1.31 'rustfmt --config-help'
For Red Hat Enterprise Linux 8:
$ rustfmt --config-help
3.4. Additional Resources
Help messages of
rustfmt
:For Red Hat Enterprise Linux 7:
$ scl enable rust-toolset-1.31 'rustfmt --help' $ scl enable rust-toolset-1.31 'rustfmt --config-help'
For Red Hat Enterprise Linux 8:
$ rustfmt --help $ rustfmt --config-help
-
The file
Configurations.md
installed under/opt/rh/rust-toolset-1.31/root/usr/share/doc/rust-toolset-1.31-rustfmt-preview-0.8.2/Configurations.md