cargo-snippet
cargo-snippet copied to clipboard
マクロの定義と使用部分が一行ですべて出力されてしまう
マクロをsnippetとして定義したりsnippet内で使用したりするとスニペット出力時に改行が無くなってしまうようなのですが、これは設定で変更したりできますか?
cargo-snippetは、
- synでコードをパースする
- この時点でコードのインデントなどの情報は失われる
- (synのAST上でいろいろ処理したあと)ASTからインデントのないトークン列を出してrustfmtで整形してスニペットを出力する
という感じで動いているのですが、rustfmtが対応していないのでマクロの定義などの出力がトークン列そのままになってしまっています。
https://github.com/rust-lang/rustfmt/issues/8
なので現状rustfmtの対応待ちで簡単な解決策はとくにありません :cry:
なるほど、rustfmtがそのまま出力するからなんですね、、一旦構文木に直すことを考えると確かにそうでした ありがとうございます🙇