package main; local($t_affil, $t_authoraddr, $t_keywords); $SLUG = "
\n" . "\n"; } # # &ignore_commands( <<_IGNORED_CMDS_); #paper # {} # {} # {} #{} #invited # {} # {} # {} #{} keywords # {} sessiontype # {} instructions # {} firstauthor # {} authoraddress # {} authorphone # {} authoremail # {} #aindex # {} #index # {} linebreak # [] #tableofcontents #makeaindex #printaindex #makeindex #printindex cleardoublepage tablevspace # {} tableline thinspace strutbox unhcopy null admininfo \newblock _IGNORED_CMDS_ sub do_cmd_refpar{ local($_) = @_; join('',"
$_"); } sub do_cmd_copyright{ local($_) = @_; join('',"©$_"); } sub make_abstract { local($_) = @_; join('',"
\n"); } # STScI: add the references environment and the figure environment. # # In both cases, just push the contents of the environment back out to # be processed as ordinary text. We rely on special text to recognize # the psfig command or the AASTeX commands for including a PostScript # figure: plotone or plottwo sub do_env_references { join('',"
\n"); } sub do_env_participants { local($_) = @_; join('',"
\n"); } sub do_cmd_psfig { local($_) = @_; s/$next_pair_pr_rx//o; local($args) = $&; $args = &revert_to_raw_tex($args); $args =~ s/ //g; # psfig does not like spaces !! join('',&process_in_latex_icon("\\psfig$args"),"
$_"); } sub do_cmd_plotone { local($_) = @_; s/$next_pair_pr_rx//o; local($args) = $&; $args = &revert_to_raw_tex($args); join('',&process_in_latex_icon("\\plotone$args"),"
$_"); } sub do_cmd_plottwo { local($_) = @_; s/$next_pair_pr_rx//o; local($arg1) = $&; $arg1 = &revert_to_raw_tex("$arg1"); s/$next_pair_pr_rx//o; $arg2 = $&; $arg2 = &revert_to_raw_tex("$arg2"); join('',&process_in_latex_icon("\\plottwo$arg1$arg2"),"
$_"); } sub do_cmd_pslink { local($_) = @_; s/$next_pair_pr_rx//o; local($arg1) = $2; s/$next_pair_pr_rx//o; local($arg2) = $2; join('',"Original PostScript figure ($arg2).\n$_"); } sub do_cmd_pslinktwo { local($_) = @_; s/$next_pair_pr_rx//o; local($arg1) = $2; s/$next_pair_pr_rx//o; local($arg2) = $2; s/$next_pair_pr_rx//o; local($arg3) = $2; s/$next_pair_pr_rx//o; local($arg4) = $2; join('',"Original Postscript figures($arg2), ($arg4).\n$_"); } sub do_cmd_pslinkthree { local($_) = @_; s/$next_pair_pr_rx//o; local($arg1) = $2; s/$next_pair_pr_rx//o; local($arg2) = $2; s/$next_pair_pr_rx//o; local($arg3) = $2; s/$next_pair_pr_rx//o; local($arg4) = $2; s/$next_pair_pr_rx//o; local($arg5) = $2; s/$next_pair_pr_rx//o; local($arg6) = $2; join('',"Original Postscript figures($arg2), ($arg4), and ($arg62).\n$_"); } # STScI: Changed for AASTeX, since several \author commands is allowed. sub do_cmd_author { local($_) = @_; s/$next_pair_pr_rx//o; ($t_author) = $&; join('', "
$t_author
", $_);
}
# STScI: Commands for AASTeX
sub do_cmd_affil {
local($_) = @_;
s/$next_pair_pr_rx//o;
($t_affil) = $&;
# join('', "
$t_affil
\n", $_);
join('', "$t_affil
", $_);
}
sub do_cmd_authoraddr {
local($_) = @_;
s/$next_pair_pr_rx//o;
($t_authoraddr) = $&;
join('', "$t_authoraddr
\n", $_); } sub do_cmd_keywords { local($_) = @_; s/$next_pair_pr_rx//o; ($t_keywords) = $&; join('', "
Keywords: $t_keywords
\n", $_);
}
sub do_cmd_altaffiltext {
local($_) = @_;
s/$next_pair_pr_rx//o;
local($br_id) = $2;
join('', "$br_id", $_ ) ;
# s/$next_pair_pr_rx//o;
# ($t_altaffil) = $2;
# join('', "$t_altaffil
", $_);
}
sub do_cmd_altaffilmark {
local($_) = @_;
s/$next_pair_pr_rx//o;
local($br_id ) = $2;
join('', "$br_id", $_) ;
}
sub do_cmd_adassi {
local($_) = @_;
join('',"in Astronomical Data Analysis Software and Systems I, ASP Conf. Ser., Vol. 25, eds. D.M. Worrall, C. Biemesderfer, & J. Barnes (San Francisco, ASP)$_");
}
sub do_cmd_adassii {
local($_) = @_;
join('',"in Astronomical Data Analysis Software and Systems II, ASP Conf. Ser., Vol. 52, eds. R.J. Hanisch, R.J.V. Brissenden, & J. Barnes (San Francisco, ASP)$_");
}
sub do_cmd_adassiii {
local($_) = @_;
join('',"in Astronomical Data Analysis Software and Systems III, ASP Conf. Ser., Vol.~61, eds. D.~R. Crabtree, R.~J. Hanisch, & J. Barnes (San Francisco, ASP)$_");
}
sub do_cmd_adassiv {
local($_) = @_;
join('',"in Astronomical Data Analysis Software and Systems IV, ASP Conf. Ser., Vol.~77, eds. R.~A. Shaw, H.~E. Payne & J.~J.~E. Hayes (San Francisco, ASP)$_");
}
sub do_cmd_adassv {
local($_) = @_;
join('',"in Astronomical Data Analysis Software and Systems V, ASP Conf. Ser., Vol.~101, eds. G.~H. Jacoby and J. Barnes (San Francisco, ASP)$_");
}
sub do_cmd_adassvi {
local($_) = @_;
join('',"in Astronomical Data Analysis Software and Systems VI, ASP Conf. Ser., Vol.~125, eds. Gareth Hunt and H.~E. Payne (San Francisco, ASP)$_");
}
sub do_cmd_adassvii {
join('',"this volume@_");
# &process_ref($cross_ref_mark,$cross_ref_visible_mark);
}
sub do_cmd_acknowledgments {
local($_) = @_;
join('',"
\n"); } sub do_cmd_acknowledgements { &do_cmd_acknowledgments; } # A number of Journal abbreviations: sub do_cmd_aap { join('',"A&A@_"); } sub do_cmd_aapr { join('',"ARA&A@_"); } sub do_cmd_aaps { join('',"A&AS@_"); } sub do_cmd_aj { join('',"AJ@_"); } sub do_cmd_ao { join('',"Appl. Optics@_"); } sub do_cmd_apj { join('',"ApJ@_"); } sub do_cmd_apjl { join('',"ApJ@_"); } sub do_cmd_apjs { join('',"ApJS@_"); } sub do_cmd_apss { join('',"Ap&SS@_"); } sub do_cmd_araa { join('',"ARA&A@_"); } sub do_cmd_azh { local($_) = @_; join('',"AZh$_"); } sub do_cmd_baas { local($_) = @_; join('',"BAAS$_"); } sub do_cmd_jrasc { local($_) = @_; join('',"JRASC$_"); } sub do_cmd_memras { local($_) = @_; join('',"MmRAS$_"); } sub do_cmd_mnras { local($_) = @_; join('',"MNRAS$_"); } sub do_cmd_pra { local($_) = @_; join('',"Phys. Rev. A$_"); } sub do_cmd_prb { local($_) = @_; join('',"Phys. Rev. B$_"); } sub do_cmd_prc { local($_) = @_; join('',"Phys. Rev. C$_"); } sub do_cmd_prd { local($_) = @_; join('',"Phys. Rev. D$_"); } sub do_cmd_prl { local($_) = @_; join('',"Phys. Rev. Lett.$_"); } sub do_cmd_pasp { local($_) = @_; join('',"PASP$_"); } sub do_cmd_pasj { local($_) = @_; join('',"PASJ$_"); } sub do_cmd_qjras { local($_) = @_; join('',"QJRAS$_"); } sub do_cmd_skytel { local($_) = @_; join('',"S&T$_"); } sub do_cmd_solphys { local($_) = @_; join('',"Solar Phys.$_"); } sub do_cmd_sovast { local($_) = @_; join('',"Soviet Ast.$_"); } sub do_cmd_ssr { local($_) = @_; join('',"Space Sci. Rev.$_"); } sub do_cmd_zap { local($_) = @_; join('',"ZAp$_"); } sub do_cmd_astap { &do_cmd_aap ; } sub do_cmd_apjlett { &do_cmd_apjl ; } # special symbols sub do_cmd_deg { join('',"°@_"); } sub do_cmd_sun { join('',"o@_"); } sub do_cmd_la { join('',"<~@_"); } sub do_cmd_ga { join('',">~@_"); } sub do_cmd_sq { join('',"square@_"); } sub do_cmd_arcmin { join('',"´@_"); } sub do_cmd_arcsec { join('',"´´@_"); } sub do_cmd_fd { join('',".d@_"); } sub do_cmd_fh { join('',".h@_"); } sub do_cmd_fm { join('',".m@_"); } sub do_cmd_fs { join('',".s@_"); } sub do_cmd_fdg { join('', "°.", @_); } sub do_cmd_farcm { join('',"'.@_"); } sub do_cmd_farcs { join('',"'.'@_"); } sub do_cmd_fp { join('',".p@_"); } sub do_cmd_kms { join('',"km/s@_"); } sub do_cmd_micron { local($_) = @_; join('',"µm$_"); } sub do_cmd_micro { local($_) = @_; join('',"µ$_"); } sub do_cmd_onehalf { join('',"½@_"); } sub do_cmd_onethird { join('',"1/3@_"); } sub do_cmd_PM { join('',"±@_"); } sub do_cmd_twothirds { join('',"2/3@_"); } sub do_cmd_onequarter { join('',"¼@_"); } sub do_cmd_threequarters { join('',"¾@_"); } sub do_cmd_Sim { join('',"~@_"); } sub do_cmd_times { join('',"×@_") ; } sub do_cmd_ubvr { join('',"UBVR@_"); } sub do_cmd_ub { join('',"U-B@_"); } sub do_cmd_bv { join('',"B-V@_"); } sub do_cmd_vr { join('',"V-R@_"); } sub do_cmd_ur { join('',"U-R@_"); } # Added for ADASS sub do_cmd_bul { join('',"·@_"); } sub do_cmd_reference { join('',"\n
", $_[0]);
}
sub do_cmd_fortran {
local($_) = @_;
join('',"FORTRAN$_");
}
sub do_cmd_us {
local($_) = @_;
join('',"\\_$_");
}
sub do_cmd_aindex {
local($_) = @_;
local($br_id, $str);
$str = &missing_braces unless (
(s/$next_pair_pr_rx/($br_id, $str) = ($1, $2);''/eo)
||(s/$next_pair_rx/($br_id, $str) = ($1, $2);''/eo));
join('',&make_aindex_entry($br_id,$str),$_);
}
sub make_aindex_entry {
local($br_id,$str) = @_;
$TITLE = $saved_title if (($saved_title)&&(!($TITLE)||($TITLE eq $default_title)));
# Save the reference
$str = "$str###" . ++$global{'max_id'}; # Make unique
$index{$str} .= &make_half_href("$CURRENT_FILE#$br_id");
"$anchor_invisible_mark<\/A>";
}
sub add_aidx {
print "\nDoing the author index ...";
local($key, $str, @keys, $aindex, $level, $count,
@previous, @current);
@keys = keys %aindex;
@keys = sort keysort @keys;
$level = 0;
foreach $key (@keys) {
@current = split(/!/, $key);
$count = 0;
while ($current[$count] eq $previous[$count]) {
$count++;
}
while ($count > $level) {
$aindex .= "\n";
$level++;
}
while ($count < $level) {
$aindex .= "
\n";
$level--;
}
foreach $term (@current[$count .. $#current-1]) {
# need to "step in" a little
$aindex .= "\n";
$level++;
}
$str = $current[$#current];
$str =~ s/\#\#\#\d+$//o; # Remove the unique id's
$aindex .= $aindex{$key} .
# If it's the same string don't start a new line
(&index_key_eq(join('',@current), join('',@previous)) ?
", " . $cross_ref_visible_mark . "
\n" :
"
' , &make_section_heading("Author Index", "H3"), $aidx_mark, $_); } # Beware of local hack that suppresses numbering of section # headings unless the size is H3, if you feel like changing # these sizes. HP %section_headings = ('part' , 'H1' , 'chapter' , 'H2', 'section', 'H3', 'subsection', 'H3', 'subsubsection', 'H4', 'paragraph', 'H4', 'subparagraph', 'H5'); &generate_sectioning_subs; # Generates code to handle sectioning commands # Uses $after which is defined in the caller (the caller is a generated subroutine) # Also uses @curr_sec_id # #JCL(jcl-tcl) (changed almost everything) # #sub do_cmd_section_helper { # local($H,$key) = @_; # local($section_number, $titletext, $hash, @tmp, $align, $dummy); # local($anchors,$pre,$post,$_) = ('', "\n", "\n", $after); # # # if we have a $key the current section is not of the *-form, so we need # # to update the counters. # $latex_body .= "\\stepcounter{$key}\n" if $key; # local ($align, $dummy)=&get_next_optional_argument; # if ($align =~/(left|right|center)/i) { $align = "ALIGN=\"$1\""; } # s/$next_pair_rx//eo; # $titletext = &translate_environments($2); # $titletext = &translate_commands($titletext); # # RRM: collect all anchors from \label and \index commands # ($anchors,$titletext) = &extract_anchors($titletext); # $hash = &sanitize($titletext); # # This is the LaTeX section number read from the $FILE.aux file # @tmp = split(/$;/,$encoded_section_number{$hash}); # $section_number = shift(@tmp); # $section_number = "" if ($section_number eq "-1"); # $encoded_section_number{$hash} = join($;, @tmp); # #JKR: Don't prepend whitespace # # # local hack so that chapter's are not numbered. HP # if( $H eq "H3" ) { # $titletext = "$section_number " . $titletext if $section_number; # } # $titletext = &simplify($titletext); # local($after) = $_; # $_ = $titletext; &remove_anchors; # if ($_) { $TITLE = $_ } else { $TITLE = '.' }; # #RRM: no preceding \n when this is the first section-head on the page. # if (! $key || $key < $MAX_SPLIT_DEPTH) { $pre = '' }; # #RRM: no trailing \n when $after already has one, else a
results.
# if ($after =~/^( |\t)*\n/) { $post = '' };
#
# join('', $pre, &make_section_heading($titletext, $H, $align.$anchors), $post, $after);
#}
### Navigation Panel ##########################################################
#
# The navigation panel is constructed out of buttons and section titles.
# These can be configured in any combination with arbitrary text and
# HTML tags interspersed between them.
# The buttons available are:
# $PREVIOUS - points to the previous section
# $UP - points up to the "parent" section
# $NEXT - points to the next section
# $NEXT_GROUP - points to the next "group" section
# $PREVIOUS_GROUP - points to the previous "group" section
# $CONTENTS - points to the contents page if there is one
# $INDEX - points to the index page if there is one
#
# If the corresponding section exists the button will contain an
# active link to that section. If the corresponding section does
# not exist the button will be inactive.
#
# Also for each of the $PREVIOUS $UP $NEXT $NEXT_GROUP and $PREVIOUS_GROUP
# buttons there are equivalent $PREVIOUS_TITLE, $UP_TITLE, etc variables
# which contain the titles of their corresponding sections.
# Each title is empty if there is no corresponding section.
#
# The subroutine below constructs the navigation panel in each page.
# Feel free to mix and match buttons, titles, your own text, your logos,
# and arbitrary HTML (the "." is the Perl concatenation operator).
#JKR: Use two panels (top and bot) instead of one.
sub top_navigation_panel {
$reprintfile = "$file" ;
$reprintfile =~ s/.html$// ;
# BOOKSTUFF CHANGE. Add the anchor for cross references between
# articles.
"" .
"" .
# If ``next'' section exists, add its title to the navigation panel
($NEXT_TITLE ? " Next: $NEXT_TITLE
" : undef) .
# Similarly with the ``up'' title ...
($UP_TITLE ? " Up: $UP_TITLE
" : undef) .
# ... and the ``previous'' title
($PREVIOUS_TITLE ? " Previous: $PREVIOUS_TITLE
" : undef) .
"Table of Contents --- " .
"Index --- " .
"PS reprint --- " .
"PDF reprint " .
"
" . "".
# Now add a few buttons with a space between them
#"$NEXT $UP $PREVIOUS $CONTENTS $INDEX $CUSTOM_BUTTONS" .
"
" . # Line break
# If ``next'' section exists, add its title to the navigation panel
($NEXT_TITLE ? " Next: $NEXT_TITLE
" : undef) .
# Similarly with the ``up'' title ...
($UP_TITLE ? " Up: $UP_TITLE
" : undef) .
# ... and the ``previous'' title
($PREVIOUS_TITLE ? " Previous: $PREVIOUS_TITLE
" : undef) .
"Table of Contents --- " .
"Index --- " .
"PS reprint --- " .
"PDF reprint " ;
}
# Local change, don't shorten titles in navigation links. Just have
# get_first_words return it's argument.
sub get_first_words {
local($_, $min) = @_;
return($_);
}
# This code is extremely inefficient. At least the subtrees should be
# filtered according to $MAX_LINK_DEPTH before going into the
# inner loops.
# RRM: revamped parts, for $TOC_STARS, fixing some errors.
#
#sub add_child_links {
# local($exclude, $depth, $star, $current_key, @keys) = @_;
# if ((!$depth)&&($outermost_level)) {
# $depth = $section_commands{$outermost_level} - 1;
# }
# local($_, $child_rx, @subtree, $next, %open);
# local($first, $what, $pre);
# $childlinks_start = "";
# $childlinks_end = "\n";
# $child_rx = $current_key;
# $child_rx =~ s/( 0)*$//; # Remove trailing 0's
##
## Local change. Don't put tables of contents at lowest level of
## sectioning.
##
# return if ($depth > $MAX_SPLIT_DEPTH -2);
# if ((! $exclude)&&($depth < $MAX_SPLIT_DEPTH + $MAX_LINK_DEPTH -1 )
# &&($depth >= $MAX_SPLIT_DEPTH-1)) {
# $what = "Subsections";
# $first = "$childlinks_start\n$what<\/A>\n";
# } elsif ($exclude) { # Table-of-Contents
# $childlinks_start = "\n\n";
# $childlinks_end = "";
# $first = "$childlinks_start";
## } elsif ($CHILD_STAR) {
# } elsif ($star) {
# $first = "$childlinks_start\n";
# } else {
# $first = "$childlinks_start\n$anchor_mark<\/A>\n";
# }
#
# # collect the keys which start as $current_key
# foreach $next (@keys) {
# if (($next =~ /^$child_rx /) && ($next ne $current_key)) {
# push(@subtree,$next);
# }
# }
## # @subtree now contains the subtree rooted at the current node
# if (@subtree) {
# local($next_depth, $file, $title, $star, $ldepth);
# $ldepth = $depth;
# @subtree = sort numerically @subtree;
# foreach $next (@subtree) {
# ($next_depth, $file, $title, $star) = split($delim,$toc_section_info{$next});
## ($next_depth, $file, $title, $star) = split($delim,$section_info{$next})
## unless ($title);
# $title = "\n".$title if !($title =~/^\n/);
# next if (($exclude)&&( # doing Table-of-Contents
# (($TOC_DEPTH)&&($next_depth > $TOC_DEPTH)) # and too deep
# ||(($star)&&(!$TOC_STARS)) )); # or no starred sections
# $file = "" if (!$MAX_SPLIT_DEPTH); # Martin Wilck
# next if ($exclude eq $title);
##
## Local change. Don't add #SECTION.... markers to URLS
##
# $file = join('', $file);
# if (($next_depth > $ldepth) && (
# (split('/',%open))[0] < $MAX_LINK_DEPTH + $depth)) {
# # start a new list
# $ldepth = $next_depth;
# if ($first) {
# $_ .= "$first
\n";
# local $i = 1;
# while ($i < $ldepth) { $open{$i}=0; $i++ }
# $first = ''; # include NAME tag first time only
# } else {
# $_ .= "
\n";
# }
# $open{$ldepth}++;
# # append item to this list
# $_ .= "
list
# while (($next_depth < $ldepth) && %open ) {
# # ...closing-off any nested
lists
# if ($open{$ldepth}) {
# if (! $open{$next_depth}) {
# $open{$next_depth}++;
# } else {
# $_ .= "
\n";
# }
# delete $open{$ldepth};
# };
# $ldepth--;
# }
# $ldepth = $next_depth;
# $_ .= " lists
# local $cnt = (split('/',%open))[0];
# local $i = $cnt;
# while ($i > $depth) {
# if ($open{$i}) {
# $_ .= "
";
# delete $open{$i};
# }
# $i-- }
# }
# }
# $_ = join('', $_, "\n$childlinks_end") if ($_);
# $_;
#}
# This code is extremely inefficient. At least the subtrees should be
# filtered according to $MAX_LINK_DEPTH before going into the
# inner loops.
# RRM: revamped parts, for $TOC_STARS, fixing some errors.
#
sub add_child_links {
local($exclude, $base_file, $depth, $star, $current_key, @keys) = @_;
if ((!$depth)&&($outermost_level)) {
$depth = $section_commands{$outermost_level} - 1;
}
return ('') if ((!$exclude)&&(!$LEAF_LINKS)&&($depth >= $MAX_SPLIT_DEPTH));
local($_, $child_rx, @subtree, $next, %open);
local($first, $what, $pre);
$childlinks_start = "";
$childlinks_end = "\n";
$child_rx = $current_key;
$child_rx =~ s/( 0)*$//; # Remove trailing 0's
# STScI change. Don't put tables of contents at the lowest level
# of sectioning.
return if ($depth > $MAX_SPLIT_DEPTH-2 ) ;
if ((! $exclude)&&($depth < $MAX_SPLIT_DEPTH + $MAX_LINK_DEPTH -1 )
&&($depth >= $MAX_SPLIT_DEPTH-1)) {
$what = "$child_name";
$first = "$childlinks_start\n$what<\/A>\n";
} elsif ($exclude) { # Table-of-Contents
$childlinks_start = "\n\n";
$childlinks_end = "";
$first = "$childlinks_start";
# } elsif ($CHILD_STAR) {
} elsif ($star) {
$first = "$childlinks_start\n";
} else {
$first = "$childlinks_start\n$anchor_mark<\/A>\n";
}
# collect the keys which start as $current_key
foreach $next (@keys) {
if (($next =~ /^$child_rx /) && ($next ne $current_key)) {
push(@subtree,$next);
}
}
# @subtree now contains the subtree rooted at the current node
local($countUL); #counter to ensure correct tag matching
if (@subtree) {
local($next_depth, $file, $title, $star, $ldepth,$this_file,$prev_file);
# STScI change. Add local $authorlist variable.
#
local( $authorlist ) ;
$ldepth = $depth;
$prev_file = $base_file;
@subtree = sort numerically @subtree;
foreach $next (@subtree) {
# STScI change. Extract authorlist from toc_section_info if
# depth=1.
#
# ($next_depth, $file, $title, $star) = split($delim,$toc_section_info{$next});
($next_depth, $file, $title, $authorlist, $star) = split($delim,$toc_section_info{$next});
$this_file = $file;
$title = "\n".$title if !($title =~/^\n/);
next if (($exclude)&&( # doing Table-of-Contents
(($TOC_DEPTH)&&($next_depth > $TOC_DEPTH)) # and too deep
||(($star)&&(!$TOC_STARS)) )); # or no starred sections
$file = "" if (!$MAX_SPLIT_DEPTH); # Martin Wilck
next if ($exclude eq $title);
if ($this_file eq $prev_file) {
$file .= join('', "#SECTION", split(' ', $next))
} else { $prev_file = $file }
if (($next_depth > $ldepth) && (
(split('/',%open))[0] < $MAX_LINK_DEPTH + $depth)) {
# start a new list
$ldepth = $next_depth;
if ($first) {
$_ .= "$first
\n"; $countUL++;
local $i = 1;
while ($i < $ldepth) { $open{$i}=0; $i++ }
$first = ''; # include NAME tag first time only
} else {
$_ .= "
\n"; $countUL++;
}
$open{$ldepth}++;
# append item to this list
# $_ .= "
" . $authorlist . "\n"
} else {
$_ .= " list
while (($next_depth < $ldepth) && %open ) {
# ...closing-off any nested
"; $countUL-- }
$_ = join('', $_, "\n$childlinks_end") if ($_);
$_;
}
# We actually don't want bibliographies to be in separate
# HTML files, so suppress those commands from the routine
# for doing that:
#
sub add_bbl_and_idx_dummy_commands {
local($id) = $global{'max_id'};
#s/([\\]begin\s*$O\d+$C\s*thebibliography)/$bbl_cnt++; $1/eg;
#if ($bbl_cnt == 1) {
#s/([\\]begin\s*$O\d+$C\s*thebibliography)/$id++; "\\bibliography$O$id$C$O$id$C $1"/geo;
#}
#$global{'max_id'} = $id;
s/([\\]begin\s*$O\d+$C\s*theindex)/\\textohtmlindex $1/o;
s/[\\]printindex/\\textohtmlindex /o;
s/([\\]begin\s*$O\d+$C\s*theaindex)/\\textohtmlindex $1/o;
s/[\\]printaindex/\\textohtmlindex /o;
&lib_add_bbl_and_idx_dummy_commands() if defined(&lib_add_bbl_and_idx_dummy_commands);
}
1;
lists
if ($open{$ldepth}) {
if (! $open{$next_depth}) {
$open{$next_depth}++;
} else {
$_ .= "
\n"; $countUL--;
}
delete $open{$ldepth};
};
$ldepth--;
}
$ldepth = $next_depth;
# STScI change. Append $authorlist to output.
if( $ldepth == $section_commands{'chapter'} ) {
$_ .= "
" . $authorlist . "\n"
} else {
$_ .= " lists
local $cnt = (split('/',%open))[0];
local $i = $cnt;
while ($i > $depth) {
if ($open{$i}) {
$_ .= "
"; $countUL--;
delete $open{$i};
}
$i-- }
}
}
# just in case the count is wrong
while ($countUL) { $_ .= "