X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Flilypond-texi2html.init;h=55548ffb96dcee4b3c1042799f2093fe500f2eea;hb=b087ea53eddbea8cd2ee8b96a46e2d49c3d422c6;hp=bb914dbc1d49b6947254aff928bbfa18e0ff860c;hpb=b9ebbcefd5122fefc2de7b15a52c58459e4fd784;p=lilypond.git diff --git a/Documentation/lilypond-texi2html.init b/Documentation/lilypond-texi2html.init index bb914dbc1d..55548ffb96 100644 --- a/Documentation/lilypond-texi2html.init +++ b/Documentation/lilypond-texi2html.init @@ -104,6 +104,11 @@ $LY_LANGUAGES->{'it'} = { '

Thanks to ${webdev_link} for hosting ${lily_site}.' => '', }; +$LY_LANGUAGES->{'nl'} = { + 'Back to Documentation Index' => 'Terug naar de Documentatieindex', + '

Met dank aan ${webdev_link} voor het hosten van ${lily_site}.' => '', +}; + # FIXME: request the translations below then send them to texi2html/texinfo devs $LANGUAGES->{'it'} = { ' The buttons in the navigation panels have the following meaning:' => ' I bottoni nei pannelli di navigazione hanno il seguente significato:', @@ -630,6 +635,19 @@ sub print_element_info($) ### HELPER FUNCTIONS ############################################################################# +# only lc() the last portion of an href +sub lc_last($) +{ + my $href = shift; + my @hrefsplit = split('/', $href); + # change the last portion (the filename), if it exists + if ($#hrefsplit > 0) { + @hrefsplit[$#hrefsplit] = lc( @hrefsplit[$#hrefsplit] ); + $href = join("/", @hrefsplit); + } + return $href; +} + # Convert a given node name to its proper file name (normalization as explained # in the texinfo manual: # http://www.gnu.org/software/texinfo/manual/texinfo/html_node/HTML-Xref-Node-Name-Expansion.html @@ -662,7 +680,7 @@ sub texinfo_file_name($) $result = 't_g' . $result; } # DONE - return lc($result) + return lc_last($result) } # Load a file containing a nodename<=>filename map (tab-sepatared, i.e. @@ -802,6 +820,7 @@ sub lilypond_element_file_name($$$) if (exists ($node_to_filename_map->{$node_name})) { (my $filename, my $anchor) = @{$node_to_filename_map->{$node_name}}; $filename .= ".$docu_ext" if (defined($docu_ext)); + # don't do lc_last here, otherwise the colors are messed up! $filename = lc($filename); # unnumbered sections (except those at top-level!) always go to the same @@ -817,7 +836,8 @@ sub lilypond_element_file_name($$$) $$element{doc_nr} = $docnr; $lastfilename = $filename; } - print STDERR "Output file name: $filename\n"; + #print STDERR "Output file name: $filename\n"; + $filename = lc_last($filename); return $filename; } elsif ($type eq "top" or $type eq "toc" or $type eq "doc" or @@ -837,7 +857,7 @@ sub lilypond_element_file_name($$$) } my $filename = texinfo_file_name($node_name); $filename .= ".$docu_ext" if (defined($docu_ext)); - $filename = lc($filename); + $filename = lc_last($filename); $docnr += 1; $$element{doc_nr} = $docnr; $lastfilename = $filename; @@ -845,7 +865,7 @@ sub lilypond_element_file_name($$$) return $filename; } else { $$element{doc_nr} = $docnr; - $filename = lc ($filename); + $filename = lc_last($filename); print STDERR "File name: $filename\n"; return $filename; } @@ -879,8 +899,14 @@ sub lilypond_element_target_name($$$) } # TODO: Once texi2html correctly prints out the target and not the id for # the sections, change this back to ($id, $target) - $target = lc($target); - return ($target, $target); + # I don't understand this comment, so I'm reluctant to delete it -gp + $target = lc_last($target); + if ($target eq lc_last($id)) { + $id = ""; + } else { + $id = substr($id, 0, - 2); # remove the "-1" + } + return ($id, $target); } @@ -893,7 +919,7 @@ sub lilypond_init_map () my ($docu_dir, $docu_name) = split_texi_filename ($Texi2HTML::THISDOC{'input_file_name'}); my $map_filename = main::locate_include_file ("${docu_name}.$Texi2HTML::THISDOC{current_lang}.xref-map") || main::locate_include_file ("${docu_name}.xref-map"); - print STDERR "Map filename is: $map_filename\nDocu name is $docu_name\n"; + #print STDERR "Map filename is: $map_filename\nDocu name is $docu_name\n"; if ($docu_name eq 'web') { $web_manual = 1; web_settings(); @@ -918,7 +944,10 @@ sub lilypond_external_ref($$$$$$) my $section = shift; my $book = shift; my $file_node = shift; - my $href = lc(shift); + my $href = shift; + + $href = lc_last($href); + my $cross_ref = shift; my $displaytext = ''; @@ -976,8 +1005,6 @@ sub lilypond_unknown($$$$$) } - - my %translated_books = (); # Construct a href to an external source of information. # node is the node with texinfo @-commands @@ -1023,13 +1050,41 @@ sub lilypond_external_href($$$) } if (defined $file) { - return &$default_external_href($node, $node_id, $node_hxmlt_id, lc($file)); + $href = &$default_external_href($node, $node_id, $node_hxmlt_id, lc_last($file)); + remove_unneeded_anchor($href); + + # TODO: very yucky, but will be fixed in issue 1004 + if ($web_manual) { + my $only_web = $ENV{ONLY_WEB}; + if ($only_web) { + $href = "../../doc/v2.13/Documentation/web/".$href; + } + } + + return $href; } else { - return &$default_external_href($node, $node_id, $node_hxmlt_id); + $href = &$default_external_href($node, $node_id, $node_hxmlt_id); + remove_unneeded_anchor($href); + return $href; } } - +sub remove_unneeded_anchor($) +{ + my $ref = shift; + my @hrefsplit = split("/", $href); + for ($i = 0; $i < @hrefsplit; $i++) { + $item = @hrefsplit[$i]; + if ($item =~ /#/) { + @splitted = split("#", $item); + if (@splitted[0] == @splitted[1]) { + @hrefsplit[$i] = @splitted[0] + } + } + } + $href = join("/", @hrefsplit); + return $href +} @@ -1225,9 +1280,8 @@ sub lilypond_print_toc_div ($$) } else { $lang = ""; } - my $reldir = ""; - $reldir = "../" if ($Texi2HTML::Config::SPLIT eq 'section'); - my $uplink = $reldir."web/manuals.${lang}html"; + my $reldir = $ENV{DEPTH}; + my $uplink = $reldir."/Documentation/web/manuals.${lang}html"; if (not $web_manual) { print $fh "