Closed5

rustfmtの設定検討

eduidleduidl

めぼしいものだけ取り上げる

stable? デフォルト 変更後 内容
format_code_in_doc_comments No false true docコメント中のコードもフォーマットする
group_imports No "Preserve" "StdExternalCrate" 標準ライブラリ、サードパーティ、自身のインポートでブロックをわけるか
imports_granularity No "Preserve" "Crate" useをどの程度まとめるか
imports_layout No "Mixed" "HorizontalVertical" use hoge::{}の波括弧内の改行
unstable_features No false true stableでない設定を使いたいときにtrue
use_field_init_shorthand Yes false true { x: x }{ x }に直すか.clippyのclippy::redundant_field_namesと被ってる
eduidleduidl

VSCodeとrust-analyzerを使っていて、フォーマットをnightlyで行いたい場合、rust-analyzer.rustfmt.extraArgs に "+nightly"を追加すれば良い.

{
  "rust-analyzer.rustfmt.extraArgs": ["+nightly"]
}
eduidleduidl

メモ

wrap_commentsは最初使えるかと思ったが、ドキュメント中のコードの改行がつらそうなのでやめた.
format_macro_matchersは、フォーマットされるやつとされないやつで差があってよくわからないので、やめた.

eduidleduidl

暫定

format_code_in_doc_comments = true
group_imports = "StdExternalCrate"
imports_granularity = "Crate"
imports_layout = "HorizontalVertical"
unstable_features = true
use_field_init_shorthand = true
このスクラップは2021/08/22にクローズされました