- 105 名前:perl16 mailto:sage [02/04/19 20:25]
- 口先だけか、といわれるのは嫌なので、
とりあえずperlのインデントツール。 1行オーバー。 しかも完璧じゃないし。鬱。 #--- indent.pl ---# chop($f=<>);open(F,"<$f")||die$!;while(<F>){s/\s?\n$//;$_.=" "if/sub$/;$d.=$_; }close(F);$d=~s/(;|\{|\})/$1\n/g;$d=~s/\\\//\&\&\&/g;$d=~s/\\"/\@\@\@/g;while( $d=~/(q|qq|=~m|=~)\/.*?\//s){&g;}&ad;while($d=~/=~(s|tr|y)\/.*?\/.*?\//s){&g;} &ad;while($d=~/\(.*?\)/s){&g;}&ad;while($d=~/('|").*?\1.*?;/s){&g;}&ad;$d=~ s/\&\&\&/\\\//g;$d=~s/\@\@\@/\\"/g;$d=~s/\$\$\$/"/g;$d=~s/\%\%\%/'/g;$f.=".bak ";open(F,">$f");print F$d;close(F);sub g{$o[$c]=$`;$j[$c++]=$&;$d=$';}sub ad{ $c=0;for(@j){s/\n//g;s/"/\$\$\$/g;s/'/\%\%\%/g;$t.="$o[$c++]$_";}$d="$t$d";$t= "";$c=0;$#o=$#j=-1;} ↑のインデントバージョン www2.freejpn.com/~az1028/indent/indent.txt ↑のツールを使って自分自身を実行した結果。 www2.freejpn.com/~az1028/indent/indent2.txt
|

|