5 my $entity_prefix = $ARGV[0];
6 my $filename = $ARGV[1];
8 if (! $entity_prefix && ! $filename) {
9 print STDOUT "Usage:\n\tmake_entities.pl <prefix> <filename> > filename.new 2> entities.dtd\n\n\tmv filename.new filename\n\tsort entities.dtd | uniq >> lang.dtd\n\n";
16 while (my $line = <FILE>) {
18 while ($line =~ /(accesskey|label|value)="(.+?)"/g) {
20 my $value = $2; if ( $value =~ /^&.+;$/ ) { next; } # Already an entity
21 my $entity = $value; $entity =~ s/\W/_/g; $entity = $entity_prefix . $entity . ( $attr eq "accesskey" ? ".accesskey" : ".label" );
22 $line =~ s/$value/&$entity;/g;
23 print STDERR qq^<!ENTITY $entity "$value">\n^;