Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSascha Silbe <sascha@silbe.org>2010-01-18 18:18:28 (GMT)
committer Sascha Silbe <sascha@silbe.org>2010-01-18 23:15:58 (GMT)
commit630fed8b3f8770b87130083a82a4a42fba68b642 (patch)
tree92b5d61e43c559b5d4b611bb386813dd86776650
parentd1cf3c66ecb6aee9f557e6bd746c5fe2e9a8e3f0 (diff)
PEP8 fixes
-rw-r--r--src/sugar/__init__.py4
-rw-r--r--src/sugar/logger.py49
-rw-r--r--src/sugar/mime.py81
3 files changed, 80 insertions, 54 deletions
diff --git a/src/sugar/__init__.py b/src/sugar/__init__.py
index e915b38..d24d665 100644
--- a/src/sugar/__init__.py
+++ b/src/sugar/__init__.py
@@ -19,7 +19,8 @@
import os
import gettext
-if os.environ.has_key('SUGAR_PREFIX'):
+
+if 'SUGAR_PREFIX' in os.environ:
prefix = os.environ['SUGAR_PREFIX']
else:
prefix = '/usr'
@@ -27,4 +28,3 @@ else:
locale_path = os.path.join(prefix, 'share', 'locale')
gettext.bindtextdomain('sugar-base', locale_path)
-
diff --git a/src/sugar/logger.py b/src/sugar/logger.py
index 226fb4b..275c57d 100644
--- a/src/sugar/logger.py
+++ b/src/sugar/logger.py
@@ -34,8 +34,17 @@ import decorator
# traces function calls, use SUGAR_LOGGER_LEVEL=trace to enable
TRACE = 5
+_LEVELS = {
+ 'error': logging.ERROR,
+ 'warning': logging.WARNING,
+ 'debug': logging.DEBUG,
+ 'info': logging.INFO,
+ 'trace': TRACE,
+ 'all': 0,
+}
logging.addLevelName(TRACE, 'TRACE')
+
def get_logs_dir():
profile = os.environ.get('SUGAR_PROFILE', 'default')
logs_dir = os.environ.get('SUGAR_LOGS_DIR',
@@ -43,13 +52,7 @@ def get_logs_dir():
'.sugar', profile, 'logs'))
return logs_dir
-_LEVELS = { 'error' : logging.ERROR,
- 'warning' : logging.WARNING,
- 'debug' : logging.DEBUG,
- 'info' : logging.INFO,
- 'trace' : TRACE,
- 'all' : 0,
-}
+
def set_level(level):
if level in _LEVELS:
logging.getLogger('').setLevel(_LEVELS[level])
@@ -67,12 +70,14 @@ def _except_hook(exctype, value, traceback):
# Importing IPython is slow, so we import it lazily.
try:
from IPython.ultraTB import AutoFormattedTB
- sys.excepthook = AutoFormattedTB(mode='Verbose', color_scheme='NoColor')
+ sys.excepthook = AutoFormattedTB(mode='Verbose',
+ color_scheme='NoColor')
except ImportError:
sys.excepthook = sys.__excepthook__
sys.excepthook(exctype, value, traceback)
+
def start(log_filename=None):
# remove existing handlers, or logging.basicConfig() won't have no effect.
root_logger = logging.getLogger('')
@@ -106,7 +111,7 @@ def start(log_filename=None):
format="%(created)f %(levelname)s %(name)s: %(message)s",
stream=SafeLogWrapper(sys.stderr))
- if os.environ.has_key('SUGAR_LOGGER_LEVEL'):
+ if 'SUGAR_LOGGER_LEVEL' in os.environ:
set_level(os.environ['SUGAR_LOGGER_LEVEL'])
if log_filename:
@@ -133,6 +138,7 @@ class TraceRepr(repr_.Repr):
# better handling of subclasses of basic types, e.g. for DBus
_TYPES = [int, long, bool, tuple, list, array.array, set, frozenset,
collections.deque, dict, str]
+
def repr1(self, x, level):
for t in self._TYPES:
if isinstance(x, t):
@@ -167,15 +173,17 @@ def trace(logger=None, logger_name=None, skip_args=None, skip_kwargs=None,
def _trace(f, *args, **kwargs):
# don't do expensive formatting if loglevel TRACE is not enabled
enabled = trace_logger.isEnabledFor(TRACE)
- if enabled:
- params_formatted = ", ".join(
- [trace_repr.repr(a)
- for (idx, a) in enumerate(args) if idx not in skip_args] + \
- ['%s=%s' % (k,trace_repr.repr(v))
- for (k,v) in kwargs.items() if k not in skip_kwargs])
+ if not enabled:
+ return f(*args, **kwargs)
+
+ params_formatted = ", ".join(
+ [trace_repr.repr(a)
+ for (idx, a) in enumerate(args) if idx not in skip_args] + \
+ ['%s=%s' % (k, trace_repr.repr(v))
+ for (k, v) in kwargs.items() if k not in skip_kwargs])
- trace_logger.log(TRACE, "%s(%s) invoked", f.__name__,
- params_formatted)
+ trace_logger.log(TRACE, "%s(%s) invoked", f.__name__,
+ params_formatted)
try:
res = f(*args, **kwargs)
@@ -183,12 +191,9 @@ def trace(logger=None, logger_name=None, skip_args=None, skip_kwargs=None,
trace_logger.exception("Exception occured in %s", f.__name__)
raise
- if enabled:
- trace_logger.log(TRACE, "%s(%s) returned %s", f.__name__,
- params_formatted, trace_repr.repr(res))
+ trace_logger.log(TRACE, "%s(%s) returned %s", f.__name__,
+ params_formatted, trace_repr.repr(res))
return res
return decorator.decorator(_trace)
-
-
diff --git a/src/sugar/mime.py b/src/sugar/mime.py
index e1a880a..7f3f5ff 100644
--- a/src/sugar/mime.py
+++ b/src/sugar/mime.py
@@ -38,49 +38,59 @@ GENERIC_TYPE_LINK = 'Link'
_extensions = {}
_globs_timestamps = []
_generic_types = [
-{ 'id' : GENERIC_TYPE_TEXT,
- 'name' : _('Text'),
- 'icon' : 'text-x-generic',
- 'types' : ['text/plain', 'text/rtf', 'application/pdf',
- 'application/x-pdf', 'text/html',
- 'application/vnd.oasis.opendocument.text',
- 'application/rtf', 'text/rtf', 'application/epub+zip']
+{
+ 'id': GENERIC_TYPE_TEXT,
+ 'name': _('Text'),
+ 'icon': 'text-x-generic',
+ 'types': [
+ 'text/plain', 'text/rtf', 'application/pdf', 'application/x-pdf',
+ 'text/html', 'application/vnd.oasis.opendocument.text',
+ 'application/rtf', 'text/rtf', 'application/epub+zip'],
},
-{ 'id' : GENERIC_TYPE_IMAGE,
- 'name' : _('Image'),
- 'icon' : 'image-x-generic',
- 'types' : ['image/png', 'image/gif', 'image/jpeg']
+{
+ 'id': GENERIC_TYPE_IMAGE,
+ 'name': _('Image'),
+ 'icon': 'image-x-generic',
+ 'types': ['image/png', 'image/gif', 'image/jpeg'],
},
-{ 'id' : GENERIC_TYPE_AUDIO,
- 'name' : _('Audio'),
- 'icon' : 'audio-x-generic',
- 'types' : ['audio/ogg', 'audio/x-wav', 'audio/wav', 'audio/x-vorbis+ogg',
- 'audio/x-mpegurl', 'audio/mpegurl', 'audio/mpeg', 'audio/x-scpls']
+{
+ 'id': GENERIC_TYPE_AUDIO,
+ 'name': _('Audio'),
+ 'icon': 'audio-x-generic',
+ 'types': [
+ 'audio/ogg', 'audio/x-wav', 'audio/wav', 'audio/x-vorbis+ogg',
+ 'audio/x-mpegurl', 'audio/mpegurl', 'audio/mpeg', 'audio/x-scpls'],
},
-{ 'id' : GENERIC_TYPE_VIDEO,
- 'name' : _('Video'),
- 'icon' : 'video-x-generic',
- 'types' : ['video/ogg', 'application/ogg', 'video/x-theora+ogg']
+{
+ 'id': GENERIC_TYPE_VIDEO,
+ 'name': _('Video'),
+ 'icon': 'video-x-generic',
+ 'types': ['video/ogg', 'application/ogg', 'video/x-theora+ogg'],
},
-{ 'id' : GENERIC_TYPE_LINK,
- 'name' : _('Link'),
- 'icon' : 'text-uri-list',
- 'types' : ['text/x-moz-url', 'text/uri-list']
+{
+ 'id': GENERIC_TYPE_LINK,
+ 'name': _('Link'),
+ 'icon': 'text-uri-list',
+ 'types': ['text/x-moz-url', 'text/uri-list'],
}]
+
class ObjectType(object):
+
def __init__(self, type_id, name, icon, mime_types):
self.type_id = type_id
self.name = name
self.icon = icon
self.mime_types = mime_types
+
def get_generic_type(type_id):
types = get_all_generic_types()
for generic_type in types:
if type_id == generic_type.type_id:
return generic_type
+
def get_all_generic_types():
types = []
for generic_type in _generic_types:
@@ -89,6 +99,7 @@ def get_all_generic_types():
types.append(object_type)
return types
+
def get_for_file(file_name):
if file_name.startswith('file://'):
file_name = file_name[7:]
@@ -104,9 +115,11 @@ def get_for_file(file_name):
return mime_type
+
def get_from_file_name(file_name):
return _sugarbaseext.get_mime_type_from_file_name(file_name)
+
def get_mime_icon(mime_type):
generic_type = _get_generic_type_for_mime(mime_type)
if generic_type:
@@ -114,6 +127,7 @@ def get_mime_icon(mime_type):
return mime_type.replace('/', '-')
+
def get_mime_description(mime_type):
generic_type = _get_generic_type_for_mime(mime_type)
if generic_type:
@@ -122,9 +136,11 @@ def get_mime_description(mime_type):
import gio
return gio.content_type_get_description(mime_type)
+
def get_mime_parents(mime_type):
return _sugarbaseext.list_mime_parents(mime_type)
+
def get_primary_extension(mime_type):
global _extensions
global _globs_timestamps
@@ -174,10 +190,12 @@ def get_primary_extension(mime_type):
else:
return None
-_black_list = [
- # Target used only between gtk.TextBuffer instances
- 'application/x-gtk-text-buffer-rich-text',
- ]
+
+_MIME_TYPE_BLACK_LIST = [
+ # Target used only between gtk.TextBuffer instances
+ 'application/x-gtk-text-buffer-rich-text',
+]
+
def choose_most_significant(mime_types):
logging.debug('Choosing between %r.', mime_types)
@@ -191,9 +209,9 @@ def choose_most_significant(mime_types):
for mime_type in mime_types:
if mime_type.startswith(mime_category) and \
- mime_type not in _black_list:
+ mime_type not in _MIME_TYPE_BLACK_LIST:
# skip mozilla private types (second component starts with '_'
- # or ends with '-priv')
+ # or ends with '-priv')
if mime_type.split('/')[1].startswith('_') or \
mime_type.split('/')[1].endswith('-priv'):
continue
@@ -218,9 +236,11 @@ def choose_most_significant(mime_types):
logging.debug('Returning first: %r.', mime_types[0])
return mime_types[0]
+
def split_uri_list(uri_list):
return _sugarbaseext.uri_list_extract_uris(uri_list)
+
def _file_looks_like_text(file_name):
f = open(file_name, 'r')
try:
@@ -240,6 +260,7 @@ def _file_looks_like_text(file_name):
return False
+
def _get_generic_type_for_mime(mime_type):
for generic_type in _generic_types:
if mime_type in generic_type['types']: