X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=functions.py;h=1f4d8bb9e76dd0807dda6187a92ebf108eef770d;hp=8f15198127e6253f737eab586700842235da0e71;hb=7539792168d42f09763ab021a9e0e0f8afa3bf07;hpb=f89443607fdb078b159267a8eaaececaab76ba08 diff --git a/functions.py b/functions.py index 8f15198..1f4d8bb 100644 --- a/functions.py +++ b/functions.py @@ -121,6 +121,11 @@ class History : def rmtab(self, analyse) : del self.opened[analyse['uuid']] + + def clean(self) : + corpustodel = [corpus for corpus in self.history if not os.path.exists(corpus['ira'])] + for corpus in corpustodel : + self.delete(corpus, corpus = True) def __str__(self) : return str(self.history) @@ -468,7 +473,7 @@ def ReadDicoAsDico(dicopath): dico = {} for line in content : if line[0] != u'': - line = line.replace(u'\n', '').replace('"', '').split('\t') + line = line.rstrip('\n\r').replace(u'\n', '').replace('"', '').split('\t') dico[line[0]] = line[1:] return dico @@ -519,7 +524,6 @@ def exec_rcode(rpath, rcode, wait = True, graph = False): if sys.platform == 'darwin' : try : macversion = platform.mac_ver()[0].split('.') - print macversion if int(macversion[1]) < 5 : needX11 = True else : @@ -528,18 +532,21 @@ def exec_rcode(rpath, rcode, wait = True, graph = False): needX11 = False rpath = rpath.replace('\\','\\\\') + env = os.environ.copy() + if sys.platform == 'darwin' and 'LC_ALL' not in env: + env['LC_ALL'] = 'en_US.UTF-8' if not graph : if wait : if sys.platform == 'win32': error = call(["%s" % rpath, "--vanilla","--slave","-f", "%s" % rcode]) else : - error = call([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"]) + error = call([rpath, '--slave', "--vanilla", "-f %s" % rcode, "--encoding=UTF-8"], env = env) return error else : if sys.platform == 'win32': pid = Popen(["%s" % rpath, '--vanilla','--slave','-f', "%s" % rcode]) else : - pid = Popen([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], stderr = PIPE) + pid = Popen([rpath, '--slave', "--vanilla", "-f %s" % rcode, "--encoding=UTF-8"], stderr = PIPE, env = env) return pid else : if wait : @@ -547,18 +554,18 @@ def exec_rcode(rpath, rcode, wait = True, graph = False): error = call(["%s" % rpath, '--vanilla','--slave','-f', "%s" % rcode]) elif sys.platform == 'darwin' and needX11: os.environ['DISPLAY'] = ':0.0' - error = call([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"]) + error = call([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], env = env) else : - error = call([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"]) + error = call([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], env = env) return error else : if sys.platform == 'win32': pid = Popen(["%s" % rpath, '--vanilla','--slave','-f', "%s" % rcode]) elif sys.platform == 'darwin' and needX11: os.environ['DISPLAY'] = ':0.0' - pid = Popen([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], stderr = PIPE) + pid = Popen([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], stderr = PIPE, env = env) else : - pid = Popen([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], stderr = PIPE) + pid = Popen([rpath, '--vanilla','--slave',"-f %s" % rcode, "--encoding=UTF-8"], stderr = PIPE, env = env) return pid def check_Rresult(parent, pid) : @@ -673,3 +680,20 @@ def treat_var_mod(variables) : if not mod in var_mod[var] : var_mod[var].append(variable) return var_mod + +def doconcorde(corpus, uces, mots) : + ucestxt1 = [row for row in corpus.getconcorde(uces)] + ucestxt1 = dict(ucestxt1) + ucestxt = [] + ucis_txt = [] + listmot = [corpus.getlems()[lem].formes for lem in mots] + listmot = [corpus.getforme(fid).forme for lem in listmot for fid in lem] + mothtml = [''+mot+'' for mot in listmot] + dmots = dict(zip(listmot, mothtml)) + for uce in uces : + ucetxt = ucestxt1[uce].split() + ucetxt = ' '.join([dmots.get(mot, mot) for mot in ucetxt]) + ucis_txt.append('

' + ' '.join(corpus.ucis[corpus.getucefromid(uce).uci].etoiles) + '

') + ucestxt.append(ucetxt) + return ucis_txt, ucestxt +