Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2022-06-17 - prettier 使ってると eslint の no-mixed-operators の邪魔をして来るので dprint に差し替える #164

Closed
kachick opened this issue Jun 10, 2022 · 2 comments
Labels
front-end https://en.wikipedia.org/wiki/Front-end_web_development tips

Comments

@kachick
Copy link
Owner

kachick commented Jun 10, 2022

Extracted from #163

1行に記号を使った計算や条件が詰め込まれているようなコードだと、優先順位的に不要でも () つけまくりたくなるのに eslint ? prettier? さんが消しちゃうのでカスタマイズも探さず唯々諾々と消されてたけど納得してない。

この一点がストレスフルなのでちょっと調べてみたら、完全に prettier さん側の仕業だった。むしろ eslint には no-mixed-operators というオプションすら用意されてる。

prettier/prettier#187
prettier/prettier#7154
https://eslint.org/docs/rules/no-mixed-operators

括弧つけようよ、せめてオプション用意してくれ派は多いみたいだけど、 prettier は結構強固に跳ね返してるっぽい。それでも issue が needs discussion で5年放置されているというのは望みがあるのかどうか・・・
やっかいなのはオプションも無いという事実と、界隈は prettier にフォーマッタを統一しようとしているっぽいという辺りから eslint 側だけでこのオプションを有効にすると運用がめんどくさそうだという点・・・

@kachick kachick added question Further information is requested tips front-end https://en.wikipedia.org/wiki/Front-end_web_development labels Jun 10, 2022
@kachick kachick self-assigned this Jun 10, 2022
kachick added a commit to kachick/wait-other-jobs that referenced this issue Jun 16, 2022
This is the main motivation of dropping prettier

kachick/times_kachick#164
@kachick kachick changed the title prettier 使ってると基本的に eslint の no-mixed-operators をすんなり有効化出来ない? 2022-06-17 - prettier 使ってると eslint の no-mixed-operators の邪魔をして来るので dprint に差し替える Jun 16, 2022
@kachick
Copy link
Owner Author

kachick commented Jun 16, 2022

deno をちょっと触る機会が合ったんだけど、標準で fmt を備えててその内部で使ってるらしい https://dprint.dev/ を使ってみると、ちょっぱやな上に余計な opinion をあんま押し付けてこない configurelable な感じで eslint の邪魔にもならなかった。

kachick/wait-other-jobs#49 こんな感じに差し替えてみた。
ちょっと詰まったのは、 eslitnt-plugin-github の github/recommended が prettier 有効にしてくるので off にする必要が合った点。どこで enable になってるかが最初ピンと来なかった。 https://github.com/github/eslint-plugin-github/blob/06102b8d9f7df87d26a64ee4f02d77d75341084d/lib/configs/recommended.js#L120
これのせいで prettier が依存性から消えきらない感じなのでちょっとウッとはなる・・・

あんま見たこと無い trailing comma の付け方してくるのをチューニングしきれなかったんだけど、他はあんま diff を生じさせないように出来た。
別に prettier のフォーマット押し付けとやらも大体は不満に感じなかったんだけど、 no-mixed-operators の邪魔をしてくるのだけは我慢ならんかった。
markdown とか json のフォーマットもデフォルト設定でいい感じにやってくれて且つ早いので、 しばらく dprint 使ってみる。

@kachick
Copy link
Owner Author

kachick commented Sep 12, 2024

Zero Config 的な話、Zero Configでも大体動くのはもちろん嬉しいけれど例外対処すらさせてくれないZero Config強制的なのはあんま性に合わないなと思っている。
まぁツールごとにconfig fileがバシバシ増えていくのが気持ちよくないというのはそれはそうなんだけれど

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
front-end https://en.wikipedia.org/wiki/Front-end_web_development tips
Projects
None yet
Development

No branches or pull requests

1 participant