🎃
rustfmtメモ [blessed.rsシリーズ4]
概要
こちらのリストにあるものを見て書いたメモの共有です。
内容はまとめておらず、順番もぐちゃぐちゃ。あくまでメモになります。
また、網羅的にメモしているわけではなく、自分が必要だと思ったもののみメモしているため、内容が偏っているかもしれません。
今回はrustfmtについてです。
rustfmtとは
Rustコードをスタイルガイドラインに従ってフォーマットするツール
github
contributing
コントリビュートしたいときはこちらを参照
使い方
インストールしていれば以下で実行
$ cargo fmt
インストール方法などは上記のリンクより
修正を行わないモード
デフォルトではcargo fmt
で修正まで行うが、--check
をつけることで、修正を行わず、修正内容を教えてくれるようになる。
また、このときエラー扱いになるため、CIなどで使用する場合は--check
をつけるのがいいかもしれない
all
--all
をつけることで以下のようになる。
Format all packages, and also their local path-based dependencies
しかし、詳しい範囲までは調べていない。
Config
rustfmt.tomlで設定できる
内容については上記を参照
Rust Style Guide
Rustスタイルガイドでは、デフォルトのRustスタイルを定義している。
rustfmtを無視したい場合
rustfmtを無視したい場合は#[rustfmt::skip]
をつける
マクロや属性のrustfmtを防ぐためには、#[rustfmt::skip::macros(target_macro_name)]
や#[rustfmt::skip::attributes(target_attribute_name)]
を使用する
Discussion