Catch ImportErrors when importing renderer module

This commit is contained in:
Kim Silkebækken 2013-01-28 17:28:00 +01:00
parent 52a52c8eb6
commit 5db6f47562
1 changed files with 5 additions and 1 deletions

View File

@ -46,7 +46,11 @@ class Powerline(object):
renderer_module_name = renderer_module or ext
renderer_module_import = 'powerline.renderers.{0}'.format(renderer_module_name)
renderer_class_name = '{0}Renderer'.format(underscore_to_camelcase(renderer_module_name))
Renderer = getattr(importlib.import_module(renderer_module_import), renderer_class_name)
try:
Renderer = getattr(importlib.import_module(renderer_module_import), renderer_class_name)
except ImportError as e:
sys.stderr.write('Error while importing renderer module: {0}\n'.format(e))
sys.exit(1)
self.renderer = Renderer(theme_config, local_themes, theme_kwargs,
term_24bit_colors=self.config.get('term_24bit_colors', False))