X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=nki2inf.pl;h=9f11bc3165c19a89d2cc2dd88391de0a18919317;hb=HEAD;hp=5b9f3c0b2368587b0b2f4801c55bc65cb3772b29;hpb=9fde950ff4a787e952fdc8432369eae1d313f1dc;p=rfk-inform.git 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";