Remove functions which are not used in the script, these are actually part of the...
[project-aon.git] / common / scripts / gblint.pl
index c824503..85e5ced 100755 (executable)
@@ -70,6 +70,13 @@ my %sectionDocLookup = (
   'howcarry' => 'equipmnt',
   'howmuch'  => 'equipmnt',
   'howuse'   => 'equipmnt',
+  'backpack' => 'equipmnt',
+  'ammpouch' => 'equipmnt',
+  'medikit'  => 'equipmnt',
+  'canteen'  => 'equipmnt',
+  'weapons'  => 'weapons',
+  'close'    => 'weapons',
+  'missile'  => 'weapons',
   'cmbtrulz' => 'cmbtrulz',
   'evasion'  => 'cmbtrulz',
   'lorecrcl' => 'lorecrcl',
@@ -167,10 +174,14 @@ while( $#ARGV > -1 && $ARGV[ 0 ] =~ /^-/ ) {
     shift @ARGV;
     $language = shift @ARGV;
   }
+  elsif( $ARGV[ 0 ] eq '-h' ) {
+    usage();
+    exit 0;
+  }
 }
 
 my $lineNumber = 1;
-my $currentSection = "_unknown";
+my $currentSection = '';
 
 while( my $line = <> ) {
   my @section = ( $line =~ /<section[^>]+id="([^"]*)"/g );
@@ -182,6 +193,7 @@ while( my $line = <> ) {
     else {
       $currentSection = $sectionDocLookup{$section[ 0 ]};
     }
+    $currentSection = '_unknown' unless defined $currentSection;
   }
 
   if( $skipLines >= $lineNumber ) {
@@ -335,3 +347,16 @@ sub printError {
   ++$errorCount;
   if( $maxErrorCount > 0 && $errorCount > $maxErrorCount ) { die "Maximum number of errors ($maxErrorCount) exceeded. Quitting.\n"; }
 }
+
+sub usage {
+    print "Gamebook lintian checker - reads from standard input a gamebook XML file and prints out possible errors\n\n";
+    print "Usage: gblint.pl [-e <NUMBER>] [-s <NUMBER>] [-i <TEXT>] [--use-corr] [--skip-ASCII-check] [--language CODE]\n";
+    print "Options:\n";
+    print "\t-e <NUMBER>\tStops when NUMBER errors have been reached (by default it does not stop)\n";
+    print "\t-s <NUMBER>\tSkips NUMBER of lines before analysing\n";
+    print "\t-i <TEXT>\tAdds TEXT to error messages (default: '??')\n";
+    print "\t--use-corr\tPrints correction in report (default: disabled)\n";
+    print "\t--skip-ASCII-check\tDoes not check for non-ASCCI characters (default: enabled)\n";
+    print "\t--language CODE\tDefines the language of the gamebook file (default: 'en'\n";
+    print "\t-h\tPrint this help and exit\n";
+}