インデントと TAB の宗教論争
職場の大先輩が「インデントに TAB とスペースが混ったコードは困る」とボヤいておられた。
Emacs 使いの私からすると、何が問題なのか理解できない。
大先輩:「そういうコードは (俺のエディタで開くと) インデントがグチャグチャになる。」
ひがき:「TAB 文字の表示幅を 8 以外にするからですよ。」
この後、激しくお説教された。*1
大先輩がおっしゃるには、
- インデントには TAB 以外使わない。
- インデント以外に TAB は使わない。
という制約の下でコーディングしなければならないらしい。
そうすることで TAB 文字の表示幅を自分の好きなように変更してもインデントが崩れないんだとか。*2
常々思うことは、
それぞれ別の概念なんじゃないかと。*5
それから、
それぞれ別の概念なんじゃないかと。
Emacs という名のガラパゴスにいるから、こう思うんだろうか。*8
宗教論争はスルーするとして、ひとつ気になることがある。
昔 Sun が公開していた Java のコード規約には、
Four spaces should be used as the unit of indentation. The exact construction of the indentation (spaces vs. tabs) is unspecified. Tabs must be set exactly every 8 spaces (not 4).
とあり、
- インデント幅は 4 文字分。
- TAB の表示幅は 8 文字分。
- インデントに TAB を使ってもスペースを使ってもよい。
と言ってるんだよね。
明らかにデファクトスタンダードとは違うわけだが、みんなどうしてるんだろうか?
- これを守るために苦労している。
- Sun の文書なんか無視。
- 参考にしてる文書が古過ぎる。
- 俺の使ってる IDE ならふつうにそうなってるよ。
- その他。
たぶん 4 なのかな?
すごく気になる。