1 #-*-coding:iso-8859-1-*-
3 # Copyright (C) 2008-2017 EDF R&D
5 # This file is part of SALOME ADAO module
7 # This library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License.
12 # This library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # Lesser General Public License for more details.
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this library; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 # Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
27 import Traducteur.log as log
28 from Traducteur.load import getJDC, getJDCFromTexte
29 from Traducteur.mocles import parseKeywords
30 from Traducteur.dictErreurs import GenereErreurPourCommande
31 from Traducteur.inseremocle import *
32 from Traducteur.movemocle import *
33 from Traducteur.renamemocle import *
35 version_out = "V8_3_0"
37 usage="""Usage: python %prog [options]
40 python %prog --infile=xxxx.comm --outfile=yyyy.comm"""
48 sys.dict_erreurs=dict_erreurs
50 def traduc(infile=None,outfile=None,texte=None,flog=None):
51 hdlr = log.initialise(flog)
52 if infile is not None:
53 jdc = getJDC(infile,atraiter)
54 elif texte is not None:
55 jdc = getJDCFromTexte(texte,atraiter)
57 raise ValueError("Traduction du JDC impossible")
58 # ==========================================================================
61 # ==========================================================================
62 fsrc = jdc.getSource()
63 fsrc = re.sub( "#VERSION_CATALOGUE:.*:FIN VERSION_CATALOGUE", "#VERSION_CATALOGUE:%s:FIN VERSION_CATALOGUE"%version_out, fsrc)
64 fsrc = re.sub( "#CHECKSUM.*FIN CHECKSUM", "", fsrc )
67 if outfile is not None:
75 def __init__(self,texte):
76 self.__texte = str(texte)
78 return traduc(infile=None,outfile=None,texte=self.__texte,flog=None)
81 parser = optparse.OptionParser(usage=usage)
83 parser.add_option('-i','--infile', dest="infile",
84 help="Le fichier COMM en entree, a traduire")
85 parser.add_option('-o','--outfile', dest="outfile", default='out.comm',
86 help="Le fichier COMM en sortie, traduit")
88 options, args = parser.parse_args()
89 if len(options.infile) == 0:
95 traduc(options.infile,options.outfile)
97 if __name__ == '__main__':