Blame Manuals/Tcar-ug/Scripts/Bash/render.docbook

e68d9f
<sect1 id="scripts-bash-render">
0ace69
cd2a19
    <title>Standardizing Content Rendition</title>
0ace69
0ace69
    <para>
0ace69
        The <function>render</function> functionality is the interface
0ace69
        the <command>centos-art.sh</command> script provides to
0ace69
        standardize the content production tasks inside the working
0ace69
        copy.
0ace69
    </para>
0ace69
6104cf
    <sect2 id="script-bash-render-syntax">
6104cf
    <title>Syntax</title>
0ace69
    <screen>centos-art render [OPTIONS] [DIRECTORY]</screen>
0ace69
0ace69
    <para>
0ace69
        The <varname>DIRECTORY</varname> parameter specifies the
0ace69
        directory path, inside the working copy of &TCAR;, where the
0ace69
        files you want to process are stored in.  This paramter can be
0ace69
        provided more than once in order to process more than one
0ace69
        directory path in a single command execution.  When this
0ace69
        parameter is not provided, the current directory path where
0ace69
        the command was called from is used instead.
0ace69
    </para>
6104cf
    </sect2>
6104cf
6104cf
    <sect2 id="script-bash-render-option">
6104cf
    <title>Options</title>
6104cf
0ace69
    <para>
0ace69
        The <function>render</function> functionality accepts the
0ace69
        following options: 
0ace69
    </para>
0ace69
0ace69
    <variablelist>
0ace69
    <varlistentry>
0ace69
    <term><option>--quiet</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option supresses all output messages except error
0ace69
        messages.  When this option is passed, all confirmation
0ace69
        requests are supressed and a possitive answer is assumed for
0ace69
        them, just as if the <option>--answer-yes</option> option
0ace69
        would have been provided.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--answer-yes</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
       Assume <emphasis>yes</emphasis> to all confirmation requests.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--filter="REGEX"</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option reduces the list of files to process inside
0ace69
        <varname>DIRECTORY</varname> using <varname>REGEX</varname> as
0ace69
        pattern.  You can use this option to control the amount of
0ace69
        files you want to render.  The deeper you go into the
0ace69
        directory structure the more specific you'll be about the
0ace69
        files you want to render.  When you cannot go deeper into the
0ace69
        directory structure through <varname>DIRECTORY</varname>
0ace69
        specification, use this option to reduce the list of files
0ace69
        therein.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--dont-commit-changes</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option supresses all commit and update actions realized
0ace69
        over files, before and after the action itself had took place
0ace69
        over files in the working copy.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--releasever="NUMBER"</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option expands the =\RELEASE=,
0ace69
        =\MAJOR_RELEASE=, and
0ace69
        =\MINOR_RELEASE= translation makers based on
0ace69
        <varname>NUMBER</varname> value.  Notice that translation
0ace69
        markers here were escaped using a backslash (\)
0ace69
        in order to prevent their expansion. Use this option when you
0ace69
        need to produce release-specific contents, but no release
0ace69
        information can be retrived from the directory path you are
0ace69
        currently rendering.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--basearch="ARCH"</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option expands the =\ARCHITECTURE=,
0ace69
        translation makers based on <varname>ARHC</varname> value.
0ace69
        Notice that translation markers here were escaped using a
0ace69
        backslash (\) in order to prevent their
0ace69
        expansion. Use this option when you need to produce
0ace69
        architecture-sepecific contents but no architecture
0ace69
        information can be retrived from the directory path you are
0ace69
        currently rendering.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--theme-model="NAME"</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option specifies the name of theme model you want to use
0ace69
        when producing theme artistic motifs. By default, if this
0ace69
        option is not provided, the <literal>Default</literal> theme
0ace69
        model is used as reference to produce theme artistic motifs.
0ace69
        To know what values does the <varname>NAME</varname> variable
0ace69
        can have, run <command>ls
0ace69
        ~/artwork/trunk/Identity/Models/Themes</command> command.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--post-rendition="COMMAND"</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option lets you apply a command as post-rendition action.
0ace69
        In this case, the <varname>COMMAND</varname> represents the
0ace69
        command-line you want to execute in order to perform in-place
0ace69
        modifications to base-rendition output.
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
0ace69
    <varlistentry>
0ace69
    <term><option>--last-rendition="COMMAND"</option></term>
0ace69
    <listitem>
0ace69
    <para>
0ace69
        This option lets you apply a command as last-rendition action.
0ace69
        In this case, the <varname>COMMAND</varname> argument
0ace69
        represents the command string you want to execute in order to
0ace69
        perform in-place modifications to base-rendition,
0ace69
        post-rendition and directory-specific rendition outputs. 
0ace69
    </para>
0ace69
    </listitem>
0ace69
    </varlistentry>
0ace69
    </variablelist>
6104cf
    </sect2>
6104cf
6104cf
    <sect2 id="script-bash-render-description">
6104cf
    <title>Description</title>
0ace69
0ace69
    <para>
0ace69
        Inside the working copy of &TCAR;, rendition tasks take place
0ace69
        inside renderable directories. The rendition itself is
0ace69
        performed through a serie of rendition flows named
0ace69
        base-rendition, post-rendition, last-rendition and
0ace69
        directory-specific rendition.
0ace69
    </para>
0ace69
0ace69
    <para>
0ace69
        Renderable directories are convenctional locations inside the
0ace69
        working copy where you can find source files, output files and
0ace69
        auxiliar files. Source files are used to produce output files.
0ace69
        Auxiliar files are used to modify the way output files are
0ace69
        produced from source files (e.g., to produce localized
0ace69
        output). Auxiliar files are optionals.
0ace69
    </para>
0ace69
    <para>
0ace69
        Renderable directories are made of several directories but
0ace69
        only the output dirctory path is passed to
0ace69
        <function>render</function> functionality as
0ace69
        <varname>DIRECTORY</varname> parameter in the command-line.
0ace69
        The directories related to source and auxiliar files are
0ace69
        automatically constructed based on a directory organization
0ace69
        convenction. This way, the <function>render</function>
0ace69
        functionality collects all the information it needs to work
0ace69
        with.
0ace69
    </para>
0ace69
    <para>
0ace69
        Inside the working copy, renderable directories are divided in
0ace69
        two categories in a way differences between them can be
0ace69
        preserved. These categories are named <quote>direct
0ace69
        production</quote> and <quote>theme production</quote>. These
0ace69
        categories provide the file organization convenction the
0ace69
        <function>render</function> functionality needs, to produce
0ace69
        content based on rendition flows.
0ace69
    </para>
0ace69
0ace69
    <sect3 id="scripts-bash-render-dir-direct">
0ace69
    <title>Direct Production</title>
0ace69
    <para>
0ace69
        ...
0ace69
    </para>
0ace69
    </sect3>
0ace69
0ace69
    <sect3 id="scripts-bash-render-dir-theme">
0ace69
    <title>Theme Production</title>
0ace69
    <para>
0ace69
        ...
0ace69
    </para>
0ace69
    </sect3>
0ace69
0ace69
    <sect3 id="scripts-bash-render-br">
6104cf
    <title>Base Rendition Flow</title>
0ace69
    <para>
0ace69
        ...
0ace69
    </para>
0ace69
    </sect3>
0ace69
0ace69
    <sect3 id="scripts-bash-render-pr">
6104cf
    <title>Post Rendition Flow</title>
0ace69
    <para>
0ace69
        ...
0ace69
    </para>
0ace69
    </sect3>
0ace69
0ace69
    <sect3 id="scripts-bash-render-lr">
6104cf
    <title>Last Rendition Flow</title>
0ace69
    <para>
0ace69
        ...
0ace69
    </para>
0ace69
    </sect3>
0ace69
0ace69
    <sect3 id="scripts-bash-render-dsr">
6104cf
    <title>Directory-Specific Rendition Flow</title>
0ace69
    <para>
0ace69
        ...
0ace69
    </para>
0ace69
    </sect3>
6104cf
6104cf
    </sect2>
6104cf
6104cf
    <sect2 id="script-bash-render-environment">
6104cf
    <title>Environment</title>
6104cf
    <para>
6104cf
        ...
6104cf
    </para>
6104cf
    </sect2>
6104cf
6104cf
    <sect2 id="scripts-bash-render-authors">
6104cf
    <title>Authors</title>
6104cf
    <para>
6104cf
        The following people have worked in the
6104cf
        <function>render</function> functionality:
6104cf
    </para>
6104cf
    <itemizedlist>
6104cf
    <listitem>
6104cf
    <para>
6104cf
        Alain Reguera Delgado <<ulink url="mailto:alain.reguera@gmail.com">alain.reguera@gmail.com</ulink>>
6104cf
    </para>
6104cf
    </listitem>
6104cf
    </itemizedlist>
6104cf
    </sect2>
6104cf
6104cf
    <sect2 id="scripts-bash-render-licence">
6104cf
    <title>License</title>
6104cf
    <para>
6104cf
<screen>Copyright (C) 2009-2012 The CentOS Project
6104cf
 
6104cf
This program is free software; you can redistribute it and/or modify
6104cf
it under the terms of the GNU General Public License as published by
6104cf
the Free Software Foundation; either version 2 of the License, or (at
6104cf
your option) any later version.
6104cf
 
6104cf
This program is distributed in the hope that it will be useful, but
6104cf
WITHOUT ANY WARRANTY; without even the implied warranty of
6104cf
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
6104cf
General Public License for more details.
6104cf
 
6104cf
You should have received a copy of the GNU General Public License
6104cf
along with this program; if not, write to the Free Software
6104cf
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.</screen>
6104cf
    </para>
0ace69
    </sect2>
0ace69
e68d9f
</sect1>