#!/usr/local/bin/perl
#
# Ф /usr/local/bin/jperl ѤǤʤȤ

# logtexѴ롥# 顼ݤϤߤʤ

# 1994.07.25. 
# 1994.07.26. ꡥޥ̾򤹤롥
# 1994.07.30. ѹ
# 1994.07.31. ѹ

# ޥ̾(ޥ̾ѹϤѤФ褤)

$normalheight = '\normalheight'; # ̾\textheight
$normalwidth  = '\normalwidth';  # ̾\textwidth
$lognumber    = 'lognumber';	 # ʸֹ
$numlen       = '\numlen';	 # ʸֹΰĹ
$log1         = '\logfirst';	 # tabular1
$log2         = '\logsecond';	 # tabular2
$log3         = '\logthird';	 # tabular3
$log4         = '\logfourth';	 # tabular4
$logtabular   = 'logtabular';	 # logʸɽĶ̾

$txt = "";    # ʸ
undef @words; # ǰΤᡥ

print "%%%%% Macros\n\n";

print '\newcounter{', $lognumber, "}\n";
print '\renewcommand{\the', $lognumber, '}{[\arabic{', $lognumber, "}]}\n\n";

print '\newlength{', $numlen, "}\n";	 # ʸֹĹ̰
print '\settowidth{', $numlen, '}{[9999]x}', "\n\n";

print '\newlength{', $normalheight, "}\n";
print '\setlength{', $normalheight, '}{\textheight}', "\n";
print '\setlength{\textheight}{240mm}', "\n\n"; # \textheight

print '\newlength{', $normalwidth, "}\n";
print '\setlength{', $normalwidth, '}{\textwidth}', "\n";
print '\setlength{\textwidth}{160mm}', "\n\n"; # \textwidth

&setlength($log1,30); # ߤ˱Ѥơ
&setlength($log2,40);
&setlength($log3,30);
&setlength($log4,70);

print '\newenvironment{', $logtabular, '}%', "\n";
print '{\begin{tabular}[t]%', "\n";
print '{p{', $log1, '}p{', $log2, '}p{', $log3, '}p{', $log4, '}}%', "\n";
print '{\refstepcounter{', $lognumber, '}}}%', "\n"; # refǤʤƤ⤤
print '{\end{tabular}\vspace{1ex}}', "\n\n";

print "%%%%%\n\n";

print '\newpage', "\n";
print '\small', "\n";
print '\twocolumn', "\n\n";

print "%%%%%\n\n";

while (<>) {
    if (/EOS/) {
	print '\begin{logtabular}', " \\\\\n";
	print '\multicolumn{4}{@{}l}%', "\n";
        print '{\underline {\makebox[\numlen][l]{\the', $lognumber, '}%',"\n";
        print '{\bf ', $txt, "}}}\\\\\n";

	$words[$#words] =~ s/ +\\\\$//; # ǽԤβԵ

	while(@words) {
	    print join(' & ', splice(@words,0,4)), "\n"; 
	}

	print '\end{logtabular}', "\n\n";

	$txt = "";  
	next;
    }

    chop;
    /^[^ ]+/;
    $txt .= $&;
#    push(@words, unpack($TEMPLATE, $_));
    push(@words, split(' ')); # awkʬ
    if($words[$#words] =~ /^̤/) {
	splice(@words, -1, 0, "", "");
    }
    push (@words, pop(@words) . " \\\\"); # tabularѲԡȤ
}

print '\setlength{\textheight}{', $normalheight, "}\n";
print '\setlength{\textwidth}{', $normalwidth, "}\n\n";

print '\normalsize', "\n";
print '\onecolumn', "\n\n";

print "%%%%%\n\n";

#### subroutine ####

sub setlength {
    local($name,$value) = @_;

    print '\newlength{', $name, "}\n";
    print '\setlength{', $name, '}{', $value, "pt}\n\n";
}

# End of File
