Closed5

rustfmtの設定検討

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

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と被ってる

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

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

メモ

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

暫定

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/21にクローズされました
作成者以外のコメントは許可されていません