...
[iramuteq] / iracmd.py
index 8c000cb..3d496cb 100644 (file)
--- a/iracmd.py
+++ b/iracmd.py
@@ -11,18 +11,19 @@ reload(sys)
 import locale
 import codecs
 sys.setdefaultencoding(locale.getpreferredencoding())
-from chemins import ConstructConfigPath, ConstructDicoPath, ConstructRscriptsPath
+from chemins import ConstructConfigPath, ConstructDicoPath, ConstructRscriptsPath, PathOut
 from functions import ReadLexique, DoConf, History, ReadDicoAsDico
 from ConfigParser import *
 #######################################
 #from textchdalc import AnalyseAlceste
 #from textdist import PamTxt
 #from textafcuci import AfcUci
-from analysetxt import Alceste,  gramact, gramsup
-from corpus import Corpus, copycorpus
+from analysetxt import Alceste
+from corpus import Corpus, copycorpus, BuildFromAlceste
 from textaslexico import Lexico
 from textstat import Stat
 from tools import SubCorpus
+from textsimi import SimiTxt
 import tempfile
 ######################################
 import logging
@@ -46,7 +47,8 @@ else:
 UserConfigPath = os.path.abspath(os.path.join(user_home, '.iramuteq'))
 
 class CmdLine :
-    def __init__(self, args = None) :
+    def __init__(self, args = None, AppliPath = None, parametres = None) :
+        AppliPath = AppliPath
         self.DictPath = ConstructDicoPath(AppliPath)
         self.ConfigPath = ConstructConfigPath(UserConfigPath)
         self.syscoding = sys.getdefaultencoding()
@@ -58,6 +60,8 @@ class CmdLine :
         self.pref = RawConfigParser()
         self.pref.read(self.ConfigPath['preferences'])
         self.history = History(os.path.join(UserConfigPath, 'history.db'))
+        print 'CLEAN HISTORY'
+#        self.history.clean()
 
         parser = OptionParser()
     
@@ -94,10 +98,14 @@ class CmdLine :
         if options.filename or options.read :
             self.corpus_encodage = options.encodage
             self.corpus_lang = options.language
-                
+            self.keys = DoConf(self.ConfigPath['key']).getoptions()
 
             ReadLexique(self, lang = options.language)
             self.expressions = ReadDicoAsDico(self.DictPath.get(options.language + '_exp', 'french_exp'))
+            gramact = [k for k in self.keys if self.keys[k] == 1]
+            gramsup = [k for k in self.keys if self.keys[k] == 2]
+
             if options.filename :
                 self.filename = os.path.abspath(options.filename)
                 if options.corpusconfigfile is not None :
@@ -123,6 +131,7 @@ class CmdLine :
                 corpus.parametres['pathout'] = os.path.dirname(os.path.abspath(options.read))
                 pathout = os.path.dirname(os.path.dirname(os.path.abspath(options.read)))
                 self.corpus = corpus
+                print self.corpus
 
             if corpus is not None :
                 corpus.conn_all()
@@ -133,14 +142,17 @@ class CmdLine :
                 #print corpus.getlemconcorde('de').fetchall()
 #            log.warning('ATTENTION gethapaxuces')
 #            MakeUciStat(corpus)
-#            qfqsdf
             #corpus.gethapaxuces()
-            #ucisize = corpus.getucisize()
-            #ucisize = [`val` for val in ucisize]
-            #uciet = [uci.etoiles[1] for uci in corpus.ucis]
-            #res = zip(uciet, ucisize)
-            #with open('ucisize.csv', 'w') as f :
-            #    f.write('\n'.join(['\t'.join(val) for val in res]))
+                ucisize = corpus.getucisize()
+                ucisize = [`val` for val in ucisize]
+                uciet = [[val.split('_')[1] for val in uci.etoiles[1:]] for uci in corpus.ucis]
+                #for line in uciet :
+                #    print '\t'.join(line)
+                #res = zip(uciet, ucisize)
+                res = [uciet[i] + [ucisize[i]] for i, val in enumerate(uciet)]
+                print res[0:10]
+                with open('ucisize.csv', 'w') as f :
+                    f.write('\n'.join(['\t'.join(val) for val in res]))
                 #    self.content = f.read()
                 #self.content = self.content.replace('\r','')
                 if options.type_analyse == 'alceste' :
@@ -161,10 +173,12 @@ class CmdLine :
                     self.Text = Stat(self, corpus, parametres = {'type':'stat'})
                 elif options.type_analyse == 'spec' :
                     self.Text = Lexico(self, corpus, config = {'type' : 'spec'})
+                elif options.type_analyse == 'simitxt' :
+                    self.Text = SimiTxt(self, corpus, parametres = parametres)
             #print self.Text.corpus.hours, 'h', self.Text.corpus.minutes,'min', self.Text.corpus.seconds, 's'
 #            self.Text.corpus.make_colored_corpus('colored.html')
 
 if __name__ == '__main__':
     __name__ = 'Main'
-    CmdLine()
+    CmdLine(AppliPath = AppliPath)