LoginSignup
9

More than 5 years have passed since last update.

Uncrustifyのセッティング (2) 一般設定編

Last updated at Posted at 2013-02-10

はじめに

前回の投稿がいきなりプリプロセッサ編で始まってしまってなんですが、今回は一般設定オプションについて書いていきます。

一般設定オプション一覧

設定 説明
newlines 出力に用いる改行コード { auto, lf, crlf, cr }
input_tab_size 入力ファイルのタブサイズ { number }
output_tab_size 出力ファイルのタブサイズ { number }
string_escape_char 文字列エスケープ文字に対するASCIIコード (通常は'\'(92)、Pawnの場合'^'(94)) { number }
string_escape_char2 Pawn用代替文字列エスケープ文字 (クォート文字の直前のみ有効) { number }
tok_split_gte '>='と'>>='を'void f(list<list<B>>=val);'のテンプレートの一部と解釈させるかどうか { true, false }
utf8_bom UTF-8ファイルのBOMコードへの対応 (推奨'remove') { ignore, add, remove, force }
utf8_byte 値128〜255を持つバイトを含むUTF-8でないファイルの場合、出力をUTF-8とするかどうか { true, false }
utf8_force 出力エンコーディングを強制的にUTF-8にするかどうか { true, false }

僕の設定

全般的な設定なので、ここでは自分が整形しようとしているソースコードのことを少し理解しておく必要がある。

general.cfg
newlines           = crlf
input_tab_size     = 4
output_tab_size    = 4
string_escape_char = 92
tok_split_gte      = false
utf8_bom           = add
utf8_byte          = false
utf8_force         = true

まず、TABがスペース何個分を想定してコーディングされているのかを入れおきます。これが間違ってるとうまい事整形してくれない場合があります。
ちなみに、僕はTAB文字は絶対に使用しません。エディタの設定差で、どうにも整形しきれなくなるからです。

それと、改行コードですが、僕は<CRLF>を使用します。大きな理由は、クロスプラットフォームで開発するコードを書く事が多いからです。Linux(Unix)でも、Mac OS Xで、Windowsでも、ちゃんと開けるファイルにしようと思うなら、一番馬鹿なエディタ、すなわちメモ帳で開けるように改行コードは設定しておくべきだという結論に達しました。

それから、UTF-8にBOMを付けるか付けないかという設定がありますが、これも、Visual Studio 2010などがBOMなしUTF-8をCP932として開こうとしてしまうので、BOMを付けておきます。
本来、UTF-8ってそもそもBOM付けるのは非推奨なのにおかしいですね。

というわけで、僕の設定の多くは、Microsoftの嫌がらせに耐えられるような設定になっているのでした。

これの最大の理由は、実際の関係者な人たちは本当にMicrosoft的な環境でお仕事をされているからです。あー、うまくファイルが開けないーとか文句いわれるよりも、なんとかどこの環境でもギリギリ開けて、文句を言われない設定がこれだと思っています。

XcodeでもEcliseでもvimでもemacsでもNetbeansでもSublimeでも、そして、VCでもメモ帳でも、文字化け、改行崩れなどで不都合になることはありません。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9