[orca] Python 3 migration - filter, map, and dict
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Python 3 migration - filter, map, and dict
- Date: Tue, 1 May 2012 04:59:33 +0000 (UTC)
commit 25476fc7c05a9b2692915053120536d57ed18deb
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Tue May 1 01:00:18 2012 -0400
Python 3 migration - filter, map, and dict
src/orca/acss.py | 4 +-
src/orca/app_prefs.py | 2 +-
src/orca/backends/json_backend.py | 6 ++--
src/orca/debug.py | 8 +++---
src/orca/event_manager.py | 14 +++++-----
src/orca/formatting.py | 2 +-
src/orca/generator.py | 13 +++-------
src/orca/input_event.py | 2 +-
src/orca/keybindings.py | 4 +-
src/orca/label_inference.py | 20 ++++++++--------
src/orca/liveregions.py | 10 ++++----
src/orca/orca.py | 8 +++---
src/orca/orca_gui_prefs.py | 8 +++---
src/orca/script.py | 4 +-
src/orca/script_manager.py | 16 ++++++------
src/orca/script_utilities.py | 24 +++++++++----------
src/orca/scripts/apps/soffice/script_utilities.py | 2 +-
src/orca/scripts/default.py | 16 ++++++------
src/orca/scripts/toolkits/Gecko/bookmarks.py | 6 ++--
.../scripts/toolkits/Gecko/braille_generator.py | 2 +-
src/orca/scripts/toolkits/Gecko/script.py | 4 +-
.../scripts/toolkits/Gecko/speech_generator.py | 2 +-
src/orca/scripts/toolkits/WebKitGtk/script.py | 6 ++--
.../scripts/toolkits/WebKitGtk/script_utilities.py | 4 +-
src/orca/settings_manager.py | 18 +++++++-------
src/orca/speech.py | 2 +-
src/orca/speechdispatcherfactory.py | 4 +-
src/orca/structural_navigation.py | 4 +-
src/orca/text_attribute_names.py | 2 +-
29 files changed, 105 insertions(+), 112 deletions(-)
---
diff --git a/src/orca/acss.py b/src/orca/acss.py
index 4f27731..fafd7ba 100644
--- a/src/orca/acss.py
+++ b/src/orca/acss.py
@@ -73,7 +73,7 @@ class ACSS(dict):
#
if k == ACSS.FAMILY:
self[k] = {}
- for j in props[k].keys():
+ for j in list(props[k].keys()):
self[k][j] = props[k][j]
else:
self[k] = props[k]
@@ -94,7 +94,7 @@ class ACSS(dict):
def name(self):
_name = 'acss-'
- names = self.keys()
+ names = list(self.keys())
if names:
names.sort()
for k in names:
diff --git a/src/orca/app_prefs.py b/src/orca/app_prefs.py
index 7c7c328..71aa318 100644
--- a/src/orca/app_prefs.py
+++ b/src/orca/app_prefs.py
@@ -313,7 +313,7 @@ class OrcaPrefs:
# settings manager.
voiceDict = voices[voice]
newDict = {}
- for key, value in voiceDict.items():
+ for key, value in list(voiceDict.items()):
newDict[str(key)] = value
voicesStr += "'%s' : orca.acss.ACSS(" % voice
voicesStr += pprint.pformat(newDict) + "),\n"
diff --git a/src/orca/backends/json_backend.py b/src/orca/backends/json_backend.py
index b792623..7d7bd3f 100644
--- a/src/orca/backends/json_backend.py
+++ b/src/orca/backends/json_backend.py
@@ -99,9 +99,9 @@ class Backend:
self._getSettings()
generalSettings = self.general.copy()
profileSettings = self.profiles[profile].copy()
- for key, value in profileSettings.items():
+ for key, value in list(profileSettings.items()):
if key == 'voices':
- for voiceType, voiceDef in value.items():
+ for voiceType, voiceDef in list(value.items()):
value[voiceType] = acss.ACSS(voiceDef)
if key not in settings.excludeKeys:
generalSettings[key] = value
@@ -162,7 +162,7 @@ class Backend:
self._getSettings()
profiles = []
- for profileName in self.profiles.keys():
+ for profileName in list(self.profiles.keys()):
profileDict = self.profiles[profileName].copy()
profiles.append(profileDict.get('profile'))
diff --git a/src/orca/debug.py b/src/orca/debug.py
index 7c44b59..49eaa00 100644
--- a/src/orca/debug.py
+++ b/src/orca/debug.py
@@ -371,7 +371,7 @@ def _shouldTraceIt():
return False
if TRACE_EVENTS and \
- not filter(lambda x: x, map(objEvent.type.startswith, TRACE_EVENTS)):
+ not [x for x in map(objEvent.type.startswith, TRACE_EVENTS) if x]:
return False
return True
@@ -407,12 +407,12 @@ def traceit(frame, event, arg):
if event == 'call':
argvals = inspect.getargvalues(frame)
- keys = filter(lambda x: x != 'self', argvals[0])
+ keys = [x for x in argvals[0] if x != 'self']
try:
- values = map(argvals[3].get, keys)
+ values = list(map(argvals[3].get, keys))
except TypeError:
if len(keys) == 1 and isinstance(keys[0], list):
- values = map(argvals[3].get, keys[0])
+ values = list(map(argvals[3].get, keys[0]))
else:
return traceit
for i, key in enumerate(keys):
diff --git a/src/orca/event_manager.py b/src/orca/event_manager.py
index 01ba50d..7ad7b7b 100644
--- a/src/orca/event_manager.py
+++ b/src/orca/event_manager.py
@@ -67,7 +67,7 @@ class EventManager:
# Tell BrlTTY which commands we care about.
#
- braille.setupKeyRanges(orca_state.activeScript.brailleBindings.keys())
+ braille.setupKeyRanges(list(orca_state.activeScript.brailleBindings.keys()))
self._registerListener("window:activate")
self._registerListener("window:deactivate")
@@ -79,7 +79,7 @@ class EventManager:
"""Called when this event manager is deactivated."""
debug.println(debug.LEVEL_FINEST, 'INFO: Dectivating event manager')
- for eventType in self._scriptListenerCounts.keys():
+ for eventType in list(self._scriptListenerCounts.keys()):
self.registry.deregisterEventListener(self._enqueue, eventType)
self._scriptListenerCounts = {}
debug.println(debug.LEVEL_FINEST, 'INFO: Event manager deactivated')
@@ -93,7 +93,7 @@ class EventManager:
ignoredList = ['object:state-changed:defunct',
'object:property-change:accessible-parent']
ignoredList.extend(settings.ignoredEventsList)
- if filter(event.type.startswith, ignoredList):
+ if list(filter(event.type.startswith, ignoredList)):
return True
# This should ultimately be changed as there are valid reasons
@@ -322,7 +322,7 @@ class EventManager:
'INFO: Event manager registering listeners for: %s' \
% script)
- for eventType in script.listeners.keys():
+ for eventType in list(script.listeners.keys()):
self._registerListener(eventType)
def deregisterScriptListeners(self, script):
@@ -337,19 +337,19 @@ class EventManager:
'INFO: Event manager deregistering listeners for: %s' \
% script)
- for eventType in script.listeners.keys():
+ for eventType in list(script.listeners.keys()):
self._deregisterListener(eventType)
def registerModuleListeners(self, listeners):
"""Register the listeners on behalf of the caller."""
- for eventType, function in listeners.items():
+ for eventType, function in list(listeners.items()):
self.registry.registerEventListener(function, eventType)
def deregisterModuleListeners(self, listeners):
"""Deegister the listeners on behalf of the caller."""
- for eventType, function in listeners.items():
+ for eventType, function in list(listeners.items()):
self.registry.deregisterEventListener(function, eventType)
def registerKeystrokeListener(self, function, mask=None, kind=None):
diff --git a/src/orca/formatting.py b/src/orca/formatting.py
index 639cf29..ce7d650 100644
--- a/src/orca/formatting.py
+++ b/src/orca/formatting.py
@@ -616,7 +616,7 @@ class Formatting(dict):
self.update(copy.deepcopy(formatting))
def update(self, newDict):
- for key, val in newDict.iteritems():
+ for key, val in newDict.items():
if key in self:
if isinstance(self[key], dict) and isinstance(val, dict):
self[key].update(val)
diff --git a/src/orca/generator.py b/src/orca/generator.py
index bb2641e..ccdcd99 100644
--- a/src/orca/generator.py
+++ b/src/orca/generator.py
@@ -72,10 +72,7 @@ class Generator:
self._script = script
self._methodsDict = {}
for method in \
- filter(lambda z: isinstance(z, collections.Callable),
- map(lambda y: getattr(self, y).__get__(self, self.__class__),
- filter(lambda x: x.startswith(METHOD_PREFIX),
- dir(self)))):
+ [z for z in [getattr(self, y).__get__(self, self.__class__) for y in [x for x in dir(self) if x.startswith(METHOD_PREFIX)]] if isinstance(z, collections.Callable)]:
name = method.__name__[len(METHOD_PREFIX):]
name = name[0].lower() + name[1:]
self._methodsDict[name] = method
@@ -98,7 +95,7 @@ class Generator:
# for the results of all the legal method names.
#
globalsDict = {}
- for key in self._methodsDict.keys():
+ for key in list(self._methodsDict.keys()):
globalsDict[key] = []
self._addGlobals(globalsDict)
@@ -331,10 +328,8 @@ class Generator:
the assumption being that the user was able to see the text prior
to giving the widget focus.
"""
- result = filter(lambda x:
- x.startswith('placeholder-text:'),
- obj.getAttributes())
- return map(lambda x: x.replace('placeholder-text:', ''), result)
+ result = [x for x in obj.getAttributes() if x.startswith('placeholder-text:')]
+ return [x.replace('placeholder-text:', '') for x in result]
def _generateLabelAndName(self, obj, **args):
"""Returns the label and the name as an array of strings for speech
diff --git a/src/orca/input_event.py b/src/orca/input_event.py
index 8fdfb19..a4a92e0 100644
--- a/src/orca/input_event.py
+++ b/src/orca/input_event.py
@@ -269,7 +269,7 @@ class KeyboardEvent(InputEvent):
orcaMods = settings.orcaModifierKeys
try:
- orcaMods = map(lambda x: x.encode('UTF-8'), orcaMods)
+ orcaMods = [x.encode('UTF-8') for x in orcaMods]
except (UnicodeDecodeError, UnicodeEncodeError):
pass
diff --git a/src/orca/keybindings.py b/src/orca/keybindings.py
index 49d09ac..de2deff 100644
--- a/src/orca/keybindings.py
+++ b/src/orca/keybindings.py
@@ -329,7 +329,7 @@ class KeyBindings:
filtered out (default: False)
"""
- bound = filter(lambda kb: kb.keysymstring, self.keyBindings)
+ bound = [kb for kb in self.keyBindings if kb.keysymstring]
if uniqueOnly:
handlers = [kb.handler.description for kb in bound]
bound = [bound[i] for i in map(handlers.index, set(handlers))]
@@ -339,7 +339,7 @@ class KeyBindings:
def getBindingsForHandler(self, handler):
"""Returns the KeyBinding instances associated with handler."""
- return filter(lambda kb: kb.handler == handler, self.keyBindings)
+ return [kb for kb in self.keyBindings if kb.handler == handler]
def getInputHandler(self, keyboardEvent):
"""Returns the input handler of the key binding that matches the
diff --git a/src/orca/label_inference.py b/src/orca/label_inference.py
index 4d65e56..4d61b7d 100644
--- a/src/orca/label_inference.py
+++ b/src/orca/label_inference.py
@@ -137,7 +137,7 @@ class LabelInference:
debug.println(debug.LEVEL_FINE, 'Dead Accessible in %s' % obj)
return False
- children = filter(lambda x: x.getRole() != pyatspi.ROLE_LINK, children)
+ children = [x for x in children if x.getRole() != pyatspi.ROLE_LINK]
if len(children) > 1:
return False
@@ -223,11 +223,11 @@ class LabelInference:
contents = self._script.utilities.getObjectsFromEOCs(obj)
objects = [content[0] for content in contents]
- if filter(self._isWidget, objects):
+ if list(filter(self._isWidget, objects)):
return ''
strings = [content[3] or content[0].name for content in contents]
- strings = map(lambda x: x.strip(), strings)
+ strings = [x.strip() for x in strings]
return ' '.join(strings)
def _getLineContents(self, obj):
@@ -277,14 +277,14 @@ class LabelInference:
extents = self._getExtents(obj)
contents = self._getLineContents(obj)
- content = filter(lambda o: o[0] == obj, contents)
+ content = [o for o in contents if o[0] == obj]
try:
index = contents.index(content[0])
except IndexError:
index = len(contents)
onLeft = contents[max(0, index-1):index]
- onLeft = filter(lambda o: o[0] and not self._isWidget(o[0]), onLeft)
+ onLeft = [o for o in onLeft if o[0] and not self._isWidget(o[0])]
if not onLeft:
return None
@@ -314,14 +314,14 @@ class LabelInference:
extents = self._getExtents(obj)
contents = self._getLineContents(obj)
- content = filter(lambda o: o[0] == obj, contents)
+ content = [o for o in contents if o[0] == obj]
try:
index = contents.index(content[0])
except IndexError:
index = len(contents)
onRight = contents[min(len(contents), index+1):]
- onRight = filter(lambda o: o[0] and not self._isWidget(o[0]), onRight)
+ onRight = [o for o in onRight if o[0] and not self._isWidget(o[0])]
if not onRight:
return None
@@ -486,14 +486,14 @@ class LabelInference:
# as a functional label. Therefore, see if this table looks like a grid
# of widgets with the functional labels in the first row.
firstRow = [table.getAccessibleAt(0, i) for i in range(table.nColumns)]
- if not firstRow or filter(self._isWidget, firstRow):
+ if not firstRow or list(filter(self._isWidget, firstRow)):
return None
cells = [table.getAccessibleAt(i, col) for i in range(1, table.nRows)]
- if filter(lambda x: x == None, cells):
+ if [x for x in cells if x == None]:
debug.println(debug.LEVEL_FINE, "INFER: Potentially broken table!")
return None
- if filter(lambda x: x[0] and x[0].getRole() != obj.getRole(), cells):
+ if [x for x in cells if x[0] and x[0].getRole() != obj.getRole()]:
return None
label = self._createLabelFromContents(firstRow[col])
diff --git a/src/orca/liveregions.py b/src/orca/liveregions.py
index 234266d..025b424 100644
--- a/src/orca/liveregions.py
+++ b/src/orca/liveregions.py
@@ -50,13 +50,13 @@ class PriorityQueue:
time """
currenttime = time.time()
myfilter = lambda item: item[1] + MSG_KEEPALIVE_TIME > currenttime
- self.queue = filter(myfilter, self.queue)
+ self.queue = list(filter(myfilter, self.queue))
def purgeByPriority(self, priority):
""" Purge items from the queue that have a lower than or equal priority
than the given argument """
myfilter = lambda item: item[0] > priority
- self.queue = filter(myfilter, self.queue)
+ self.queue = list(filter(myfilter, self.queue))
def clumpContents(self):
""" Combines messages with the same 'label' by appending newer
@@ -142,7 +142,7 @@ class LiveRegionManager:
# objects that are not registered for this page
newpoliteness = {}
currenturi = self._script.bookmarks.getURIKey()
- for key, value in self._politenessOverrides.iteritems():
+ for key, value in self._politenessOverrides.items():
if key[0] == currenturi or value != LIVE_NONE:
newpoliteness[key] = value
self._politenessOverrides = newpoliteness
@@ -320,7 +320,7 @@ class LiveRegionManager:
self._restoreOverrides = copy.copy(self._politenessOverrides)
# Set all politeness overrides to LIVE_OFF.
- for override in self._politenessOverrides.keys():
+ for override in list(self._politenessOverrides.keys()):
self._politenessOverrides[override] = LIVE_OFF
# look through all the objects on the page and set/add to
@@ -336,7 +336,7 @@ class LiveRegionManager:
# The user wants to restore politeness levels
else:
- for key, value in self._restoreOverrides.iteritems():
+ for key, value in self._restoreOverrides.items():
self._politenessOverrides[key] = value
# Translators: This lets the user know that all live regions
# have been restored to their original politeness level.
diff --git a/src/orca/orca.py b/src/orca/orca.py
index 1508a17..28a2dc8 100644
--- a/src/orca/orca.py
+++ b/src/orca/orca.py
@@ -140,7 +140,7 @@ class Options(argparse.Namespace):
self._printMessageAndExit(parser.print_help)
if self.listApps and self.desktopRunning:
- apps = filter(lambda x: x != None, pyatspi.Registry.getDesktop(0))
+ apps = [x for x in pyatspi.Registry.getDesktop(0) if x != None]
names = [app.name for app in apps]
message = "\n".join(names)
if message:
@@ -197,11 +197,11 @@ class Options(argparse.Namespace):
or disabled), stores them in the self.settings dictionary and then
returns that dictionary."""
- toEnable = map(self.canEnable.get, self.enable)
+ toEnable = list(map(self.canEnable.get, self.enable))
for item in toEnable:
self.settings[item] = True
- toDisable = map(self.canEnable.get, self.disable)
+ toDisable = list(map(self.canEnable.get, self.disable))
for item in toDisable:
self.settings[item] = False
@@ -1406,7 +1406,7 @@ def multipleOrcas():
pid = os.getpid()
ppid = os.getppid()
- return len(filter(lambda p: p not in [pid, ppid], orcas)) > 0
+ return len([p for p in orcas if p not in [pid, ppid]]) > 0
def cleanupGarbage():
"""Cleans up garbage on the heap."""
diff --git a/src/orca/orca_gui_prefs.py b/src/orca/orca_gui_prefs.py
index c6bdc52..0f53d0f 100644
--- a/src/orca/orca_gui_prefs.py
+++ b/src/orca/orca_gui_prefs.py
@@ -719,7 +719,7 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
serverInfo = speech.getInfo()
try:
- serverInfo = map(lambda x: x.encode('UTF-8'), serverInfo)
+ serverInfo = [x.encode('UTF-8') for x in serverInfo]
except (UnicodeDecodeError, UnicodeEncodeError):
pass
@@ -2114,7 +2114,7 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
#
iterBB = self._createNode(_("Braille Bindings"))
self.bbindings = defScript.getBrailleBindings()
- for com, inputEvHand in self.bbindings.iteritems():
+ for com, inputEvHand in self.bbindings.items():
handl = defScript.getInputEventHandlerKey(inputEvHand)
self._insertRowBraille(handl, com, inputEvHand, iterBB)
@@ -2806,7 +2806,7 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
orcaMods = settings.orcaModifierKeys
try:
- orcaMods = map(lambda x: x.encode('UTF-8'), orcaMods)
+ orcaMods = [x.encode('UTF-8') for x in orcaMods]
except (UnicodeDecodeError, UnicodeEncodeError):
pass
if eventString in orcaMods:
@@ -2877,7 +2877,7 @@ class OrcaSetupGUI(orca_gtkbuilder.GtkBuilderWrapper):
and x.modifiers == modifiers \
and x.click_count == clickCount \
and x.handler
- matches = filter(match, self.kbindings.keyBindings)
+ matches = list(filter(match, self.kbindings.keyBindings))
if matches:
description = matches[0].handler.description
diff --git a/src/orca/script.py b/src/orca/script.py
index 8aa03b7..95d7ecf 100644
--- a/src/orca/script.py
+++ b/src/orca/script.py
@@ -192,7 +192,7 @@ class Script:
braille.py) that match the given inputEventHandler passed.
"""
return [command
- for command, handler in self.brailleBindings.iteritems()
+ for command, handler in self.brailleBindings.items()
if inputEventHandler == handler]
def getFormatting(self):
@@ -399,7 +399,7 @@ class Script:
# to the order in which they were added. So...we need to do something
# different here. Logged as bugzilla bug 319781.]]]
#
- for key in self.listeners.keys():
+ for key in list(self.listeners.keys()):
if event.type.startswith(key):
self.listeners[key](event)
diff --git a/src/orca/script_manager.py b/src/orca/script_manager.py
index 047874c..99153f7 100644
--- a/src/orca/script_manager.py
+++ b/src/orca/script_manager.py
@@ -106,14 +106,14 @@ class ScriptManager:
# Many python apps have an accessible name which ends in '.py'.
# Sometimes OOo has 'soffice.bin' as its name.
name = app.name.split('.')[0]
- altNames = self._appNames.keys()
+ altNames = list(self._appNames.keys())
- names = filter(lambda n: n.lower() == name.lower(), altNames)
+ names = [n for n in altNames if n.lower() == name.lower()]
if names:
name = self._appNames.get(names[0])
else:
for nameList in (self._appModules, self._toolkitModules):
- names = filter(lambda n: n.lower() == name.lower(), nameList)
+ names = [n for n in nameList if n.lower() == name.lower()]
if names:
name = names[0]
break
@@ -145,8 +145,8 @@ class ScriptManager:
if not (app and name):
return None
- altNames = self._toolkitNames.keys()
- names = filter(lambda n: n.lower() == name.lower(), altNames)
+ altNames = list(self._toolkitNames.keys())
+ names = [n for n in altNames if n.lower() == name.lower()]
if names:
newName = self._toolkitNames.get(names[0])
debug.println(debug.LEVEL_FINEST,
@@ -295,8 +295,8 @@ class ScriptManager:
debug.printException(debug.LEVEL_FINEST)
return
- appList = self.appScripts.keys()
- appList = filter(lambda a: a!= None and a not in desktop, appList)
+ appList = list(self.appScripts.keys())
+ appList = [a for a in appList if a!= None and a not in desktop]
for app in appList:
appScript = self.appScripts.pop(app)
_eventManager.deregisterScriptListeners(appScript)
@@ -307,7 +307,7 @@ class ScriptManager:
except KeyError:
pass
else:
- for toolkitScript in toolkitScripts.values():
+ for toolkitScript in list(toolkitScripts.values()):
_eventManager.deregisterScriptListeners(toolkitScript)
del toolkitScript
diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
index 21e57ed..784ea40 100644
--- a/src/orca/script_utilities.py
+++ b/src/orca/script_utilities.py
@@ -439,7 +439,7 @@ class Utilities:
"""
allObjs = Utilities.allDescendants(root, onlyShowing)
- return filter(lambda o: o.getRole() == role, allObjs)
+ return [o for o in allObjs if o.getRole() == role]
def displayedLabel(self, obj):
"""If there is an object labelling the given object, return the
@@ -936,8 +936,7 @@ class Utilities:
debug.println(debug.LEVEL_FINEST,
"knownApplications...")
- apps = filter(lambda x: x is not None,
- pyatspi.Registry.getDesktop(0))
+ apps = [x for x in pyatspi.Registry.getDesktop(0) if x is not None]
debug.println(debug.LEVEL_FINEST,
"...knownApplications")
@@ -1532,16 +1531,15 @@ class Utilities:
"""
allLabels = self.descendantsWithRole(root, pyatspi.ROLE_LABEL)
- labels = filter(lambda x: not x.getRelationSet(), allLabels)
- labels = filter(lambda x: x.parent and x.name != x.parent.name, labels)
- labels = filter(
- lambda x: x.getState().contains(pyatspi.STATE_SHOWING), labels)
+ labels = [x for x in allLabels if not x.getRelationSet()]
+ labels = [x for x in labels if x.parent and x.name != x.parent.name]
+ labels = [x for x in labels if x.getState().contains(pyatspi.STATE_SHOWING)]
# Eliminate duplicates
d = {}
for label in labels:
d[label.name] = label
- labels = d.values()
+ labels = list(d.values())
return sorted(labels, self.spatialComparison)
@@ -2662,7 +2660,7 @@ class Utilities:
superscripted = set(re.findall(self.SUPERSCRIPTS_RE, uString))
for number in superscripted:
- new = map(lambda d: str(self.SUPERSCRIPT_DIGITS.index(d)), number)
+ new = [str(self.SUPERSCRIPT_DIGITS.index(d)) for d in number]
# Translators: This string is part of the presentation of an
# item that includes one or several consequtive superscripted
# characters, e.g. 'X' followed by 'superscript 2' followed by
@@ -2676,7 +2674,7 @@ class Utilities:
uString = re.sub(number, newString, uString)
for number in subscripted:
- new = map(lambda d: str(self.SUBSCRIPT_DIGITS.index(d)), number)
+ new = [str(self.SUBSCRIPT_DIGITS.index(d)) for d in number]
# Translators: This string is part of the presentation of an
# item that includes one or several consequtive subscripted
# characters, e.g. 'X' followed by 'subscript 2' followed by
@@ -2936,9 +2934,9 @@ class Utilities:
try:
items = [s.strip() for s in string.split(";")]
- items = filter(lambda item: len(item.split(':')) == 2, items)
- keys = map(lambda item: item.split(':')[0].strip(), items)
- dictionary = dict(map(lambda item: item.split(':'), items))
+ items = [item for item in items if len(item.split(':')) == 2]
+ keys = [item.split(':')[0].strip() for item in items]
+ dictionary = dict([item.split(':') for item in items])
except:
return [], {}
diff --git a/src/orca/scripts/apps/soffice/script_utilities.py b/src/orca/scripts/apps/soffice/script_utilities.py
index 15f293a..7c65f6e 100644
--- a/src/orca/scripts/apps/soffice/script_utilities.py
+++ b/src/orca/scripts/apps/soffice/script_utilities.py
@@ -224,7 +224,7 @@ class Utilities(script_utilities.Utilities):
#
docFrames = self.descendantsWithRole(
self.topLevelObject(obj), pyatspi.ROLE_DOCUMENT_FRAME)
- docFrame = filter(lambda o: ":" in o.name and "/" in o.name, docFrames)
+ docFrame = [o for o in docFrames if ":" in o.name and "/" in o.name]
if docFrame:
return docFrame[0]
diff --git a/src/orca/scripts/default.py b/src/orca/scripts/default.py
index f1688ae..d9b2a5b 100644
--- a/src/orca/scripts/default.py
+++ b/src/orca/scripts/default.py
@@ -1043,7 +1043,7 @@ class Script(script.Script):
passed as argument
"""
- for keyName, handler in self.inputEventHandlers.iteritems():
+ for keyName, handler in self.inputEventHandlers.items():
if handler == inputEventHandler:
return keyName
@@ -1293,7 +1293,7 @@ class Script(script.Script):
if oldParent is not None and oldParent == newParent and \
newParent.getRole() in [pyatspi.ROLE_TABLE,
pyatspi.ROLE_TREE_TABLE]:
- for key in self.pointOfReference.keys():
+ for key in list(self.pointOfReference.keys()):
if key not in ('lastRow', 'lastColumn'):
del self.pointOfReference[key]
else:
@@ -1470,7 +1470,7 @@ class Script(script.Script):
def activate(self):
"""Called when this script is activated."""
- braille.setupKeyRanges(self.brailleBindings.keys())
+ braille.setupKeyRanges(list(self.brailleBindings.keys()))
speech.updatePunctuationLevel()
def updateBraille(self, obj, extraRegion=None):
@@ -2017,7 +2017,7 @@ class Script(script.Script):
# attributes for this character returned by getAttributes().
#
if allAttributes:
- for key in charDict.keys():
+ for key in list(charDict.keys()):
allAttributes[key] = charDict[key]
else:
allAttributes = charDict
@@ -4392,7 +4392,7 @@ class Script(script.Script):
#
defunctBars = 0
mostRecentUpdate = [obj, 0]
- for key, value in self.lastProgressBarTime.items():
+ for key, value in list(self.lastProgressBarTime.items()):
if value > mostRecentUpdate[1]:
mostRecentUpdate = [key, value]
try:
@@ -4440,7 +4440,7 @@ class Script(script.Script):
#
if len(self.lastProgressBarTime) > 1:
index = 0
- for key in self.lastProgressBarTime.keys():
+ for key in list(self.lastProgressBarTime.keys()):
if key == obj and key != mostRecentUpdate[0]:
# Translators: this is an index value
# so that we can tell which progress bar
@@ -4786,7 +4786,7 @@ class Script(script.Script):
otherwise.
"""
- for key, value in self.attributeNamesDict.items():
+ for key, value in list(self.attributeNamesDict.items()):
if value == attribName:
return key
@@ -5590,7 +5590,7 @@ class Script(script.Script):
if isinstance(message[0], list):
message = message[0]
if isinstance(message, list):
- message = filter(lambda i: isinstance(i, str), message)
+ message = [i for i in message if isinstance(i, str)]
message = " ".join(message)
if _settingsManager.getSetting('flashIsPersistent'):
diff --git a/src/orca/scripts/toolkits/Gecko/bookmarks.py b/src/orca/scripts/toolkits/Gecko/bookmarks.py
index 8c33639..182486e 100644
--- a/src/orca/scripts/toolkits/Gecko/bookmarks.py
+++ b/src/orca/scripts/toolkits/Gecko/bookmarks.py
@@ -144,7 +144,7 @@ class GeckoBookmarks(bookmarks.Bookmarks):
saved = {}
# save obj as a path instead of an accessible
- for index, bookmark in self._bookmarks.iteritems():
+ for index, bookmark in self._bookmarks.items():
saved[index] = bookmark[0], bookmark[1]
try:
@@ -170,7 +170,7 @@ class GeckoBookmarks(bookmarks.Bookmarks):
# offset by the difficulty in finding the next bookmark. We will
# need to sort our keys to determine the next bookmark on a page by
# page basis.
- bm_keys = self._bookmarks.keys()
+ bm_keys = list(self._bookmarks.keys())
current_uri = self.getURIKey()
# mine out the hardware keys for this page and sort them
@@ -203,7 +203,7 @@ class GeckoBookmarks(bookmarks.Bookmarks):
def goToPrevBookmark(self, inputEvent):
""" Go to the previous bookmark location. If no bookmark has yet to be
selected, the first bookmark will be used. """
- bm_keys = self._bookmarks.keys()
+ bm_keys = list(self._bookmarks.keys())
current_uri = self.getURIKey()
# mine out the hardware keys for this page and sort them
diff --git a/src/orca/scripts/toolkits/Gecko/braille_generator.py b/src/orca/scripts/toolkits/Gecko/braille_generator.py
index 5fab47f..e7e9003 100644
--- a/src/orca/scripts/toolkits/Gecko/braille_generator.py
+++ b/src/orca/scripts/toolkits/Gecko/braille_generator.py
@@ -227,7 +227,7 @@ class BrailleGenerator(braille_generator.BrailleGenerator):
items = [s.getSelectedChild(i) for i in range(s.nSelectedChildren)]
if not items and obj.childCount:
items.append(obj[0])
- items = map(self._generateName, items)
+ items = list(map(self._generateName, items))
for item in items:
result.extend(item)
diff --git a/src/orca/scripts/toolkits/Gecko/script.py b/src/orca/scripts/toolkits/Gecko/script.py
index e4ed727..14af07f 100644
--- a/src/orca/scripts/toolkits/Gecko/script.py
+++ b/src/orca/scripts/toolkits/Gecko/script.py
@@ -4129,7 +4129,7 @@ class Script(default.Script):
# Maybe we've already made a guess and saved it.
#
- for field, label in self._guessedLabels.items():
+ for field, label in list(self._guessedLabels.items()):
if self.utilities.isSameObject(field, obj):
return label
@@ -5111,7 +5111,7 @@ class Script(default.Script):
and lastExtents != nextExtents \
or nextExtents == (0, 0, 0, 0):
toAdd = self.getObjectsFromEOCs(nextObj, nOffset, boundary)
- toAdd = filter(lambda x: x not in objects, toAdd)
+ toAdd = [x for x in toAdd if x not in objects]
objects.extend(toAdd)
elif (nextObj.getRole() in [pyatspi.ROLE_SECTION,
pyatspi.ROLE_TABLE_CELL] \
diff --git a/src/orca/scripts/toolkits/Gecko/speech_generator.py b/src/orca/scripts/toolkits/Gecko/speech_generator.py
index b73e9ed..db29014 100644
--- a/src/orca/scripts/toolkits/Gecko/speech_generator.py
+++ b/src/orca/scripts/toolkits/Gecko/speech_generator.py
@@ -317,7 +317,7 @@ class SpeechGenerator(speech_generator.SpeechGenerator):
items = [s.getSelectedChild(i) for i in range(s.nSelectedChildren)]
if not items and obj.childCount:
items.append(obj[0])
- items = map(self._generateName, items)
+ items = list(map(self._generateName, items))
for item in items:
result.extend(item)
diff --git a/src/orca/scripts/toolkits/WebKitGtk/script.py b/src/orca/scripts/toolkits/WebKitGtk/script.py
index 62baa33..41d2a49 100644
--- a/src/orca/scripts/toolkits/WebKitGtk/script.py
+++ b/src/orca/scripts/toolkits/WebKitGtk/script.py
@@ -402,7 +402,7 @@ class Script(default.Script):
voice = self.voices[settings.DEFAULT_VOICE]
phrase = self.utilities.adjustForRepeats(phrase)
- links = filter(lambda x: x.getRole() == pyatspi.ROLE_LINK, obj)
+ links = [x for x in obj if x.getRole() == pyatspi.ROLE_LINK]
if links:
phrase = self.utilities.adjustForLinks(obj, phrase, startOffset)
speech.speak(phrase, voice)
@@ -535,7 +535,7 @@ class Script(default.Script):
allTextObjs = utils.findAllDescendants(
document, lambda x: 'Text' in utils.listInterfaces(x))
allTextObjs = allTextObjs[allTextObjs.index(obj):len(allTextObjs)]
- textObjs = filter(lambda x: x.parent not in allTextObjs, allTextObjs)
+ textObjs = [x for x in allTextObjs if x.parent not in allTextObjs]
if not textObjs:
return
@@ -583,7 +583,7 @@ class Script(default.Script):
else:
linkCount = hypertext.getNLinks()
links = [hypertext.getLink(x) for x in range(linkCount)]
- if filter(lambda l: l.startIndex <= offset <= l.endIndex, links):
+ if [l for l in links if l.startIndex <= offset <= l.endIndex]:
return
text.setCaretOffset(offset)
diff --git a/src/orca/scripts/toolkits/WebKitGtk/script_utilities.py b/src/orca/scripts/toolkits/WebKitGtk/script_utilities.py
index dee2779..5dee35f 100644
--- a/src/orca/scripts/toolkits/WebKitGtk/script_utilities.py
+++ b/src/orca/scripts/toolkits/WebKitGtk/script_utilities.py
@@ -152,7 +152,7 @@ class Utilities(script_utilities.Utilities):
pattern = re.compile(self.EMBEDDED_OBJECT_CHARACTER)
offsets = [m.start(0) for m in re.finditer(pattern, string)]
- offsets = filter(lambda x: start <= x < end, offsets)
+ offsets = [x for x in offsets if start <= x < end]
objects = []
try:
@@ -165,6 +165,6 @@ class Utilities(script_utilities.Utilities):
objects.append((objs[i], first, last, ''))
start = last
objects.append((obj, start, end, string[start:end]))
- objects = filter(lambda x: x[1] < x[2], objects)
+ objects = [x for x in objects if x[1] < x[2]]
return objects
diff --git a/src/orca/settings_manager.py b/src/orca/settings_manager.py
index e062686..5e2c6e4 100644
--- a/src/orca/settings_manager.py
+++ b/src/orca/settings_manager.py
@@ -216,12 +216,12 @@ class SettingsManager(object):
return self.customizedSettings
originalSettings = {}
- for key, value in settings.__dict__.items():
+ for key, value in list(settings.__dict__.items()):
originalSettings[key] = value
self._customizationCompleted = self._loadUserCustomizations()
- for key, value in originalSettings.items():
+ for key, value in list(originalSettings.items()):
customValue = settings.__dict__.get(key)
if value != customValue:
self.customizedSettings[key] = customValue
@@ -358,10 +358,10 @@ class SettingsManager(object):
return (general, pronunciations, keybindings)
def _setSettingsRuntime(self, settingsDict):
- for key, value in settingsDict.items():
+ for key, value in list(settingsDict.items()):
setattr(settings, str(key), value)
self._getCustomizedSettings()
- for key, value in self.customizedSettings.items():
+ for key, value in list(self.customizedSettings.items()):
setattr(settings, str(key), value)
self._setPronunciationsRuntime()
@@ -397,7 +397,7 @@ class SettingsManager(object):
as the profile's."""
self.profileGeneral = {}
- for key, value in general.items():
+ for key, value in list(general.items()):
if isinstance(value, unicode):
value = value.encode('UTF-8')
if key in settings.excludeKeys:
@@ -457,7 +457,7 @@ class SettingsManager(object):
def overrideKeyBindings(self, script, scriptKeyBindings):
keybindingsSettings = self.getKeybindings(self.profile)
- for handlerString, bindingTuples in keybindingsSettings.items():
+ for handlerString, bindingTuples in list(keybindingsSettings.items()):
handler = script.inputEventHandlers.get(handlerString)
if not handler:
continue
@@ -496,7 +496,7 @@ class SettingsManager(object):
general = {}
- for key, value in prefs.items():
+ for key, value in list(prefs.items()):
if key not in settings.excludeKeys:
general[key] = value
@@ -553,7 +553,7 @@ class SettingsManager(object):
reload(self._knownAppSettings[name])
appVoices = self.getSetting('voices')
- for voiceType, voiceDef in appVoices.items():
+ for voiceType, voiceDef in list(appVoices.items()):
script.voices[voiceType].update(voiceDef)
keybindings = getattr(module, 'overrideAppKeyBindings', None)
@@ -569,7 +569,7 @@ class SettingsManager(object):
def getVoiceKey(voice):
voicesKeys = getattr(settings, 'voicesKeys')
- for key in voicesKeys.keys():
+ for key in list(voicesKeys.keys()):
if voicesKeys[key] == voice:
return key
return ""
diff --git a/src/orca/speech.py b/src/orca/speech.py
index ec622fa..c39d34b 100644
--- a/src/orca/speech.py
+++ b/src/orca/speech.py
@@ -169,7 +169,7 @@ def _speak(text, acss, interrupt):
logLine = "SPEECH OUTPUT: '" + text + "'"
extraDebug = ""
- if acss in settings.voices.values():
+ if acss in list(settings.voices.values()):
for key in settings.voices:
if acss == settings.voices[key]:
if key != settings.DEFAULT_VOICE:
diff --git a/src/orca/speechdispatcherfactory.py b/src/orca/speechdispatcherfactory.py
index 9ec4fcf..11c072f 100644
--- a/src/orca/speechdispatcherfactory.py
+++ b/src/orca/speechdispatcherfactory.py
@@ -129,7 +129,7 @@ class SpeechServer(speechserver.SpeechServer):
getSpeechServer = staticmethod(getSpeechServer)
def shutdownActiveServers():
- for server in SpeechServer._active_servers.values():
+ for server in list(SpeechServer._active_servers.values()):
server.shutdown()
shutdownActiveServers = staticmethod(shutdownActiveServers)
@@ -373,7 +373,7 @@ class SpeechServer(speechserver.SpeechServer):
if t == speechserver.SayAllContext.COMPLETED:
GObject.idle_add(self._say_all, iterator, orca_callback)
self._speak(context.utterance, acss, callback=callback,
- event_types=self._CALLBACK_TYPE_MAP.keys())
+ event_types=list(self._CALLBACK_TYPE_MAP.keys()))
return False # to indicate, that we don't want to be called again.
def _cancel(self):
diff --git a/src/orca/structural_navigation.py b/src/orca/structural_navigation.py
index 94ad02d..1986966 100644
--- a/src/orca/structural_navigation.py
+++ b/src/orca/structural_navigation.py
@@ -590,7 +590,7 @@ class StructuralNavigation:
#
_("Toggles structural navigation keys."))
- for structuralNavigationObject in self.enabledObjects.values():
+ for structuralNavigationObject in list(self.enabledObjects.values()):
self.inputEventHandlers.update(\
structuralNavigationObject.inputEventHandlers)
self.functions.extend(structuralNavigationObject.functions)
@@ -613,7 +613,7 @@ class StructuralNavigation:
settings.ORCA_MODIFIER_MASK,
self.inputEventHandlers["toggleStructuralNavigationHandler"]))
- for structuralNavigationObject in self.enabledObjects.values():
+ for structuralNavigationObject in list(self.enabledObjects.values()):
bindings = structuralNavigationObject.keyBindings.keyBindings
for keybinding in bindings:
keyBindings.add(keybinding)
diff --git a/src/orca/text_attribute_names.py b/src/orca/text_attribute_names.py
index eefb4fa..3f27435 100644
--- a/src/orca/text_attribute_names.py
+++ b/src/orca/text_attribute_names.py
@@ -758,7 +758,7 @@ def getTextAttributeKey(localizedTextAttr):
if isinstance(localizedTextAttr, unicode):
localizedTextAttr = localizedTextAttr.encode("UTF-8")
- for key, value in _textAttributeTable.items():
+ for key, value in list(_textAttributeTable.items()):
if value == localizedTextAttr:
return key
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]