Troubleshooting

What's your problem?

Searches are very slow when a file has many DIV-level objects

If your corpus consists of one or more individual documents have more than a few thousand top-level DIV objects (say 5,000), you may experience some pretty slow contextualizations from searches. This is mainly found in large dictionaries. We normally build dictionaries in smaller chunks. This is possibly a space leak in the object contextualizer, and slated to be fixed in future development. This does not appear in regular textual databases.

I can't get DBD::MySQL installed on Tiger

This needs its own article: TigerDBDMySQL

Kwic sorts don't work on Unicode

Make sure you have Unicode::String perl module installed. You may be able to install it by:

sudo perl -MCPAN -e -shell

then

install Unicode::String

Or perhaps you'll have to do it manually via: http://search.cpan.org/dist/Unicode-String/

I get "Make: *** No rule to make target `/System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE/config.h', needed by `Makefile'. Stop." when trying to install Unicode::String (or something else)

You must be on a Mac. Install the latest Developer Tools from the OS install media, making sure you install the whole thing.

I don't want TEI header links to be visible

If you don't want a link to the TEI header to show up, try subbing this into philosubs:

# ----------------------------------------------------------------------

# NavDivTitle: Format div identifiers (typically heads) in navigation/TOC.

# To stop the display in ToC, return "" for selected titles

# such as "HyperDiv".

# Called from:

# ----------------------------------------------------------------------

sub NavDivTitle {

local ($rtn);

$rtn = $_[0];

if ($rtn =~ /\[hyperdiv\]/i) {

$rtn = "";

}

if ($rtn =~ /\[header\]/i) {

$rtn = "";

}

$rtn =~ s/\˙/\./g;

$rtn =~ s/_//g;

return $rtn;

}

If the line matches [header], it doesn't display. So if you have another document level with [header] in the name you might want to be more careful with the regexp than I am being. But otherwise you oughta be fine.</pre>

I get Javascript errors about "dictON"

This is a bug in the first release of Philologic 3. You need to go into the philosubs.pl file and make the following change: Add the conditional around this line:

if ($LINKDICT) {

$navin =~ s/<body(.*?)>/<body\1 onkeypress="if \(dictOn\) checkKeyPressed\(event\);">/gi;

}

Also described in the QuickDict article.

My install hangs while making search forms

Please see http://philologic.uchicago.edu/wiki/index.php/Patches#Patch:_install_hangs_while_making_search_forms

After editing whizbangform, javascript errors occurr

The javascript code in whizbang.js is not very robust to changes in the form. If any elements are removed, errors maybe be encountered when the script tries to access the value of those elements. This can be addressed by changes like this to whizbang.js:

Change

} else if (document.getElementById("OUTPUTAF").checked) {

to

} else if (document.getElementById("OUTPUTAF") && document.getElementById("OUTPUTAF").checked) {

This checks to make sure the element exists first before trying to get the value. So if you see javascript errors, check the line number and conditionalize as necessary.

Links to the first divs in each document appear as [NA]

In some kinds of document structures, it is useful to move to a higher object level when you are linking to object :0. In some cases, however, this results in a link that looks like [NA] and may take you to the entire document.

There are two edits to make in philosubs.pl to resolve this. First, in getKWICtitle look for:

if (@index[1] > 0) {

and change it to:

if (@index[1] > -1) {

Then in concheadline, find this line:

$x =~ s/:0$//;

and comment it out.