diff --git a/Manuals/Tcar-ug/Scripts/Bash/environment.docbook b/Manuals/Tcar-ug/Scripts/Bash/environment.docbook new file mode 100644 index 0000000..2d3cb09 --- /dev/null +++ b/Manuals/Tcar-ug/Scripts/Bash/environment.docbook @@ -0,0 +1,237 @@ + + + Environment Variables + + + When you login in your computer you enter into a unique user + environment which you can customize by setting environment + variables in the ~/.bash_profile + file.To know more about environment variables, + see the bash(1) man page. This way different + users can benefit from their own environment variables to + customize the execution of centos-art.sh + script in a safe way. For example, users can use the variables + of their environments to set different locations for their + working copies of &TCAR;.See + + + + When you execute the centos-art.sh script, + you create a new environment inside the user environment which + we call the centos-art.sh script + environment. This environment inherits all variables from the + user environment and contains the variables and + functionalities defined by the + centos-art.sh script. If your only interest + is using the centos-art.sh script to + accomplish tasks inside the working copy, you don't need to + know the whole environment of centos-art.sh + script but the user environment only. However, if your + interest is improving the centos-art.sh + script somehow, to know the centos-art.sh + script environment is a fundamental knowledge you need to have + in order to understand where to put the code you want to + contribute inside the script. + + + + The <command>centos-art.sh</command> script environment + + The centos-art.sh script environment + + + +--------------------------------------------------- +User environment +----|-------------------|-------------------------- +. |-- TCAR_WORKDIR |-- EDITOR . +. |-- LANG |-- HOME . +. `-- centos-art.sh `-- ... . +. ----|------------------------------------ . +. centos-art.sh environment . +. ----|-----------------|------------------ . +. . |-- CLI_NAME |-- render() . . +. . |-- CLI_BASEDIR | |-- svg() . . +. . |-- CLI_TEMPDIR | `-- docbook() . . +. . |-- CLI_VERSION |-- help() . . +. . `-- ... `-- ... . . +. ......................................... . +................................................... + + + + + + + + To study the environment of centos-art.sh + script consider the directory structure under trunk/Scripts/Bash/. In this + structure each directory under Functions creates a new function + environment inside the centos-art.sh script + environment. You can only execute one function by script + execution so it will only be one function environment inside + the centos-art.sh script environment every + time it is executed. In some cases, it is possible to find a + sub-function environment which takes place inside the function + environment. This is the case of the + render functionality which produces both + images and docbook manuals. Likewise function environments to + centos-art.sh script environment, there can + only exist one sub-function environment inside the current + function environment. + + + + + If you need more environment levels from sub-function + environment on, then it is a good time for you to consider the + creation of a new function environment at all. + + + + + User's Profile (<filename>~/.bash_profile</filename>) + + + Default working copy + TCAR_WORKDIR=${HOME}/artwork + + The TCAR_WORKDIR environment variable is + specific to centos-art.sh script and + controls the working copy default location in the workstation. + This variable doesn't exist just after installing your + workstation. This variable appears inside the + ~/.bash_profile file (and so in the user + environment of yours) after configuring your workstation, as + described in . + + + + + + Default execution path + PATH=$PATH:$HOME/bin + + This is the location where we store links to executable files + inside the working copy. + + + + + Default text editor + EDITOR=/usr/bin/vim + + The default text editor information is controlled by the + EDITOR environment variable. The + centos-art.sh script uses the default text + editor to edit subversion pre-commit messages, translation + files, documentation files, script files, and similar + text-based files. + + + + If EDITOR environment variable is not set, + centos-art.sh script uses /usr/bin/vim as default text + editor. Otherwise, the following values are recognized by + centos-art.sh script: + + + + + /usr/bin/vim + + + + + + /usr/bin/emacs + + + + + + /usr/bin/nano + + + + + + + + If none of these values is set in the EDITOR + environment variable, the centos-art.sh + script uses /usr/bin/vim text editor, the one + installed by default in &TCD;. + + + + + Default locale information + + The default locale information is controlled by the + LANG environment variable. This variable is + initially set in the installation process of &TCD;, + specifically in the Language step. + Generally, there is no need to customize this variable in your + personal profile. If you need to change the value of this + environment variable do it through the login screen of GNOME + Desktop Environment or the + system-config-language command. + + + + The centos-art.sh script uses the + LANG environment variable to determine what + language to use for printing output messages from the script + itself, as well as the portable objects locations that need to + be updated or edited when you localize directory structures + inside the working copy of &TCAR;. + + + + + Default time zone representation + + The time zone representation is a time correction applied to + the system time (stored in the BIOS clock) based on your + country location. This correction is specially useful to + distributed computers around the world that work together and + need to be syncronized in time to know when things happened. + + + &TCAR; is made of one server and several workstations spread + around the world. In order for all these workstations to know + when changes in the server took place, it is required that + they all set their system clocks to use the same time + information (e.g., through UTC (Coordinated Universal Time)) + and set the time correction for their specific countries in + the operating system. Otherwise, it would be difficult to + know when something exactly happened. + + + + Generally, setting the time zone information is a + straight-forward task and configuration tools provided by + &TCD; do cover time correction for most of the countries + around the world, thus we don't include it to your personal + profile. + + + + In case you need a time precision not provided by any of the + date and time configuration tools provided by &TCD; then, you + need to customize the TZ environment variable + in your personal profile to correct the time information by + yourself. The format of TZ environment + variable is described in tzset(3) manual page. + + + + + +