#if〜#endifの対応チェックスクリプト
#if〜#endifの対応が取れてなくてコンパイルエラー。
15000行もあるので目視無理。
探してもそういうツールは無かったので、Perlにて自作した。
コマンドラインからcolor.pl aaa.cpp > aaa.htmlと言う風に使う。
以下コード
$normal = ""; @reverse_colors = ( "<span style=\"color:orange;\">1-", # orange "<span style=\"color:red;\">2---", # red "<span style=\"color:green;\">3-----", # green "<span style=\"color:blue;\">4-------", # blue "<span style=\"color:purple;\">5---------", # purple "<span style=\"color:lightblue;\">6-----------", # lightblue "<span style=\"color:yellow;\">7-------------" # yellow ); @normal_colors = ( "-1</span>", # reverse_black "---2</span>", # reverse_red "-----3</span>", # reverse_green "-------4</span>", # reverse_blue "---------5</span>", # reverse_purple "-----------6</span>", # reverse_lightblue "-------------7</span>" # reverse_yellow ); $depth = 0; while (<>) { chop; if (/^\s*\#\s*if/) { $colors = $reverse_colors[$depth]; $depth++; print $colors,$_, "<BR>\n"; } elsif (/^\s*\#\s*endif/) { $depth--; $colors = @normal_colors[$depth]; if($depth < 0){ print "\n\n\n<BR><BR><BR><BR>---error---<BR>\n" } print $_, $colors, "<BR>\n"; } else { print $_, "<BR>\n"; } }
秀丸に#if〜#endifの対応してくれる機能があったよ・・・orz
まあいいやひさしぶりにPerlいじれたし。