X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=chemins.py;h=4e50a484fe604d51c3a1a033b72249c3231c75a8;hp=847e5c72aae70bfcebe4e48c559a97be3f16a146;hb=148fe710bf14981c45e865e8b4ddb68333e62f7c;hpb=74255fdad5e1a929fe9b199b0d58fdd185ad3c58 diff --git a/chemins.py b/chemins.py index 847e5c7..4e50a48 100644 --- a/chemins.py +++ b/chemins.py @@ -2,15 +2,25 @@ # -*- coding: utf-8 -*- #Author: Pierre Ratinaud #Copyright (c) 2008 Pierre Ratinaud -#Lisense: GNU/GPL +#License: GNU/GPL import os +import sys import tempfile import logging log = logging.getLogger('iramuteq.chemins') +def normpath_win32(path) : + if not sys.platform == 'win32' : + return path + while '\\\\' in path : + path = path.replace('\\\\', '\\') + if sys.platform == 'win32' and path.startswith('\\') and not path.startswith('\\\\') : + path = '\\' + path + return path + class PathOut : def __init__(self, filename = None, analyse_type = '', dirout = None) : if filename is not None : @@ -21,9 +31,9 @@ class PathOut : self.analyse = analyse_type #self.dirout = self.mkdirout(dirout) if dirout is not None: - self.dirout = dirout + self.dirout = os.path.abspath(dirout) elif filename is not None and dirout is None: - self.dirout = self.directory + self.dirout = os.path.abspath(self.directory) self.d = {} def mkdirout(self) : @@ -35,6 +45,14 @@ class PathOut : tdirout = dirout + `nb` self.name = os.path.splitext(tdirout)[1] return tdirout + + def makenew(self, filename, ext): + nb = 1 + newfile = '_'.join([os.path.join(self.dirout, filename), '%i' % nb]) + '.' + ext + while os.path.exists(newfile) : + nb += 1 + newfile = '_'.join([os.path.join(self.dirout, filename), '%i' % nb]) + '.' + ext + return newfile def createdir(self, tdirout) : if not os.path.exists(tdirout) : @@ -48,9 +66,13 @@ class PathOut : self.temp = tempfile.mkstemp(prefix='iramuteq')[1].replace('\\', '\\\\') return self.temp elif key not in self.d : - return os.path.join(self.dirout, key).replace('\\', '\\\\') + f = os.path.join(self.dirout, key).replace('\\', '\\\\') + return normpath_win32(f) + #return os.path.join(self.dirout, key).replace('\\', '\\\\') else : - return os.path.join(self.dirout, self.d[key]).replace('\\', '\\\\') + f = os.path.join(self.dirout, self.d[key]).replace('\\', '\\\\') + return normpath_win32(f) + #return os.path.join(self.dirout, self.d[key]).replace('\\', '\\\\') def getF(self, key) : return self.__getitem__(key).replace('\\', '/') @@ -62,6 +84,23 @@ def ffr(filename): def FFF(filename): return filename.replace('\\', '/') +RscriptsPath = { + 'Rfunct': 'Rfunct.R', + 'chdfunct': 'chdfunct.R', + 'Rgraph': 'Rgraph.R', + 'plotafcm': 'plotafcm.R', + 'afc_graph' : 'afc_graph.R', + #'CHD': 'CHDPOND.R', + 'CHD': 'CHD.R', + #'CHD' : 'NCHD.R', + 'chdtxt': 'chdtxt.R', + 'chdquest': 'chdquest.R', + 'pamtxt' : 'pamtxt.R', + 'anacor' : 'anacor.R', + #'anacor' : 'Nanacor.R', + 'simi' : 'simi.R', + } + def ConstructRscriptsPath(AppliPath): RScriptsPath = os.path.join(AppliPath, 'Rscripts') #print('@@@@@@@@@@@PONDERATION CHDPOND.R@@@@@@@@@@@@@@@@') @@ -112,7 +151,7 @@ def ConstructConfigPath(AppliPath, user=True): else : ConfigPath = AppliPath DictConfigPath = { - 'alceste': os.path.join(ConfigPath, 'alceste.cfg'), + 'reinert': os.path.join(ConfigPath, 'reinert.cfg'), 'key': os.path.join(ConfigPath, 'key.cfg'), 'path': os.path.join(ConfigPath, 'path.cfg'), 'preferences' : os.path.join(ConfigPath, 'iramuteq.cfg'), @@ -120,6 +159,7 @@ def ConstructConfigPath(AppliPath, user=True): 'corpus' : os.path.join(ConfigPath, 'corpus.cfg'), 'stat' : os.path.join(ConfigPath, 'stat.cfg'), 'simitxt' : os.path.join(ConfigPath, 'simitxt.cfg'), + 'matrix' : os.path.join(ConfigPath, 'matrix.cfg'), } return DictConfigPath @@ -127,6 +167,7 @@ def ConstructGlobalPath(AppliPath): ConfigPath = os.path.join(AppliPath, 'configuration') DictConfigPath = { 'global': os.path.join(ConfigPath, 'global.cfg'), + 'preferences': os.path.join(ConfigPath, 'iramuteq.cfg'), } return DictConfigPath @@ -149,6 +190,8 @@ def ConstructDicoPath(AppliPath): 'greek_exp' : os.path.join(BasePath, 'expression_gr.txt'), 'spanish' : os.path.join(BasePath, 'lexique_sp.txt'), 'spanish_exp' : os.path.join(BasePath, 'expression_sp.txt'), + 'galician' : os.path.join(BasePath, 'lexique_gl.txt'), + 'galician_exp' : os.path.join(BasePath, 'expression_gl.txt'), } return DictPath