File:
[LON-CAPA] /
doc /
help /
rebuildLabelHash.pl
Revision
1.1:
download - view:
text,
annotated -
select for diffs
Fri Jul 5 16:12:30 2002 UTC (22 years, 4 months ago) by
bowersj2
Branches:
MAIN
CVS tags:
HEAD
This commit implements the .tex-based online help system in LON-CAPA. It
may be necessary to manually run loncom/build/help_graphics_converter.pl
and doc/help/rebuildLabelHash.pl after a cvs update, and
loncapa_apache.conf may need to be manually copied to /etc. (The
loncapafiles.lpml has been updated.)
After merging this, the URL http://[loncapahost]/adm/help/Foils.hlp
should display a help file.
Also, some *very* out-of-date files have been removed from the /doc
directory.
#!/usr/bin/perl
use strict;
use GDBM_File;
my $dirprefix = "/home/httpd/html/adm/help/";
# if the topic hash exists, kill it
unlink 'fragmentLabels.gdbm' if ( -e $dirprefix . 'fragmentTopics.gdbm' );
tie (my %fragmentLabels, 'GDBM_File', $dirprefix . 'fragmentLabels.gdbm', 1, 0);
my $error = 0;
chdir $dirprefix;
while (<*.tex>)
{
my $file;
$file = $_;
open F, $file;
my $contents = join("\n", <F>);
my $label;
# Search for labels, of the form '\label{labelname}'
foreach $label ( $contents =~ /\\label\{([^}]*)\}/g )
{
if (exists $fragmentLabels{$label} )
{
print "***ERROR: '$label' in both $fragmentLabels{$label} " .
"and $file. \n";
$error = 1;
}
$fragmentLabels{$label} = $file;
}
}
if ($error == 0)
{
print "There were no duplicate labels. Database rebuilt.\n";
}
else
{
print "There were errors. You must correct the duplicate labels.\n";
}
untie %fragmentLabels;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>