#!/bin/csh

#######################################################################################################################################
#                                                                                                                                     #
#         F I C H I E R   D E S T I N E   A   L ' A L I A S   ' G_L '  :                                                              #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xrd/graph.G_L$vv$Y' :                                                                                           #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, 20061026105751).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

FileTmpB  FiLe $Y

if        ("$AlPhAbEt" == "$K_VIDE") then
          set       AlPhAbEt=$G_Alphabet
else
endif

switch    ("$LeTtRe")
                                        # Introduit le 20130918140008 pour 'v $xiirv/COEL.21', afin de pouvoir recuperer              #
                                        # autre chose que des lettres...                                                              #
                                        #                                                                                             #
                                        # On notera qu'a la date du 20130918174649, les caracteres suivants :                         #
                                        #                                                                                             #
                                        #                   $                                                                         #
                                        #                   "                                                                         #
                                        #                   !                                                                         #
                                        #                   *                                                                         #
                                        #                                                                                             #
                                        # sont difficiles (voire impossible pour des raisons evidentes) a integrer ici...             #
          case " ":
                    set       LeTtRe="space"
                                        # Introduit le 20130918173000...                                                              #
                    breaksw
          case "+":
                    set       LeTtRe="plus"
                    breaksw
          case "-":
                    set       LeTtRe="moins"
                    breaksw
          case "/":
                    set       LeTtRe="slash"
                                        # Introduit le 20130918174649...                                                              #
                    breaksw
          case "%":
                    set       LeTtRe="pour_cent"
                                        # Introduit le 20130918174649...                                                              #
                    breaksw
          case "&":
                    set       LeTtRe="et"
                                        # Introduit le 20130918174649...                                                              #
                    breaksw
          case "=":
                    set       LeTtRe="egal"
                    breaksw
          case "#":
                    set       LeTtRe="diese"
                                        # Introduit le 20130918174240...                                                              #
                    breaksw
          case "(":
                    set       LeTtRe="pg"
                                        # Introduit le 20130918174240...                                                              #
                    breaksw
          case ")":
                    set       LeTtRe="pd"
                                        # Introduit le 20130918174240...                                                              #
                    breaksw
          case ".":
                    set       LeTtRe="point"
                                        # Introduit le 20130918174240...                                                              #
                    breaksw
          case ",":
                    set       LeTtRe="virgule"
                                        # Introduit le 20130918174240...                                                              #
                    breaksw
          case "'":
                    set       LeTtRe="apostrophe"
                    breaksw
          case "|":
                    set       LeTtRe="pipe"
                                        # Introduit le 20240326143848...                                                              #
                    breaksw
          default:
                                        # Les autres '$LeTtRe' sont conservees en l'etat...                                           #
                    breaksw
endsw

$CA       $xcs/csh$Y                                                                                                                    \
                                                                                                              >   $FiLe

#20211123181333____:$CA       $xiii/alphabet.$AlPhAbEt$FON                                                                   |     \  #
#20211123181333____:$AW       " /GENERE__FonctionI_GRAPHIQUES\(FgL""$LeTtRe""_0$AlPhAbEt/,/FiNdUfIcHiEr/ "                   |     \  #
#20211123181333____:$xcp/appariement$X                                                                                             \  #
#20211123181333____:          ouverture="("                                                                                  |     \  #
#20211123181333____:$SE       -e "/^ *DEFV(/d" -e "/^ *,BLOC(/d" -e "/^ *)/d" -e "s/g/G_/g"                                        \  #
#20211123181333____:                                                                                                    >>! $FiLe     #

#20240427115854____:$CA       $xiii/alphabet.$AlPhAbEt$FON                                                                   |     \  #
#20240427115854____:$AW       " /GENERE__FonctionI_GRAPHIQUES\(FgL""$LeTtRe""_0$AlPhAbEt/,/FiNdUfIcHiEr/ "                   |     \  #
#20240427115854____:$xcp/appariement$X                                                                                             \  #
#20240427115854____:          ouverture="("                                                                                  |     \  #
#20240427115854____:$SE       -e "/^ *DEFV(/d" -e "/^ *,BLOC(/d" -e "/^ *)/d" -e "s/g\([$Alphabet_0_9""ABS]\)/G_\1/g"        |     \  #
#20240427115854____:$EGRE     -v -e '^ *Test\(|^ *ATes$|^ *ETes$|^ *Bblock$|^ *Eblock$|^ *CALS\('                                  \  #
#20240427115854____:                                                                                                    >>! $FiLe     #

$CA       $xiii/alphabet.$AlPhAbEt$FON                                                                                            |     \
$AW       " /GENERE__FonctionI_GRAPHIQUES\(FgL""$LeTtRe""_0$AlPhAbEt/,/FiNdUfIcHiEr/ "                                            |     \
$xcp/appariement$X                                                                                                                      \
          ouverture="("                                                                                                           |     \
$SE       -e "/^ *DEFV(/d" -e "/^ *,BLOC(/d" -e "/^ *)/d" -e "s/g\([$Alphabet_0_9""ABS]\)/G_\1/g"                                 |     \
$EGRE     -v -e '^ *Test\(|^ *ATes$|^ *ETes$|^ *Bblock$|^ *Eblock$|^ *CALS\(|^ */\* '                                                   \
                                                                                                              >>! $FiLe
                                        # La modification du 20211123181333 vient d'un probleme avec 'v $xiii/alphabet.0$FON FgLegal' #
                                        # ce 'FgLegal' etant remplace par un 'FG_LeG_al'. Quant a celle du 20240427115854, elle       #
                                        # vient de commentaires mal places tel 'v $xiii/alphabet.0$FON FgL1_00' et c'est d'ailleurs   #
                                        # cela qui causait les messages :                                                             #
                                        #                                                                                             #
                                        #                   /bin: No match.                                                           #
                                        #                                                                                             #
                                        # le '/*' de debut de commentaire etant interprete comme une commande au '$CSH'...            #

set       VaLiDe=`$CA $FiLe | $GRE "[()]"`

if        ("$VaLiDe" == "$K_VIDE") then
          $DIF      -q $FiLe $xcs/csh$Y                                                                                                 \
                                                                                                              >&  $nul
          if        ($status != $OK) then
                                        # ATTENTION : ne pas desolidariser les deux lignes precedentes...                             #
                    source    $FiLe
                                        # Cas ou le fichier '$FiLe' est correct...                                                    #
          else
                    EROR      "['"'$xrd/graph.G_L$vv$Y'"'] Caractere '$LeTtRe' non defini dans '"'$xiii/alphabet.'"$AlPhAbEt"'$FON'"."
          endif
else
#202403261410:EROR "['"'$xrd/graph.G_L$vv$Y'"'] Le fichier '"'$xiii/alphabet.'"$AlPhAbEt"'$FON'"' n'a pu etre exploite correctement." #
     EROR "['"'$xrd/graph.G_L$vv$Y'"'] Le fichier '"'$xiii/alphabet.'"$AlPhAbEt"'$FON'"' n'a pu etre exploite correctement ($VaLiDe)."
                                        # Cela se rencontre, par exemple dans 'v $xiii/alphabet.0$FON FgL0_0' ou la fonction          #
                                        # 'FgL0_00(...)' reference 'FgLO_00(...)'. Or ici, nous ne pouvons utiliser que des           #
                                        # fonctions 'FgL*(...)' "autonomes" (c'est-a-dire qui n'en referencent pas d'autres...).      #
                                        #                                                                                             #
                                        # Le 20200622135452 je note qu'avec 'v $xiii/alphabet.0$FON FgL1_00' le probleme est le       #
                                        # meme a cause du 'Test(...)' que contient la definition de 'FgL1_00(...)'.                   #
                                        #                                                                                             #
                                        # Je rappelle le 20130227083451 qu'il convient de remplacer les "0"s (chiffre "zero") par     #
                                        # des "O's (lettre "O" majuscule)...                                                          #
                                        #                                                                                             #
                                        # Je note le 20200901102927, qu'a cause de 'v $xiii/alphabet.0$FON fonte_proportionnelle',    #
                                        # le probleme se repose et qu'il suffit alors de remplacer les "1"s (chiffre "un") par        #
                                        # des "I's (lettre "I" majuscule)...                                                          #
endif

unset     VaLiDe

FileTmpE  FiLe



Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.