From: David Griffith Date: Thu, 21 Mar 2013 01:10:14 +0000 (-0700) Subject: Modified for multiple input files. X-Git-Tag: r7~3 X-Git-Url: https://jxself.org/git/?a=commitdiff_plain;h=ea985be43439073a8357758db49b2c65016726bd;p=rfk-inform.git Modified for multiple input files. --- diff --git a/nki2inf.pl b/nki2inf.pl index 5b9f3c0..9f11bc3 100755 --- a/nki2inf.pl +++ b/nki2inf.pl @@ -11,13 +11,15 @@ # This script automatically takes care of '`', '\', and '@' by replacing # them with '@@126', '@@92', and '@@64' respectively. -my $infile = $ARGV[0]; +foreach my $infile (@ARGV) { + if (! -r $infile) { die "$0: Unable to read $infile\n"; } +} + my $count = 0; my $line; -if (!$infile) { die "Usage: $0 foobar.nki > nki.inf\n"; } +if (!$ARGV[0]) { die "Usage: $0 > nki.inf\n"; } -open (INFILE, "< $infile") || die "$0: Cannot open $infile\n"; print "! The following code was automatically generated by nki2inf.pl\n"; print "! Do not edit this file.\n"; @@ -34,15 +36,19 @@ print "! \@ --> \@\@64\n\n"; print "[ lookup_msg num;\n"; print "\tswitch(num) {\n"; -while () { - $count++; - next if /^\s*($|#|!)/; - chomp; - $line = $_; - $line =~ s/"/~/g; - $line =~ s/@/\@\@64/g; - $line =~ s/\\/\@\@92/g; - print "$count:\treturn \"$line\";\n"; +foreach my $infile (@ARGV) { + open (INFILE, "< $infile") || die "$0: Cannot open $infile\n"; + + while () { + $count++; + next if /^\s*($|#|!)/; + chomp; + $line = $_; + $line =~ s/"/~/g; + $line =~ s/@/\@\@64/g; + $line =~ s/\\/\@\@92/g; + print "$count:\treturn \"$line\";\n"; + } } print "default: return \"Unknown NKI (this should not happen)\";\n\t}\n];\n"; print "Constant MESSAGE_NUM $count;\n";