May 28, 2006

タブとスペースと萌ディタの話

タブとスペースの話
ところで、DamianセンセのPerl Best Practiceの影響なのか、最近のPerl界隈では「タブは使うな、スペース使え」と盛んに言われていますが、あえて断言しときます。こんなモンはバッドノウハウなんであって、ベストプラクティスでもなんでもない、と。

自分は行頭はタブで揃えて、それ以降の文字揃えが必要な場合はスペースを使うようにしている。で、萌ディタでタブ幅を動的に切り替えられるようにしている。
srcfile.javascript.txtにこんな風に記述。
var tab_width = 4;
function tab(num){
    App.Prop('srcfile', 'tab-width') = num
}
f.onKey4 = function(){
    tab_width > 1 && tab(--tab_width)
    App.balloon(tab_width)
}; 
f.onKey8 = function(){
    tab(++tab_width)
    App.balloon(tab_width)
};

最初はctrl+4でタブ幅を4に、ctrl+8でタブ幅を8にするようにしてたんだけど1桁ずつの増減にした。タブ幅を8以上にしても無視されるけど。普段は4にして、html書くときとかインデントが深すぎになった時は2にしたり、構造がわかりやすいように8にすることもある。

タブの幅を自分好みにしたいっていうと解決策は色々あるんだろうけど、一番手っ取り早いのはタブを使うことなんじゃないの?タブを使ってインデントしてればエディタの設定だけでファイルの内容に手を加えずに見た目だけ変えられるから楽。

なんかそもそもタブを使わずにスペース4で統一せよってのはフォントサイズをピクセル単位で指定したがるデザイナの言い分みたいで気に食わない。そういうことをプログラマが(多様性が美徳のPerlプログラマが)、言うことに、なんか引っかかりを感じる。行頭以外の箇所でタブを使ってるとひどいことになるけれど、それさえしなければ後は個人が好きにできるようにタブでインデントした方が良いんじゃないの?って思うんだけど。
Posted at 19:41 | WriteBacks (8) | Edit
Edit this entry...

wikieditish message: Ready to edit this entry.
















A quick preview will be rendered here when you click "Preview" button.