convert DSL to Python3 (just ran 2to3)
authorRalf Jung <post@ralfj.de>
Sat, 7 Sep 2013 10:12:11 +0000 (12:12 +0200)
committerRalf Jung <post@ralfj.de>
Sat, 7 Sep 2013 10:19:09 +0000 (12:19 +0200)
dsl.py
gui.py
zenity_dialogue.py

diff --git a/dsl.py b/dsl.py
index b4f77bf413391f2bf4b7e01d835c80b76b695299..9dd2223c42cece516f5c5f14b062842261837d62 100755 (executable)
--- a/dsl.py
+++ b/dsl.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
 # DSL - easy Display Setup for Laptops
 # Copyright (C) 2012 Ralf Jung <post@ralfj.de>
 #
@@ -118,7 +118,7 @@ def getXrandrInformation():
                # unknown line
                # not fatal as my xrandr shows strange stuff when a display is enabled, but not connected
                #raise Exception("Unknown line in xrandr output:\n"+line)
-               print "Warning: Unknown xrandr line %s" % line
+               print("Warning: Unknown xrandr line %s" % line)
        return connectors
 
 # convert a (width, height) pair into a string accepted by xrandr as argument for --mode
@@ -171,7 +171,7 @@ def classifyConnectors(allConnectors):
                        if connector == internalConnector:
                                raise Exception("%s is both internal and external, that doesn't make sense." % connector)
        else:
-               externalConnectors = allConnectors.keys()
+               externalConnectors = list(allConnectors.keys())
                externalConnectors.remove(internalConnector)
        if not externalConnectors:
                raise Exception("No external connector found - either your config is wrong, or your machine has only one connector.")
@@ -232,7 +232,7 @@ if __name__ == "__main__":
                call = ["xrandr"]
                for name in connectorArgs:
                        call += ["--output", name] + connectorArgs[name]
-               print "Call that will be made:",call
+               print("Call that will be made:",call)
                subprocess.check_call(call)
        except Exception as e:
                frontend.error(str(e))
diff --git a/gui.py b/gui.py
index a87b82f1d69bec3302e07e950ccb5ca5da56aca4..560cb01aebf6936a0dbd81c74d65b44e5d4b7f76 100644 (file)
--- a/gui.py
+++ b/gui.py
@@ -36,7 +36,7 @@ class QtFrontend:
        def __init__(self):
                from PyQt4 import QtGui
                self.app = QtGui.QApplication(sys.argv)
-               print "Qt loaded"
+               print("Qt loaded")
        
        def error(self, message):
                from PyQt4 import QtGui
@@ -78,7 +78,7 @@ class ZenityFrontend:
 # CLI frontend
 class CLIFrontend:
        def error(self, message):
-               print >> sys.stderr, message
+               print(message, file=sys.stderr)
        
        def setup(self, internalResolutions, externalResolutions):
                raise Exception("Choosing the setup interactively is not supported with the CLI frontend")
@@ -103,7 +103,7 @@ def getFrontend(name = None):
                # frontend not found or not available
                raise Exception("Frontend %s not found or not available" % name)
        # auto-detect
-       for frontend in frontends.values():
+       for frontend in list(frontends.values()):
                if frontend.isAvailable():
                        return frontend() # call constructor
        raise Exception("No frontend is available - this should not happen")
index 60d7827f72527e863e0edeb42526a60bc7745b89..75011f8dc1d408a008347190efc57b325c68cde3 100644 (file)
@@ -20,7 +20,7 @@ from dsl import RelativeScreenPosition, ScreenSetup, res2user, processOutputIt
 def userChoose (title, choices, returns, fallback):
        assert len(choices) == len(returns)
        args = ["zenity", "--list", "--text="+title, "--column="]+choices
-       switch = dict (zip (choices,returns))
+       switch = dict (list(zip (choices,returns)))
        for line in processOutputIt(*args):
                return switch.get(line.strip(), fallback)
        return fallback
@@ -31,8 +31,8 @@ def run (internalResolutions, externalResolutions):
                return None
        intres = internalResolutions[0]
        if relpos != RelativeScreenPosition.EXTERNAL_ONLY:
-               intres = userChoose ("internal display resolution", map(res2user,internalResolutions), internalResolutions, internalResolutions[0])
-       extres = userChoose ("external display resolution", map(res2user,externalResolutions), externalResolutions, externalResolutions[0])
+               intres = userChoose ("internal display resolution", list(map(res2user,internalResolutions)), internalResolutions, internalResolutions[0])
+       extres = userChoose ("external display resolution", list(map(res2user,externalResolutions)), externalResolutions, externalResolutions[0])
        extprim = userChoose ("Which display should be the primary display?", ["internal display", "external display"], [False, True], None)
        if extprim == None:
                return None