はじめに
前回の投稿がいきなりプリプロセッサ編で始まってしまってなんですが、今回は一般設定オプションについて書いていきます。
一般設定オプション一覧
設定 | 説明 |
---|---|
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 } |
僕の設定
全般的な設定なので、ここでは自分が整形しようとしているソースコードのことを少し理解しておく必要がある。
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でもメモ帳でも、文字化け、改行崩れなどで不都合になることはありません。