Auto-éditer un wikilivre/Annexer (Version internationalisée)/install annex.sh
Apparence
Description - Recommandations
[modifier | modifier le wikicode]- install_annex.sh is tested with test_install_annex.bash and Copy2Tmp.bash
- This script install Add_appendix or Annexer for single user or Add_appendix for all users
- Syntax to install and tests: The scripts to tests are all in user working tests directory
$HOME/Tmp/test_install_annex.bash
- Syntax to install directly:
$HOME/Tmp/install_annex.sh Add_appendix $HOME/Tmp/install_annex.sh Annexer $HOME/Tmp/install_annex.sh /usr/local
install_annex.sh
[modifier | modifier le wikicode]#! /bin/bash
#H File install_annex.sh in ~/tmp or re-install_annex.sh in /usr/local/sbin directory
#H Codage UTF-8 sans BOM
#H Syntax : ~/Add_appendix/sbin/install_annex.sh [Install directory | ? ]
#H The installation directory can be /usr/local or /usr or ~/Annexer or ~/Add_appendixby default
#P Creation date : 2020/06/10 by GC
#P Modification date : 2020/06/12 by GC
#P Modification date : 2021/05/19 by GC
#P Last test date : 2021/05/19 by GC
#P This program installs the directory structure for the annex program of wikibooks.
#P
#P . gettext for translation
#P . gettext.sh
#O Include function users_install_annex.sh
function users_install_annex ()
{
#T Tests
echo "First param : $1"
#O Create variables : Workdir, Bindir
if [ $1 = "Add_appendix" ]; then Workdir=~/Add_appendix; echo "Workdir = "$Workdir; fi
if [ $1 = "Annexer" ]; then Workdir=~/Annexer; echo "Workdir = "$Workdir; fi
if [ -d $Workdir ]; then echo " $Workdir is present."; else echo " $Workdir is not present, i create it."; mkdir $Workdir; fi
Bindir="$Installdir/bin"; echo "Bindir : "$Bindir
if test -d $Bindir
then echo " is ok."
else echo " not present, create it"; mkdir $Bindir
fi
#T Breakpoint exit 0
#O Create or recreate directory hierarchy
cd $Workdir
echo -n "The current directory to create $Workdir sub directories = "; pwd
mkdir bin books datas lib man lib/src resources sbin share src temp tests vars
cd $Workdir/tests
echo "$Workdir/tests is the current directory to create sub tests directories."; pwd
mkdir 00-install_annex 0-pre-annex.sh 1-annex.lib 2-annex.sh 3-header.inc.sh 4-list.sh 5-download.sh 6-add_sclt.sh
mkdir 7-scli.inc.sh 8-add_sclic.sh 9-add_sclipco.sh 10-add_sclipwb.sh 11-annexer.sh 12-add_appendix.sh
cd $Workdir/share
echo "$Workdir/share is the current directory to create sub share directories."; pwd
mkdir man doc doc/html
mkdir -p man man/{man1,fr,fr/man1,fr.UTF8,fr.UTF8/man1,es,es/man1}
mkdir -p locale locale/{en,en/LC_MESSAGES,fr,fr/LC_MESSAGES,es,es/LC_MESSAGES}
#T Breakpoint exit 0
#O If findbook.sh, ecfpb.sh, ecfpc.sh, exist in the lib/src directory, build the annex.lib file
if test -e $Workdir/lib/src/findbook.sh && test -e $Workdir/lib/src/ecfpb.sh && test -e $Wordir/lib/src/ecfpc
then
cat $Workdir/lib/src/findbook.sh | grep -v "#O\|#P\|#T" > $Workdir/lib/annex.lib
cat $Workdir/lib/src/ecfpb.sh | grep -v "#O\|#P\|#T" >> $Workdir/lib/annex.lib
cat $Workdir/lib/src/ecfpc.sh | grep -v "#O\|#P\|#T" >> $Workdir/lib/annex.lib
else echo "annex.lib is not builded or not updated in $Workdir/lib/annex.lib"
fi
#O If file annex.lib not exist in $Libdir and if file annex.lib.sh exist in $Libdir/src,
if test -z $Workdir/lib/annex.lib && test -e $Workdir/src/annex.lib.sh
then cat $Workdir/src/annex.lib.sh | grep -v "#O\|#P\|#T" > $Workdir/lib/annex.lib
fi
rm $Workdir/vars/installdir.var
echo "Installdir=$Installdir" > $Workdir/vars/installdir.var
echo "Workdir=$Workdir" >> $Workdir/vars/installdir.var
echo; echo "Content of file $Workdir/vars/installdir.var"
cat $Workdir/vars/installdir.var
if [ "$1" = "Annexer" ]
then
echo; echo "First param = $1"
echo; echo "Se connecter à l'url :"
echo "https://fr.wikibooks.org/wiki/Autoéditer_un_wikilivre/Annexer_(Version_internationalisée)#src.orig_en_français"
echo "Copier les pages de codes, les coller dans un éditeur de texte et les enregistrer dans les répertoires spécialisés"
echo "Les fichiers : "
echo " sources, dans le répertoire $1/src"
echo " de données dans $1/datas"
echo " de librairies, dans $1/lib"
echo " d'exécutables de maintenance, dans $1/sbin (chmod 755 * dans sbin)"
echo " de documentation dans $1/share/doc"
echo " de manuels dans $1/share/man"
echo "Utiliser cette version imprimable : "
echo " https://fr.wikibooks.org/wiki/Auto-éditer_un_wikilivre/Annexer_(Version_internationalisée)/Version_imprimable"
echo " pour copier les codes bash"
echo; echo "Finalement ré-exécuter cette commande ~/Annexer/sbin/users_install_annex.sh"
fi
if [ "$1" = "Add_appendix" ]
then
echo; echo "First param = $1"
echo; echo "Login to url :"
echo "https://fr.wikibooks.org/wiki/Autoéditer_un_wikilivre/Annexer_(Version_internationalisée)#Codes_sources_(internationalized_source_code)"
echo "Copy code pages in memory, paste them in a text editor and save in the specialized directory"
echo "The files :"
echo " sources in the directory Add_appendix/src"
echo " datas in Add_appendix/datas"
echo " library in Add_appendix/lib"
echo " executable for maintenance, in Add_appendix/sbin (chmod 755 * in sbin)"
echo " documentation in Add_appendix/share/doc"
echo " manuals in Add_appendix/share/man"
echo "Use this printable version : "
echo " https://fr.wikibooks.org/wiki/Auto-éditer_un_wikilivre/Annexer_(Version_internationalisée)/Version_imprimable"
echo " to copy the bash code"
echo; echo "Finaly reexecute this command ~/Add_appendix/sbin/users_install_annex.sh"
fi
echo
#O Initialize $Conversions variable
Datasdir=$Workdir/datas; echo "Datadir = $Datasdir"
Conversions=$Datasdir/conversions.dat; echo "Conversion file = $Conversions"
#O Create or recreate the conversions.dat file in datas directory
if test -e $Conversions
then echo "The $Conversions file is present and will not be updated"
else
{
echo "s/%24/\$/g;s/%21/\!/g;s/%25/%/g;s/%2B/+/g;s/%3C/\\\<\;/g;s/%3E/\>\;/g;" > $Conversions
echo "s/%5C/\\\/g;s/%B0/°/g" >> $Conversions
echo "s/%E0/à/g;s/%E2/â/g" >> $Conversions
echo "s/%E8/è/g;s/%E9/é/g;s/%EA/ê/g;s/%EB/ë/g" >> $Conversions
echo "s/%EE/î/g;s/%EF/ï/g" >> $Conversions
echo "s/%F4/ô/g" >> $Conversions
echo "s/%F9/ù/g;s/%FB/û/g" >> $Conversions
echo "s/%25/%/g;" >> $Conversions
echo "s/%28/(/g;s/%29/)/g;" >> $Conversions
echo "s/%2B/+/g;" >> $Conversions
echo "s/%3A/:/g;" >> $Conversions
echo "s/%3D/=/g;" >> $Conversions
echo "s/%5B/[/g;" >> $Conversions
echo "s/%5D/]/g" >> $Conversions
echo "s/%3B/;/g;s/%2F/\//g;s/%27/'/g" >> $Conversions
echo 's/%22/"/g' >> $Conversions
echo "s/%C3%A7/ç/g;s/%E7/ç/g" >> $Conversions
echo "s/%C3%A0/à/g;s/%C3%A2/â/g" >> $Conversions
echo "s/%C3%A9/é/g;s/%C3%A8/è/g;s/%C3%AA/ê/g" >> $Conversions
echo "s/%C3%AE/î/g;s/%C3%AF/ï/g" >> $Conversions
echo "s/%C3%B4/ô/g" >> $Conversions
echo "s/%C3%B9/ù/g;s/%C3%BB/û/g" >> $Conversions
echo "s/%C2%B7/-/g;s/%C2%AB/«/g;s/%C2%BB/»/g" >> $Conversions
}
fi
echo "----"
#O Initialize $Content_cleaner variable
Content_cleaner=$Datasdir/content_cleaner.dat
echo "Content_cleaner = $Content_cleaner"
#O If not exist create the content_cleaner.dat in datas directory
if test -e $Content_cleaner
then echo "The $Content_cleaner file is present and will not be updated"
else
{
echo "s/: \[/\[/g;s/:\[/\[/g" > $Content_cleaner
echo "s/# \[/[/g;s/#\[/\[/g" >> $Content_cleaner
echo "s/* \[/[/g;s/*\[/\[/g" >> $Content_cleaner
echo "s/; /;/g" >> $Content_cleaner
}
fi
echo "----"
#O Initialize $Unrecognized_links variable
Unrecognized_links=$Datasdir/unrecognized_links.dat
echo "Unrecognized_links = $Unrecognized_links"
#O If not exist, create the file Unrecognized_links.dat
#O If not exist create the content_cleaner.dat in datas directory
if test -e $Unrecognized_links
then echo "The $Unrecognized_links file is present and will not be updated"
else
{
echo "fr.wikibooks.org: unrecognized_link.dat ignore les liens non contenus dans les pages Résumé ou Sommaire"
echo "title" > $Unrecognized_links
echo "Spécial" >> $Unrecognized_links
echo "Accueil" >> $Unrecognized_links
echo "Vitrine" >> $Unrecognized_links
echo "Tous_les_livres" >> $Unrecognized_links
echo "Rechercher_un_livre" >> $Unrecognized_links
echo "Wikijunior" >> $Unrecognized_links
echo "Portail_communautaire" >> $Unrecognized_links
echo "Le_Bistro" >> $Unrecognized_links
echo "Special:" >> $Unrecognized_links
echo "Aide:Accueil" >> $Unrecognized_links
echo "propos_de" >> $Unrecognized_links
echo "https://fr.wikibooks.org/wiki/Wikilivres" >> $Unrecognized_links
echo "Wikilivres:" >> $Unrecognized_links
echo "Catégorie:" >> $Unrecognized_links
echo "en.wikibooks.org: unrecognized_link.dat ignore the uncontained Links in the Summary or Contents pages"
echo "Main_Page" >> $Unrecognized_links
echo "Help:Contents" >> $Unrecognized_links
echo "Card_Catalog_Office" >> $Unrecognized_links
echo "Cookbook:Table_of_Contents" >> $Unrecognized_links
echo "Featured_books" >> $Unrecognized_links
echo "Using_Wikibooks" >> $Unrecognized_links
echo "Reading_room" >> $Unrecognized_links
echo "Community_Portal" >> $Unrecognized_links
echo "Reading_room/Bulletin_Board" >> $Unrecognized_links
echo "Maintenance" >> $Unrecognized_links
echo "Policies_and_guidelines" >> $Unrecognized_links
echo "Contact_us" >> $Unrecognized_links
echo "Welcome" >> $Unrecognized_links
echo "General_disclaimer" >> $Unrecognized_links
echo "Category:" >> $Unrecognized_links
}
fi
echo "----"
#O Write README in bin directory
#T echo "param 1 = $1"
if [ "$1" = "Add_appendix" ]
then
echo "*** Write bin/README file "
echo "README to use bin directory" > $Workdir/bin/README
echo "This directory is reserved for commands without a '.sh' file suffix." >> $Workdir/bin/README
echo "Commands without '.sh' are stripped of comments. They come from the" >> $Workdir/bin/README
echo " 'src' directory or from the 'tests' subdirectories." >> $Workdir/bin/README
echo "Executables commands with '.sh', '.x' or .exe suffix are commands for" >> $Workdir/bin/README
echo " maintainers in 'sbin' directory" >> $Workdir/bin/README
echo "*** Write README in Add_appendix"
echo "README file in Add_apperdix" > $Workdir/README
echo "Type ~/Add_appendix/bin/annex to launch the application" >> $Workdir/README
fi
if [ "$1" = "Annexer" ]
then
echo "*** écriture du fichier bin/LISEZ-MOI"
echo "LISEZ-MOI pour l'utilisation du répertoire 'bin'" > $Workdir/bin/LISEZ-MOI
echo "Ce répertoire est réservé aux commandes shell sans l'extension '.sh'." >> $Workdir/bin/LISEZ-MOI
echo "Les commandes sans '.sh' proviennent du répertoire 'src' ou des sous-répertoires" >> $Workdir/bin/LISEZ-MOI
echo " des 'tests', dépouillées des commentaires." >> $Workdir/bin/README
echo "Les exécutables avec l'extension 'sh', '.x' ou .exe sont des commandes" >> $Workdir/bin/LISEZ-MOI
echo " pour les mainteneurs dans le répertoire'sbin'" >> $Workdir/bin/LISEZ-MOI
echo "*** écriture du fichier LISEZ-MOI dans Annexer"
echo "Fichier LISEZ-MOI dans Annexer" > $Workdir/LISEZ-MOI
echo "Taper ~/Annexer/bin/annex pour lancer l'application" >> $Workdir/LISEZ-MOI
fi
#O When you run this script again, the message translation .pot files will be updated.
if test -e $Installdir/bin/header.inc; then
xgettext -L shell -o $Installdir/share/locale/header.inc.pot --from-code=UTF-8 $Installdir/bin/header.inc; fi
if test -e $Installdir/bin/annex; then
xgettext -L shell -o $Installdir/share/locale/annex.pot --from-code=UTF-8 $Installdir/bin/annex; fi
echo "-----"
echo -e "\033[1;33mYou find Pot-files in $Workdir/share/locale for translations with 'Poedit':\033[0m"
ls -R $Workdir/share/locale
echo -e "\033[1;33mWhen you run this script again, the message translation .pot files will be updated.\033[0m"
#O Copy this program to $Workdir/sbin
cp -Pu $0 $Workdir/sbin/users_install_annex.sh
#O Create the documentation of this program
if test -e $Workdir/sbin/users_install_annex.sh; then cat $Workdir/sbin/users_install_annex.sh | grep -e "#D" | grep -v "if test" | sed 's/#D//g' > $Workdir/share/doc/users_install_annex.sh.doc; fi
#O Clean tmpfiles
if test -d ~/tmp; then rm -r ~/tmp; fi
#O End of function users_install_annex
}
#######################################################
#O clean screen
clear;
#O Version
VERSION=210919
if [ "$1" = "--v" ]; then echo "Version of install_annex.sh $VERSION"; exit 0; fi
#O If the first parameter '$1' is empty or '?' print syntax.
if [ "$1" = "?" ]; then echo "Syntax for install_annex.sh: $0 [ <Install-directory> | ? | --v ]"; exit 0; fi
if [ -z $1 ];
then
echo "Syntax ~/Tmp/install_annex.sh [ --v | ? | Add_appendix | Annexer | /usr/local ]"; exit 0
fi
#P Do not use sudo
if [ $USER = "root" ]; then echo "USER = $USER"; echo "Do not use 'sudo' please."; exit -1; fi
#O Go to home directory and print the current directory.
cd ~
echo""; echo -n "current directory = "; pwd; echo ""
#O If the first parameter is not empty
if [ $1 ];
then
if [ $1 = "/usr/local" ]; then Installdir=$1; echo "Installdir = /usr/local"
elif [ $1 = "Annexer" ]; then Installdir=~/Annexer; echo "Installdir = $Installdir"
elif [ $1 = "Add_appendix" ]; then Installdir=~/Add_appendix; echo "Installdir = $Installdir"
fi
fi
if [ $1 = "Annexer" ] || [ $1 = "Add_appendix" ]; then users_install-annex $1; exit 0; fi
if [ $1 = "/usr/local" ]
then
if test -d /usr/local/src/Add_appendix
then echo "/usr/local/src/Add_appendix is present"
else echo "/usr/local/src/Add_appendix is not found, create it."; sudo mkdir /usr/local/src/Add_appendix
fi
#O Create variables
Workdir=~/Add_appendix
Booksdir=$Workdir/books
Testsdir=$Workdir/tests
Varsdir=$Workdir/vars
Installdir=/usr/local
Bindir=$Installdir/bin
Includedir=$Installdir/include
Libdir=$Installdir/lib
Mandir=$Installdir/man
Sbindir=$Installdir/sbin
Sharedir=$Installdir/share
Srcdir=$Installdir/src/Add_appendix
#P Extra directories added
Datasdir=$Installdir/datas
Resourcesdir=$Workdir/resources
#O Print variables
echo "Workdir=$Workdir"
echo "Booksdir=$Booksdir"
echo "Testsdir=$Testsdir"
echo "Varsdir=$Varsdir"
echo "Installdir=$Installdir"
echo "Bindir=$Bindir"
echo "Includedir=$Includedir"
echo "Libdir=$Libdir"
echo "Mandir=$Mandir"
echo "Sbindir=$Sbindir"
echo "Sharedir=$Sharedir"
echo "Srcdir=$Srcdir"
echo "Extra directory Datadir=$Datasdir"
echo "Extra directory Resourcesdir=$Resourcesdir"
#O Directives
echo "Copy or update all sources .sh files in $Srcdir with root privilege."
fi
#T Test break exit 0
########################################"
#O Create or recreate directories
mkdir -p $Varsdir $Booksdir $Resourcesdir $Resourcesdir/{lang,lang/po,lang/po/fr,lang/po/es,lang/man,man,man/en,man/es,man/fr}
sudo mkdir -p $Datasdir
#O If findbook.sh, ecfpb.sh, ecfpc.sh, exist in the lib/src directory, build the annex.lib file
mkdir $Workdir/lib
if test -e $Srcdir/findbook.sh
then sudo cat $Srcdir/findbook.sh | grep -v "#O\|#P\|#T" > $Workdir/lib/annex.lib
sudo cp $Workdir/lib/annex.lib $Libdir/annex.lib
else echo "findbook in annex.lib is not builded or not updated in $Libdir/annex.lib"
fi
rm -rf $Workdir/lib
# if test -e $Srcdir/ecfpb.sh; then cat $Srcdir/ecfpb.sh | grep -v "#O\|#P\|#T" >> $Libdir/annex.lib; fi
# if test -e $Srcdir/ecfpc.sh; then cat $Srcdir/ecfpc.sh | grep -v "#O\|#P\|#T" >> $Libdir/annex.lib; fi
#O If they exist: install_datasfiles.sh in the lib/src directory,
#O then build this file and move to $Datasdir
if test -e $Srcdir/install_datasfiles.sh
then
mkdir $Workdir/datas
cp $Srcdir/install_datasfiles.sh $Workdir/datas/.; chmod 755 $Workdir/datas/install_datasfiles.sh
$Workdir/datas/install_datasfiles.sh
sudo cp -Rf $Workdir/datas/*.dat /usr/local/datas/.
else echo "install_datasfiles.sh not found in $Srcdir (datas files not updated in $Datasdir)"
fi
rm -r $Workdir/datas
#O Verify the content of datas dir
if test -e $Datasdir/content_cleaner.dat; then echo "$Datasdir/content_cleaner.dat is found"; else echo "$Datasdir/content_cleaner.dat not found"; fi
if test -e $Datasdir/conversions.dat; then echo "$Datasdir/conversions.dat is found"; esle echo "$Datasdir/conversions.dat is not found"; fi
if test -e $Datasdir/unrecognized_links; then echo "$Datasdir/unrecognized_links is found"; else echo "$Datasdir/unrecognized_links is not found"; fi
#O Install cp-src2bin.shx, install_annex.shx, users_install_annex.shx, makeman_annex.shx, docu2html.shx
mkdir $Workdir/sbin
if test -e $Srcdir/cp-src2bin.sh; then cp $Srcdir/cp-src2bin.sh $Workdir/sbin/.; shc -r -v -f $Workdir/sbin/cp-src2bin.sh -o $Workdir/sbin/cp-src2bin.x; else echo "$Srcdir/cp-src2bin.sh not found"; fi
if test -e $Workdir/sbin/cp-src2bin.x; then sudo cp $Workdir/sbin/cp-src2bin.x /usr/local/sbin/; fi
if test -e $Srcdir/install_annex.sh; then cp $Srcdir/install_annex.sh $Workdir/sbin/.; shc -r -v -f $Workdir/sbin/install_annex.sh -o $Workdir/sbin/install_annex.x; else echo "$Srcdir/install_annex.sh not found"; fi
if test -e $Workdir/sbin/install_annex.x; then sudo cp $Workdir/sbin/install_annex.x /usr/local/sbin/; fi
if test -e $Srcdir/users_install_annex.sh; then cp $Srcdir/users_install_annex.sh $Workdir/sbin/.; shc -r -v -f $Workdir/sbin/users_install_annex.sh -o $Workdir/sbin/users_install_annex.x; else echo "$Srcdir/users_install_annex.sh not found"; fi
if test -e $Workdir/sbin/users_install_annex.x; then sudo cp $Workdir/sbin/users_install_annex.x /usr/local/sbin/; fi
if test -e $Srcdir/makeman_annex.sh; then cp $Srcdir/makeman_annex.sh $Workdir/sbin/.; shc -r -v -f $Workdir/sbin/users_install_annex.sh -o $Workdir/sbin/users_install_annex.x; else echo "$Srcdir/makeman_annex.sh not found"; fi
if test -e $Workdir/sbin/users_install_annex.x; then sudo cp $Workdir/sbin/users_install_annex.x /usr/local/sbin/; fi
if test -e $Srcdir/docu2html.sh; then cp $Srcdir/docu2html.sh $Workdir/sbin/.; shc -r -v -f $Workdir/sbin/docu2html.sh -o $Workdir/sbin/docu2html.x; else echo "$Srcdir/docu2html.sh not foud"; fi
if test -e $Workdir/sbin/docu2html.x; then sudo cp $Workdir/sbin/docu2html.x /usr/local/sbin/; fi
if test -e $Srcdir/install_datasfiles.sh; then cp $Srcdir/install_datasfiles.sh $Workdir/sbin/.; shc -r -v -f $Workdir/sbin/install_datasfiles.sh -o $Workdir/sbin/install_datasfiles.x; else echo "$Srcdir/install_datasfiles.sh not foud"; fi
if test -e $Workdir/sbin/install_datasfiles.x; then sudo cp $Workdir/sbin/install_datasfiles.x /usr/local/sbin/; fi
# rm -rf $Workdir/sbin
exit 0
#O Create function cpcleaned2bin
function cpcleaned2bin
{
#O Cleaner
mkdir -p $Workdir/tmp
sudo cat $Srcdir/$1.sh | grep -v "#O\|#P\|#T" | sed "s/eval_gettext /echo \$/g" | sed "s/; echo//g" \
| sed "s/\"\$(gettext '/\$\"/g" | sed "s/' )//g" | sed "s/')//g" > $Workdir/tmp/$1
sudo cp $Workdir/tmp/$1 $Bindir/$1
if echo $Bindir/$1 | grep ".inc"; then sudo chmod 644 $Bindir/$1; else sudo chmod 755 $Bindir/$1; fi
#O Create new .pot file
xgettext -L shell -o $Resourcesdir/lang/po/$1.pot --from-code=UTF-8 $Bindir/$1
#O Create or update fr .po files
if test -z $Resourcesdir/lang/po/fr/$1.po
then cp $Resourcesdir/lang/po/$1.pot $Resourcesdir/lang/po/fr/$1.po
else msgmerge --update $Resourcesdir/lang/po/fr/$1.po $Resourcesdir/lang/po/$1.pot
fi
#O Create or update fr .mo files in resources directory
msgfmt $Resourcesdir/lang/po/fr/$1.po -o $Resourcesdir/lang/po/fr/$1.mo
echo -e "\033[1;33m### Only if you are edit and update $1.po with Poedit: ###\033[0m"
echo "copy $Resourcesdir/lang/po/fr/$1.mo to /usr/share/locale/fr/LC_MESSAGES/$1.mo"
#O Create or update es .po files
if test -z $Resourcesdir/lang/po/es/$1.po
then cp $Resourcesdir/lang/po/$1.pot $Resourcesdir/lang/po/es/$1.po
else msgmerge --update $Resourcesdir/lang/po/es/$1.po $Resourcesdir/lang/po/$1.pot
fi
#O Create or update fr .mo files in resources directory
msgfmt $Resourcesdir/lang/po/es/$1.po -o $Resourcesdir/lang/po/es/$1.mo
echo -e "\033[1;33m### Only if you are edit and update $1.po with Poedit: ###\033[0m"
echo "copy $Resourcesdir/lang/po/es/$1.mo to /usr/share/locale/es/LC_MESSAGES/$1.mo"
}
#O Clean program sources files and add .pot files
# add_sclic
if [ -e $Srcdir/add_sclic.sh ]; then cpcleaned2bin add_sclic; else echo "$Srcdir/add_sclic.sh not found"; fi
# add_sclipco
if [ -e $Srcdir/add_sclipco.sh ]; then cpcleaned2bin add_sclipco; else echo "$Srcdir/add_sclipco.sh not found"; fi
# add_sclipwb
if [ -e $Srcdir/add_sclipwb.sh ]; then cpcleaned2bin add_sclipwb; else echo "$Srcdir/add_sclipwb.sh not found"; fi
# add_sclt
if [ -e $Srcdir/add_sclt.sh ]; then cpcleaned2bin add_sclt; else echo "$Srcdir/add_sclt.sh not found"; fi
# annex
if [ -e $Srcdir/annex.sh ]; then cpcleaned2bin annex; else echo "$Srcdir/annex.sh not found"; fi
# download
if [ -e $Srcdir/download.sh ]; then cpcleaned2bin download; else echo "$Srcdir/download.sh not found"; fi
# en_sclic.inc
if [ -e $Srcdir/en_sclic.inc.sh ]; then cpcleaned2bin en_sclic.inc; else echo "$Srcdir/en_sclic.inc.sh not found"; fi
# en_sclipco.inc
if [ -e $Srcdir/en_sclipco.inc.sh ]; then cpcleaned2bin en_sclipco.inc; else echo "$Srcdir/en_sclipco.inc.sh not found"; fi
# en_sclipwb.inc
if [ -e $Srcdir/en_sclipwb.inc.sh ]; then cpcleaned2bin en_sclipwb.inc; else echo "$Srcdir/en_sclipwb.inc.sh not found"; fi
# en_sclt.inc
if [ -e $Srcdir/en_sclt.inc.sh ]; then cpcleaned2bin en_sclt.inc; else echo "$Srcdir/en_sclt.inc.sh not found"; fi
# fr_sclic.inc
if [ -e $Srcdir/fr_sclic.inc.sh ]; then cpcleaned2bin fr_sclic.inc; else echo "$Srcdir/fr_sclic.inc.sh not found"; fi
# fr_sclipco.inc
if [ -e $Srcdir/fr_sclipco.inc.sh ]; then cpcleaned2bin fr_sclipco.inc; else echo "$Srcdir/fr_sclipco.inc.sh not found"; fi
# fr_sclipwb.inc
if [ -e $Srcdir/fr_sclipwb.inc.sh ]; then cpcleaned2bin fr_sclipwb.inc; else echo "$Srcdir/fr_sclipwb.inc.sh not found"; fi
# fr_sclt.inc
if [ -e $Srcdir/fr_sclt.inc.sh ]; then cpcleaned2bin fr_sclt.inc; else echo "$Srcdir/fr_sclt.inc.sh not found"; fi
# header.inc
if [ -e $Srcdir/header.inc.sh ]; then cpcleaned2bin header.inc; else echo "$Srcdir/header.inc.sh not found"; fi
# list
if [ -e $Srcdir/list.sh ]; then cpcleaned2bin list; else echo "$Srcdir/list.sh not found"; fi
# pre-annex
if [ -e $Srcdir/pre-annex.sh ]; then cpcleaned2bin pre-annex; else echo "$Srcdir/pre-annex.sh not found"; fi
# scli.inc
if [ -e $Srcdir/scli.inc.sh ]; then cpcleaned2bin scli.inc; else echo "$Srcdir/scli.inc.sh not found"; fi
#O List the Installdir/src directory and recreate the tmp/shell_files.prj
#P if test -e ~/tmp; then rm -r ~/tmp; fi
#P mkdir ~/tmp
#P ls $Srcdir/*.sh > ~/tmp/shell_files.prj
#T Breakpoint exit 0
#O While line read in shell_files.prj
#P while read line
#P do
#O Read $line, delete comments, write the result in Testdir directory for the Units Tests.
#P echo $line | awk -F "/" '{print $NF}' > ~/tmp/tmpfile.txt
#P read file < ~/tmp/tmpfile.txt
#T echo " file = "$file
#P mkdir $Testdir/$file
#P cp $Srcdir/$file $Testdir/$file/$file; chmod 755 $Testdir/$file/$file
#P done < ./tmp/shell_files.prj
#O Clean tmpfile
#P rm ~/tmp/tmpfile.txt
#P rm -r ~/tmp
#O Message of the tasks to be accomplished.
echo "-----"
echo "Tasks to be accomplished :"
echo "Modify these files as functions"
echo "Integrate functions in the librairie $Libdir/annex.lib"
echo "Copy include files in $Includedir"
# echo "Copy $Srcdir/install_annex.sh in $Sbindir"
echo "See also users_install_annex.sh, best command for user"
#O Put install dirs to /vars/installdir.var
rm $Workdir/vars/installdir.var
echo "Installdir=$Installdir" > $Varsdir/installdir.var
echo "Workdir=$Workdir" >> $Varsdir/installdir.var
echo "Booksdir=$Booksdir" >> $Varsdir/installdir.var
echo "Testsdir=$Testsdir" >> $Varsdir/installdir.var
echo "Varsdir=$Varsdir" >> $Varsdir/installdir.var
echo "Bindir=$Bindir" >> $Varsdir/installdir.var
echo "Includedir=$Includedir" >> $Varsdir/installdir.var
echo "Libdir=$Libdir" >> $Varsdir/installdir.var
echo "Mandir=$Mandir" >> $Varsdir/installdir.var
echo "Sbindir=$Sbindir" >> $Varsdir/installdir.var
echo "Sharedir=$Sharedir" >> $Varsdir/installdir.var
echo "Srcdir=$Srcdir" >> $Varsdir/installdir.var
echo "Extra directory Datadir=$Datasdir" >> $Varsdir/installdir.var
echo "Extra directory Resourcesdir=$Resourcesdir" >> $Varsdir/installdir.var
echo; echo "Content of file $Varsdir/installdir.var"
cat $Varsdir/installdir.var
#O Clean tmpfiles
if test -d ~/tmp; then rm -r ~/tmp; fi
if test -d $Workdir/tmp; then rm -r $Workdir/tmp; fi
#O End 'install_annex.sh'
test_install_annex.bash
[modifier | modifier le wikicode]#!/bin/bash
#P File : test_install_annex.bash
#H Usage : ~/Tmp/test_install_annex.bash [ --v | ? | Annexer | Add_appendix ]
#H
#P Creation date : 2021/07/27 by GC
#P Update and tests : 2021/07/27 by GC
#P
#D This Documentation is included in source file
#H Header of file included in source file
#O Organigram of program included in source file
#P Comments for programmers included in source file
#S Structure comments of program included in source file
#w Warnings comments in program included in source file
#O clean screen
clear
# Copy files to Tmp directory
./Copy2Tmp.bash
#O Version
unset $VERSION
VERSION=210917
if [ "$1" = "--v" ]; then echo "Version of test_install_annex.bash "$VERSION; exit 0; fi
#O If the first parameter '$1' is '?' print syntax.
if [ "$1" = "?" ]
then
echo "$HOME/Tmp/test_install_annex.bash [ --v | ? | Annexer | Add_appendix | /urs/local ]"; exit 0
fi
#O If the first parameter '$1' is empty print syntax.
#T echo "param 0 = $0; param 1 = $1" exit 0
if [ "$0" != "$HOME/Tmp/test_install_annex.bash" ] || [ -z $1 ]
then
echo "Copy test_install_annex.bash in ~/Tmp directory"
echo "Syntax $HOME/Tmp/test_install_annex.bash [ --v | ? | Add_appendix | Annexer | /usr/local ]"
fi
#T Test break exit 0
#O Test whishout firstparam
echo "Test whishout firstparam"
$HOME/Tmp/install_annex.sh
sleep 3
#O Test --v
echo "Test VERSION with '--v'"
$HOME/Tmp/install_annex.sh --v
sleep 3
#O Test ?
echo "Test syntax with '?'"
$HOME/Tmp/install_annex.sh ?
sleep 4
#O Choose Annexer or Add_appendix
echo -n "Choose Annexer inkey '1' or Add_appendix inkey '2' or /usr/local inkey '3': "
read Inkey
if [ "$Inkey" == "1" ]
then
#O Test Annexer
$HOME/Tmp/install_annex.sh Annexer
echo "Contenu du répertoire Annexer :"
ls -al ~/Annexer
echo "Contenu des sous-répertoires"
ls -al ~/Annexer/datas ~/Annexer/lib ~/Annexer/lib/src ~/Annexer/sbin ~/Annexer/share/doc ~/Annexer/vars
exit 0
elif [ "$Inkey" == "2" ]
then
#O Test Add_appendix
$HOME/Tmp/install_annex.sh Add_appendix
echo "Add_appendix directory :"
ls -al ~/Add_appendix
echo "Contents of sub-directories :"
ls -al ~/Add_appendix/datas ~/Add_appendix/lib ~/Add_appendix/lib/src ~/Add_appendix/sbin ~/Add_appendix/share/doc ~/Add_appendix/vars
exit 0
elif [ "$Inkey" == "3" ]
then
#O Test /usr/local
$HOME/Tmp/install_annex.sh /usr/local
ls -al ~/Add_appendix ~/Add_appendix/vars ~/Add_appendix/resources
echo; echo "Contents of /usr/local sub-directories :"
ls -al /usr/local/src/Add_appendix /usr/local/datas /usr/local/lib /usr/local/sbin
exit 0
#O Else print syntax
else $HOME/Tmp/install_annex.bash ?
fi
#O End test_install_annex.bash
Copy2Tmp.bash
[modifier | modifier le wikicode]#!/bin/bash
#H File Copy2Tmp.bash in $Workdir/tests/00-install_annex directory
VERSION=210818
cp -u test_users_install_annex.bash ~/Tmp/.; chmod 766 ~/Tmp/test_users_install_annex.bash
cp -u users_install_annex.sh ~/Tmp/.; chmod 766 ~/Tmp/users_install_annex.sh
cp -u users_install_annex.sh.x ~/Tmp/.
#
cp -u test_install_annex.bash ~/Tmp/.; chmod 766 ~/Tmp/test_install_annex.bash
cp -u install_annex.sh ~/Tmp/.; chmod 766 ~/Tmp/install_annex.sh
#P End of file Copy2Tmp.bash