Preferences/ProgramsDialog.py

changeset 6083
fc99172cd83e
parent 6068
97a787b53663
child 6288
67ae52179c8b
equal deleted inserted replaced
6082:4c15cb777c1f 6083:fc99172cd83e
346 finished = proc.waitForFinished(10000) 346 finished = proc.waitForFinished(10000)
347 if finished: 347 if finished:
348 output = str(proc.readAllStandardOutput(), 348 output = str(proc.readAllStandardOutput(),
349 Preferences.getSystem("IOEncoding"), 349 Preferences.getSystem("IOEncoding"),
350 'replace') 350 'replace')
351 if versionRe is None: 351 if exeModule and exeModule[0] == "-m" and \
352 versionRe = "^{0}".format( 352 "ImportError:" in output:
353 re.escape(versionStartsWith)) 353 version = self.tr("(module not found)")
354 versionRe = re.compile(versionRe, re.UNICODE)
355 for line in output.splitlines():
356 if versionRe.search(line):
357 try:
358 version = line.split()[versionPosition]
359 if versionCleanup:
360 version = version[
361 versionCleanup[0]:versionCleanup[1]
362 ]
363 break
364 except IndexError:
365 version = self.tr("(unknown)")
366 else: 354 else:
367 version = self.tr("(unknown)") 355 if versionRe is None:
356 versionRe = "^{0}".format(
357 re.escape(versionStartsWith))
358 versionRe = re.compile(versionRe, re.UNICODE)
359 for line in output.splitlines():
360 if versionRe.search(line):
361 try:
362 version = line.split()[versionPosition]
363 if versionCleanup:
364 version = version[
365 versionCleanup[0]:
366 versionCleanup[1]
367 ]
368 break
369 except IndexError:
370 version = self.tr("(unknown)")
371 else:
372 version = self.tr("(unknown)")
368 else: 373 else:
369 version = self.tr("(not executable)") 374 version = self.tr("(not executable)")
370 if exeModule: 375 if exeModule:
371 QTreeWidgetItem(itm, [ 376 QTreeWidgetItem(itm, [
372 "{0} {1}".format(exe, " ".join(exeModule)), 377 "{0} {1}".format(exe, " ".join(exeModule)),

eric ide

mercurial