def load_messages(themes, translations, default_lang): """ Load theme's messages into context. All the messages from parent themes are loaded, and "younger" themes have priority. """ messages = Functionary(dict, default_lang) oldpath = list(sys.path) for theme_name in themes[::-1]: msg_folder = os.path.join(get_theme_path(theme_name), 'messages') default_folder = os.path.join(get_theme_path('base'), 'messages') sys.path.insert(0, default_folder) sys.path.insert(0, msg_folder) english = __import__('messages_en') for lang in list(translations.keys()): try: translation = __import__('messages_' + lang) # If we don't do the reload, the module is cached _reload(translation) if sorted(translation.MESSAGES.keys()) !=\ sorted(english.MESSAGES.keys()) and \ lang not in warned: warned.append(lang) LOGGER.warn("Incomplete translation for language " "'{0}'.".format(lang)) messages[lang].update(english.MESSAGES) for k, v in translation.MESSAGES.items(): if v: messages[lang][k] = v del(translation) except ImportError as orig: raise LanguageNotFoundError(lang, orig) sys.path = oldpath return messages
def main(args): sys.path.append('') try: import conf if sys.version_info[0] > 2: from imp import reload as _reload else: _reload = reload # NOQA _reload(conf) config = conf.__dict__ except ImportError: config = {} site = Nikola(**config) return DoitNikola(site).run(args)
def reload(module, _time=None): print('# autoreload: Reloading: %s at 0x%x' % (module.__name__, id(module))) state = None if hasattr(module, '__before_reload__'): state = module.__before_reload__() _reload(module) # Wipe the child cache. _child_lists.pop(module.__name__, None) # Remember when it was reloaded. _reload_times[module.__name__] = _time or time.time()() if _VERBOSE: print('\n'.join('%s: %s' % (t, n) for n, t in sorted(_reload_times.iteritems()))) if hasattr(module, '__after_reload__'): module.__after_reload__(state)
# GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # ##### END GPL LICENSE BLOCK ##### # <pep8 compliant> # note, properties_animviz is a helper module only. if "bpy" in locals(): from imp import reload as _reload for val in _modules_loaded.values(): _reload(val) _modules = ( "properties_animviz", "properties_data_armature", "properties_data_bone", "properties_data_camera", "properties_data_curve", "properties_data_empty", "properties_data_lamp", "properties_data_lattice", "properties_data_mesh", "properties_data_metaball", "properties_data_modifier", "properties_data_speaker", "properties_game", "properties_mask_common",
# GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # ##### END GPL LICENSE BLOCK ##### # <pep8 compliant> # note, properties_animviz is a helper module only. if "bpy" in locals(): from imp import reload as _reload for val in _modules_loaded.values(): _reload(val) _modules = [ "properties_animviz", "properties_constraint", "properties_data_armature", "properties_data_bone", "properties_data_camera", "properties_data_curve", "properties_data_empty", "properties_data_lamp", "properties_data_lattice", "properties_data_mesh", "properties_data_metaball", "properties_data_modifier", "properties_data_speaker", "properties_game",