#! /usr/local/bin/perl # # 横書きのファイルを無理やり縦書きで出力してしまうスクリプト:-) # $tate = 20; $yoko = 20; &beginall; &begin; while(<>) { next if ($_ =~ /^ *\n/); chop; $buf = $_; $j ++; for($i = 0; $buf ne ''; $i ++) { $line[$i] = substr($buf, 0, 2) . ' & ' . $line[$i]; $buf = substr($buf, 2); } if($tate <= $j) { for($i = 0; defined($line[$i]); $i ++) { $line[$i] =~ s/\\\\/\\verb+\\+/g; print $line[$i] . "\\\\\n"; undef $line[$i]; } &end; &begin; $j = 0; } } while($j < $tate) { for($i = 0; defined($line[$i]); $i++) { $line[$i] = " & " . $line[$i]; } $j++; } for($i = 0; defined($line[$i]); $i ++) { $line[$i] =~ s/\\\\/\\verb+\\+/g; print $line[$i] . " \\\\\n"; undef $line[$i]; } &end; &endall; exit 0; sub begin { local($i); print "\\begin{center}\n"; print "\\begin{tabular}{"; for($i = 0; $i < $yoko ; $i++) { print "c"; } print "c}\n"; } sub end { print "\\end{tabular}\n"; print "\\end{center}\n\n"; print "\\newpage\n"; } sub beginall { print <<" EOB"; \\documentstyle{jarticle} \\setlength{\\textwidth}{160mm} \\begin{document} EOB } sub endall { print "\\end{document}\n\n"; }