doc-src/IsarImplementation/checkglossary
author paulson
Thu, 06 Sep 2007 17:03:53 +0200
changeset 24547 64c20ee76bc1
parent 18537 2681f9e34390
permissions -rwxr-xr-x
Vampire structured proofs. Better parsing; some bug fixes.

#!/usr/bin/env perl
# $Id$

use strict;

my %defs = ();
my %refs = ();

while (<ARGV>) {
    if (m,\\glossaryentry\{\w*\\bf *((\w|\s)+)@,) {
	$defs{lc $1} = 1;
    }
    while (m,\\seeglossary *\{((\w|\s)+)\},g) {
	$refs{lc $1} = 1;
    }
}

print "Glossary definitions:\n";
foreach (sort(keys(%defs))) {
    print "  \"$_\"\n";
}

foreach (keys(%refs)) {
    s,s$,,;
    if (!defined($defs{$_})) {
	print "### Undefined glossary reference: \"$_\"\n";
    }
}