version 1.497.2.5, 2011/12/26 13:45:10
|
version 1.497.2.6, 2011/12/27 19:48:31
|
Line 61 use Apache::lonlocal;
|
Line 61 use Apache::lonlocal;
|
use Apache::lonxml; |
use Apache::lonxml; |
use Apache::londefdef; |
use Apache::londefdef; |
use Apache::lonenc(); |
use Apache::lonenc(); |
|
use Apache::loncommon(); |
use Time::HiRes qw( gettimeofday tv_interval ); |
use Time::HiRes qw( gettimeofday tv_interval ); |
use lib '/home/httpd/lib/perl/'; |
use lib '/home/httpd/lib/perl/'; |
use LONCAPA; |
use LONCAPA; |
Line 110 sub select_hyphenation {
|
Line 111 sub select_hyphenation {
|
} |
} |
} |
} |
## |
## |
|
# Selects hyphenation based on the current problem metadata. |
|
# This requires that |
|
# - There is a language metadata item set for the problem. |
|
# - The language has a latex/babel hyphenation. |
|
# |
|
# @note: Uses &Apache::lonxml::request to locate the Uri associated with |
|
# this problem. |
|
# @return string (possibly empty). |
|
# @retval If not empty an appropriate \selectlanguage{} directive. |
|
# |
|
sub select_metadata_hyphenation { |
|
my $uri = $Apache::lonxml::request->uri; |
|
my $language = &Apache::lonnet::metadata($uri, 'language'); |
|
my $latex_language = &Apache::loncommon::latexhyphenation($language); |
|
if ($latex_language) { |
|
return '\selectlanguage{'.$latex_language."}\n"; |
|
} |
|
return ''; # no latex hyphenation or no lang metadata. |
|
} |
|
|
|
|
|
## |
# Clears the set of languages required by the document being rendered. |
# Clears the set of languages required by the document being rendered. |
# |
# |
sub clear_required_languages { |
sub clear_required_languages { |
Line 1286 sub start_problem {
|
Line 1309 sub start_problem {
|
} |
} |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
$result .= 'INSERTTEXFRONTMATTERHERE'; |
$result .= 'INSERTTEXFRONTMATTERHERE'; |
|
$result .= &select_metadata_hyphenation(); |
|
|
|
|
} |
} |
} elsif ($target eq 'edit') { |
} elsif ($target eq 'edit') { |
Line 1799 sub end_languageblock {
|
Line 1824 sub end_languageblock {
|
$result = &select_hyphenation($which); |
$result = &select_hyphenation($which); |
} |
} |
$result .= $available_texts{$which}; |
$result .= $available_texts{$which}; |
|
$result .= &select_metadata_hyphenation(); # Restore original language. |
} |
} |
undef(%available_texts); |
undef(%available_texts); |
&Apache::lonxml::deregister('Apache::structuretags',('lang')); |
&Apache::lonxml::deregister('Apache::structuretags',('lang')); |