diff --git a/Scripts/Bash/Functions/Help/help_updateOutputFileHtml.sh b/Scripts/Bash/Functions/Help/help_updateOutputFileHtml.sh new file mode 100755 index 0000000..ef961a4 --- /dev/null +++ b/Scripts/Bash/Functions/Help/help_updateOutputFileHtml.sh @@ -0,0 +1,59 @@ +#!/bin/bash +# +# help_updateOutputFileHtml.sh -- This function updates manuals' html +# related output files. +# +# Copyright (C) 2009, 2010 Alain Reguera Delgado +# +# This program 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 2 of the +# License, or (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. +# +# ---------------------------------------------------------------------- +# $Id$ +# ---------------------------------------------------------------------- + +function help_updateOutputFileHtml { + + # Output action message + cli_printMessage "`gettext "Updating manual's html output"`" 'AsResponseLine' + + # Check html output directory + [[ ! -d ${MANUALS_DIR[4]} ]] && mkdir -p ${MANUALS_DIR[4]} + + # Add html output directory into directory stack to make it the + # current working directory. Otherwise texi2html may produce + # incorrect paths to images included. + pushd ${MANUALS_DIR[4]} > /dev/null + + # Update html files. Use texi2html to export from texinfo file + # format to html using CentOS Web default visual style. + texi2html ${MANUALS_FILE[1]} --output=${MANUALS_DIR[4]} --split section \ + --nosec-nav \ + --css-include=/home/centos/artwork/trunk/Identity/Models/Css/Texi2html/stylesheet.css \ + -I=/home/centos/artwork + + # Apply html transformations. Html transformations rely on + # Texi2html default html output. The main goal of these html + # transformations is to build specific html structures that match + # specific css definitions. This way we extend the visual style of + # Texi2html default html output. + sed -r -i \ + -f /home/centos/artwork/trunk/Identity/Models/Css/Texi2html/transformations.sed \ + ${MANUALS_DIR[4]}/*.html + + # Remove html output directory from directory stack. + popd > /dev/null + +} diff --git a/Scripts/Bash/Functions/Help/help_updateOutputFileInfo.sh b/Scripts/Bash/Functions/Help/help_updateOutputFileInfo.sh new file mode 100755 index 0000000..3fb2517 --- /dev/null +++ b/Scripts/Bash/Functions/Help/help_updateOutputFileInfo.sh @@ -0,0 +1,48 @@ +#!/bin/bash +# +# help_updateOutputFileInfo.sh -- This function updates manual's info +# output related file. +# +# Copyright (C) 2009, 2010 Alain Reguera Delgado +# +# This program 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 2 of the +# License, or (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. +# +# ---------------------------------------------------------------------- +# $Id$ +# ---------------------------------------------------------------------- + +function help_updateOutputFileInfo { + + # Output action message. + cli_printMessage "`gettext "Updating manual's info output"`" 'AsResponseLine' + + # Check info output directory. + [[ ! -d ${MANUALS_DIR[3]} ]] && mkdir -p ${MANUALS_DIR[3]} + + # Update info file. + /usr/bin/makeinfo ${MANUALS_FILE[1]} --output=${MANUALS_FILE[4]} \ + -I=/home/centos/artwork + + # Check info file. If the info file was not created then there are + # errors to fix. + if [[ ! -f ${MANUALS_FILE[4]} ]];then + cli_printMessage "$(caller)" "AsToKnowMoreLine" + fi + + # Compress info file. + bzip2 -f ${MANUALS_FILE[4]} + +} diff --git a/Scripts/Bash/Functions/Help/help_updateOutputFilePlaintext.sh b/Scripts/Bash/Functions/Help/help_updateOutputFilePlaintext.sh new file mode 100755 index 0000000..86a056f --- /dev/null +++ b/Scripts/Bash/Functions/Help/help_updateOutputFilePlaintext.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# +# help_updateOutputFilePlaintext.sh -- This function updates manuals' +# plaintext related output file. +# +# Copyright (C) 2009, 2010 Alain Reguera Delgado +# +# This program 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 2 of the +# License, or (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. +# +# ---------------------------------------------------------------------- +# $Id$ +# ---------------------------------------------------------------------- + +function help_updateOutputFilePlaintext { + + # Output action message. + cli_printMessage "`gettext "Updating manual's plaintext output"`" 'AsResponseLine' + + # Check plaintext output directory. + [[ ! -d ${MANUALS_DIR[5]} ]] && mkdir -p ${MANUALS_DIR[5]} + + # Update plaintext output directory. + /usr/bin/makeinfo ${MANUALS_FILE[1]} --output=${MANUALS_FILE[5]} \ + --plaintext \ + -I=/home/centos/artwork + +} diff --git a/Scripts/Bash/Functions/Help/help_updateOutputFiles.sh b/Scripts/Bash/Functions/Help/help_updateOutputFiles.sh index 8689fc0..228b255 100755 --- a/Scripts/Bash/Functions/Help/help_updateOutputFiles.sh +++ b/Scripts/Bash/Functions/Help/help_updateOutputFiles.sh @@ -26,81 +26,18 @@ function help_updateOutputFiles { - # -- .info ---------- - cli_printMessage "`gettext "Updating manual's info output"`" 'AsResponseLine' + # Add the working copy root directory to directory stack to make + # path construction correctly. Otherwise, makeinfo may produce + # paths incorrectly. + pushd /home/centos/artwork > /dev/null - # Check .info output directory - [[ ! -d ${MANUALS_DIR[3]} ]] && mkdir -p ${MANUALS_DIR[3]} + help_updateOutputFileInfo + help_updateOutputFileHtml + help_updateOutputFilePlaintext - # Update .info file - /usr/bin/makeinfo ${MANUALS_FILE[1]} --output=${MANUALS_FILE[4]} \ - -I=/home/centos/artwork - - # Check .info file. If the info file was not created then there - # are errors to fix. - if [[ ! -f ${MANUALS_FILE[4]} ]];then - cli_printMessage "$(caller)" "AsToKnowMoreLine" - fi - - # Compress .info file. - bzip2 -f ${MANUALS_FILE[4]} - - # -- .html ---------- - cli_printMessage "`gettext "Updating manual's html output"`" 'AsResponseLine' - - # Check html output directory - [[ ! -d ${MANUALS_DIR[4]} ]] && mkdir -p ${MANUALS_DIR[4]} - - # Add html output directory into directory stack to make it the - # working directory. If we don't do this, texi2html doesn't - # produce paths correctly inside html output. - pushd ${MANUALS_DIR[4]} > /dev/null - - # Update html files. At this point, we use texi2html to export - # texinfo files to html using Modern's CSS definitions. We also - # append image directories to the @include search path, using - # texi2html's '-I' option. Adding image directories to @include - # search path is needed in order for texi2html to build html paths - # correctly, once the html output is produced. For exmample, if - # you want to include the following image: - # - # /home/centos/artwork/trunk/Identity/Models/Img/Scripts/renderImage.png - # - # you add its directory path to @include search path using the - # following command: - # - # texi2html -I=/home/centos/artwork/trunk/Identity/Models/Img/Scripts - # - # Once the image directory path has been added to @include search - # path, use the @image command inside texinfo files to include - # images available. In order to include images correctly, do - # include the image path (without extension) in the first argument - # of @image command, using the trunk/ directory structure as root - # (e.g., @image{trunk/Identity/Models/Img/Scripts/renderImage}). - texi2html ${MANUALS_FILE[1]} --output=${MANUALS_DIR[4]} --split section \ - --nosec-nav \ - --css-include=/home/centos/artwork/trunk/Identity/Models/Css/Texi2html/stylesheet.css \ - -I=/home/centos/artwork - - # Apply html transformations. - sed -r -i \ - -f /home/centos/artwork/trunk/Identity/Models/Css/Texi2html/transformations.sed \ - ${MANUALS_DIR[4]}/*.html - - # Remove html output directory from directory stack. + # Remove the working copy root directory from directory stack. popd > /dev/null - # -- .txt ----------- - cli_printMessage "`gettext "Updating manual's plaintext output"`" 'AsResponseLine' - - # Check plaintext output directory. - [[ ! -d ${MANUALS_DIR[5]} ]] && mkdir -p ${MANUALS_DIR[5]} - - # Update plaintext output directory. - /usr/bin/makeinfo ${MANUALS_FILE[1]} --output=${MANUALS_FILE[5]} \ - --plaintext \ - -I=/home/centos/artwork - # Re-define output variable in order for cli_commitRepoChanges # functionality to receive the correct location to apply # subversion commands. Inside `help' functionality, the correct