scalafixのrule書くときのためにscalametaのAST変換ツールを作った

経緯などの説明

やったこと、できたもの

昔作ったやつを改変 xuwei-k.hatenablog.com

  • scalametaはscala-jsでbuildされているので、それを使う
  • github actionsでgh-pagesに成果物を全自動push
  • serverなどは無しで、web browserのみで動く

pretty printしたい

  • これ https://github.com/com-lihaoyi/PPrint 使うと、ある程度可能だが、scalametaのstructureメソッドの出力と微妙に異なるため、できればstructureの出力をそのままフォーマットしたい
    • structureそのままだと、そのまま結果をscalafixのrule書くコードに貼り付けても、大抵?完全にvalidなコードになるので
  • これ https://github.com/typelevel/paiges 試したが、用途が違うのか、使い方がダメなのか、想定した通りのフォーマットにはならない
  • そもそもscalafmtでフォーマットすればいいのでは?

今後やりたいこと

  • dialectなど色々細かい部分を選択、設定可能にしたい
  • UIをもっといい感じにしたいがフロントエンドの技術力がない・・・