1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 import profile,traceback,pstats
24 import os,time
25 from MediteAppli.MediteAppli import *
26 from Utile.constantesDonnees import *
27 from Utile.exceptionsDonnees import *
28 from Donnees.resultatAppli import *
29 from Donnees.arbre import Arbre
30 import Donnees.planTravail
31 import DGManager
32 import Utile.decodage
33
34
35 from MediteAppli.mediteFeng import *
36
37
38
39
41
42
44 """pre: isinstance(planTravail,Donnees.planTravail.PlanTravail) """
45 dgm = DGManager.DGManager()
46 nomDG = dgm.getDG(planTravail.getAuteur(), planTravail.getOeuvre())
47
48 pathSource=dgm.getEtatPath(planTravail.getAuteur(), planTravail.getOeuvre(),planTravail.getVersionSource(),planTravail.getEtatSource())
49 pathCible =dgm.getEtatPath(planTravail.getAuteur(), planTravail.getOeuvre(),planTravail.getVersionCible(),planTravail.getEtatCible())
50 fs = open(pathSource)
51 fc = open(pathCible)
52 pParametres = planTravail.getParam()
53 p1 = pParametres.getp1()
54 p2 = float(100)/pParametres.getp2()
55 p3 = float(pParametres.getp3()) /100
56 pcarOuMot = 1
57 pcaseSensitive = pParametres.getp5()
58 pseparatorSensivitive = pParametres.getp6()
59 pdiacriticSensitive = pParametres.getp7()
60
61
62 try:
63 texte1 = fs.read()
64 texte2 = fc.read()
65
66
67
68
69 logging.debug('len(texte1)='+str(len(texte1))+' / len(texte2)='+str(len(texte2)))
70 if isinstance(texte1, unicode):
71 texte1 = texte1.encode('utf-8')
72 logging.debug('transfo texte1 uni 2 utf')
73 if isinstance(texte2, unicode):
74 texte2 = texte2.encode('utf-8')
75 logging.debug('transfo texte2 uni 2 utf')
76 fs.close()
77 fc.close()
78 logging.debug('len(texte1)='+str(len(texte1))+' / len(texte2)='+str(len(texte2)))
79
80
81
82 appli = ecartTextesRecur2(texte1, texte2, p1, p2, p3, pcarOuMot,
83 pcaseSensitive, pseparatorSensivitive, pdiacriticSensitive,
84 planTravail,algoAligneur='HIS')
85 resultat = appli.run()
86 logging.debug('len(texte1)='+str(len(texte1))+' / len(texte2)='+str(len(texte2)))
87 logging.debug(resultat)
88
89 if isinstance(texte1, unicode) and isinstance(texte2, unicode):
90 mapper = Utile.decodage.mapperUnicodeUtf(texte1+texte2, 'utf-8')
91 res = mapper.uniToUtfResultat(backup)
92 logging.debug(resultat)
93
94
95
96
97
98
99 except Exception,e1:
100 sys.stderr.write( str(e1))
101 traceback.print_exc()
102 sys.stderr.flush()
103
104 if False:
105 logging.debug(str(appli.insertions))
106 logging.debug("\n------------------------------------------------\n")
107 logging.debug(str(appli.suppressions))
108 logging.debug("\n------------------------------------------------\n")
109 logging.debug(str(appli.occs_deplaces))
110 logging.debug("\n------------------------------------------------\n")
111 logging.debug(str(appli.tous_remplacements))
112 logging.debug("\n------------------------------------------------\n")
113 logging.debug(str(appli.lg_texte1))
114 logging.debug("\n------------------------------------------------\n")
115
116 logging.debug("\n------------------------------------------------\n")
117 logging.debug(str(appli.blocsCommuns))
118 logging.debug("\n------------------------------------------------ begin appli.lDepl\n")
119 logging.debug(str(appli.lDepl))
120 logging.debug("\n------------------------------------------------ end appli.lDepl\n")
121 logging.debug( resultat)
122
123 return resultat
124