まず見てみたのは、uncrustify。
ポチポチ調べながら作成し..どんどんもっと触りたくなってき来た所でやめた。
特にこだわりなはい と思っていたのですが、アレコレ設定を弄りたくなるもんだ。
これが途中まで作っていたconfig。
ちなみに、字下げはK&Rのスタイルでなくて、Javaスタイル。
Javaの経験が長かったので目と手が慣れているというのが一番の理由なのだけど、迷わないのであれば無駄に改行をいれない方がさっと見渡せるしいいんじゃないかと思っている。
K&Rにしたければまたフォーマットすればヨシ。
ここまでイジってみたが、気にいらなかったのが、 という書き方。
結構記述する事が多い書き方なんですが、blockの中のコードのインデントが、( までインデントされてしまう。
4つスペースのインデントで十分だし、XCodeのフォーマットもその形なので合わせたかったのだが、方法がさっとわからなかった。
いやいや、自我を捨てて標準的なフォーマットになればそれでOKだよ
と思い直す。
そこで、次にClangFormatを試す
そこにある、GoogleのルールをベースにColumnの制限なしにして、インデントを4に変更した。
BasedOnStyle: Google ColumnLimit: 0 IndentWidth: 4これで良い気がする。
どこまで細かくフォーマットしてくれているのかが良くわからないが、暫くこれを使って運用してみよう。