From 4cb33c7c355491f602bbf09f97e90aa90afb4797 Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Sun, 18 Oct 2009 22:18:06 +0300 Subject: Imrove the docs. * doc/Config: New file. Configuration for texi2html. * doc/Makefile.am (manual): Update rule. (man-tar): New rule. * doc/gendocs_template: Rewrite using the new site layout. * doc/pies.texi: Minor changes. --- doc/Config | 363 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 363 insertions(+) create mode 100644 doc/Config (limited to 'doc/Config') diff --git a/doc/Config b/doc/Config new file mode 100644 index 0000000..0e2742d --- /dev/null +++ b/doc/Config @@ -0,0 +1,363 @@ +# Texi2html configuration for Pies documentation. -*- perl-mode -*- +# Copyright (C) 2009 Sergey Poznyakoff +# +# Pies is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# Pies is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Pies. If not, see . + +$top_html_dir="/software/pies"; +$graphics_dir="$top_html_dir/graphics"; + +## texi2html configuration + +# Show TOC in place of the @contents directive. +$INLINE_CONTENTS = 1; +# Do not show Texinfo menus. +$SHOW_MENU = 0; +# Inhibit output of CSS lines in page headers. +$CSS_LINES=''; +# Print footnotes at the end of each file (if the document is split). +$SEPARATED_FOOTNOTES = 0; + +$BODYTEXT = ""; + +$EXTRA_HEAD="\ + \ + \ + \ + "; + +$AFTER_BODY_OPEN="\ +\ +\ + \ + \ + \ + \ + \ + +
MainExamplesDownloadsDocumentation
"; + +$PRE_BODY_CLOSE="Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved."; + +$format_map{'multitable'}='table class="multitable"'; + +$SMALL_RULE = ''; +$DEFAULT_RULE = ''; +$MIDDLE_RULE = ''; +# This is output at the end of a section. +$BIG_RULE = ''; + +# Use navigation icons +$ICONS = 1; +%ACTIVE_ICONS = + ( + 'Top', "$graphics_dir/top.png", + 'Contents', "$graphics_dir/ctx.png", + 'Overview', '', + 'Index', "$graphics_dir/idx.png", + 'This', '', + 'Back', "$graphics_dir/left.png", + 'FastBack', "$graphics_dir/bwd.png", + 'Prev', "", + 'Up', "$graphics_dir/up.png", + 'Next', "$graphics_dir/right.png", + 'NodeUp', "$graphics_dir/left.png", + 'NodeNext', "$graphics_dir/up.png", + 'NodePrev', "$graphics_dir/right.png", + 'Following', "$graphics_dir/right.png", + 'Forward', "$graphics_dir/right.png", + 'FastForward', "$graphics_dir/fwd.png", + 'About' , '', + 'First', '', + 'Last', '', + ' ', '' + ); + +@SECTION_BUTTONS = + ( + \&gray_document_title, + \&gray_sec_ref, + 'Back', 'Forward', + \&gray_chap_ref, 'FastBack', 'Up', 'FastForward', + \&gray_doc_ref, + 'Contents', 'Index', + ' ','About', + ); + +@SECTION_FOOTER_BUTTONS = @SECTION_BUTTONS; +@NODE_FOOTER_BUTTONS = @SECTION_BUTTONS; + +# buttons for misc stuff +@MISC_BUTTONS = ( + \&gray_document_title, + 'Contents', + 'Index', + ' ', + 'About' + ); + + +$print_section = \&gray_print_section; +$print_navigation = \&gray_print_navigation; +$print_head_navigation = \&gray_print_head_navigation; +$print_foot_navigation = \&gray_print_foot_navigation; +$print_About = \&gray_print_About; +$cell = \&gray_multitable_cell; +$print_page_foot = \&gray_print_page_foot; + +sub gray_multitable_cell($$) +{ + my $text = shift; + my $row_macro = shift; + + $text =~ s/

//; + $text =~ s/<\/p>//; + if ($row_macro eq 'headitem') + { + return '' . $text . ''; + } + return '' . $text . ''; +} + +sub gray_print_About +{ + return &$print_misc(@_) if (!($SPLIT eq '') or $SECTION_NAVIGATION); +} + +sub gray_split_status() +{ + if ($SPLIT eq '') { + return ''; + } elsif ($SPLIT eq 'node') { + return ' (split by node)'; + } elsif ($SPLIT eq 'section') { + return ' (split by section)'; + } elsif ($SPLIT eq 'chapter') { + return ' (split by chapter)'; + } +} + +sub gray_document_title($$) +{ + my $fh = shift; + my $vertical = shift; + my $status = gray_split_status(); + print $fh qq{} . $Texi2HTML::THISDOC{title} . $status . ":\n"; +} + +sub gray_node_ref($$) +{ + my $fh = shift; + my $vertical = shift; + print $fh qq{Node:}; +} + +sub gray_sec_ref($$) +{ + my $fh = shift; + my $vertical = shift; + print $fh qq{Section:}; +} + +sub gray_chap_ref($$) +{ + my $fh = shift; + my $vertical = shift; + print $fh qq{Chapter:}; +} + +sub gray_doc_ref($$) +{ + my $fh = shift; + my $vertical = shift; + print $fh qq{Doc:}; +} + +sub gray_print_navigation +{ + my $fh = shift; + my $buttons = shift; + my $vertical = shift; + my $spacing = 1; + my $class="nav"; + + print $fh qq{\n}; + + print $fh "" unless $vertical; + for my $button (@$buttons) + { + if ($button =~ /^\@class=(.*)/) { + $class = "$class $1"; + next; + } + print $fh "\n" if $vertical; + print $fh qq{\n"; + print $fh "\n" if $vertical; + $class = "nav"; + } + print $fh "" unless $vertical; + print $fh "\n"; +} + +sub gray_print_head_navigation($$) +{ + my $fh = shift; + my $buttons = shift; + + return if ($SPLIT eq ''); + if ($VERTICAL_HEAD_NAVIGATION) + { + print $fh < + + +EOT + } + main::print_lines($fh, $Texi2HTML::THIS_HEADER); + &$print_navigation($fh, $buttons, $VERTICAL_HEAD_NAVIGATION); + if ($VERTICAL_HEAD_NAVIGATION) + { + print $fh < + +EOT + } +} + +sub gray_print_foot_navigation +{ + my $fh = shift; + + return if ($SPLIT eq ''); + if ($VERTICAL_HEAD_NAVIGATION) + { + print $fh < + + +EOT + } +} + +sub gray_print_page_foot($) +{ + my $fh = shift; + my $program_string = program_string(); + print $fh < +$program_string +EOT + if (defined($PRE_BODY_CLOSE) && $PRE_BODY_CLOSE) { + print $fh "

$PRE_BODY_CLOSE

"; + } + print $fh < + + +EOT +} + +sub gray_print_section +{ + my $fh = shift; + my $first_in_page = shift; + my $previous_is_top = shift; + my $buttons = \@SECTION_BUTTONS; + + &$print_head_navigation($fh, $buttons) if ($first_in_page); + my $nw = main::print_lines($fh); + if (defined $SPLIT + and ($SPLIT eq 'node')) { + &$print_foot_navigation($fh); + print $fh "$SMALL_RULE\n"; + &$print_navigation($fh, \@NODE_FOOTER_BUTTONS) if (!defined($WORDS_IN_PAGE) or (defined ($nw) + and $nw >= $WORDS_IN_PAGE)); + } +} + -- cgit v1.2.1