Sat, 01 Sep 2018 10:39:08 +0200
Re-merged with "default" branch in order to include some last minute fixes in the next release.
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # Copyright (c) 2006 - 2018 Detlev Offenbach <detlev@die-offenbachs.de> # """ Eric6 Configure. This is the main Python script to configure the eric6 IDE from the outside. """ from __future__ import unicode_literals import Toolbox.PyQt4ImportHook # __IGNORE_WARNING__ try: # Only for Py2 import Globals.compatibility_fixes # __IGNORE_WARNING__ except (ImportError): pass import sys import os for arg in sys.argv[:]: if arg.startswith("--config="): import Globals configDir = arg.replace("--config=", "") Globals.setConfigDir(configDir) sys.argv.remove(arg) elif arg.startswith("--settings="): from PyQt5.QtCore import QSettings settingsDir = os.path.expanduser(arg.replace("--settings=", "")) if not os.path.isdir(settingsDir): os.makedirs(settingsDir) QSettings.setPath(QSettings.IniFormat, QSettings.UserScope, settingsDir) sys.argv.remove(arg) from Globals import qVersionTuple if qVersionTuple() < (5, 6, 0): WEBENGINE_AVAILABLE = False else: try: from PyQt5 import QtWebEngineWidgets # __IGNORE_WARNING__ WEBENGINE_AVAILABLE = True except ImportError: WEBENGINE_AVAILABLE = False # make ThirdParty package available as a packages repository sys.path.insert(2, os.path.join(os.path.dirname(__file__), "ThirdParty", "Pygments")) sys.path.insert(2, os.path.join(os.path.dirname(__file__), "ThirdParty", "EditorConfig")) from Globals import AppInfo from Toolbox import Startup def createMainWidget(argv): """ Function to create the main widget. @param argv list of commandline parameters (list of strings) @return reference to the main widget (QWidget) """ from Preferences.ConfigurationDialog import ConfigurationWindow w = ConfigurationWindow(webEngine=WEBENGINE_AVAILABLE) w.show() w.showConfigurationPageByName("empty") return w def main(): """ Main entry point into the application. """ options = [ ("--config=configDir", "use the given directory as the one containing the config files"), ("--settings=settingsDir", "use the given directory to store the settings files"), ] appinfo = AppInfo.makeAppInfo(sys.argv, "Eric6 Configure", "", "Configuration editor for eric6", options) res = Startup.simpleAppStartup(sys.argv, appinfo, createMainWidget) sys.exit(res) if __name__ == '__main__': main()