# Path: djangocodemirror/exceptions.py
# class NotRegisteredError(KeyError):
#     pass
# 
# class UnknowConfigError(KeyError):
#     pass
# 
# class UnknowModeError(KeyError):
#     pass
# 
# class UnknowThemeError(KeyError):
#     pass


import copy
from django.conf import settings
from .exceptions import (NotRegisteredError, UnknowConfigError,
                         UnknowModeError, UnknowThemeError)
    default_internal_config = {
        'modes': [],  # Enabled modes
        'addons': [],  # Addons filepaths to load
        'themes': [],  # Themes filepaths to load
    }

    _internal_only = ['modes', 'addons', 'themes', 'css_bundle_name',
                      'js_bundle_name', 'extra_css']

    def __init__(self):
        self.registry = {}

    def register(self, name):
        """
        Register configuration for an editor instance.

        Arguments:
            name (string): Config name from available ones in
                ``settings.CODEMIRROR_SETTINGS``.

        Raises:
            UnknowConfigError: If given config name does not exist in
                ``settings.CODEMIRROR_SETTINGS``.

        Returns:
            dict: Registred config dict.
        """
        if name not in settings.CODEMIRROR_SETTINGS:
            msg = ("Given config name '{}' does not exists in "
                   "'settings.CODEMIRROR_SETTINGS'.")

# Path: djangocodemirror/exceptions.py
# class NotRegisteredError(KeyError):
#     pass
# 
# class UnknowConfigError(KeyError):
#     pass
# 
# class UnknowModeError(KeyError):
#     pass
# 
# class UnknowThemeError(KeyError):
#     pass


# Path: djangocodemirror/manifest.py
import copy
from django.conf import settings
from .exceptions import (NotRegisteredError, UnknowConfigError,
                         UnknowModeError, UnknowThemeError)

    default_internal_config = {
        'modes': [],  # Enabled modes
        'addons': [],  # Addons filepaths to load
        'themes': [],  # Themes filepaths to load
    }

    _internal_only = ['modes', 'addons', 'themes', 'css_bundle_name',
                      'js_bundle_name', 'extra_css']

    def __init__(self):
        self.registry = {}

    def register(self, name):
        """
        Register configuration for an editor instance.

        Arguments:
            name (string): Config name from available ones in
                ``settings.CODEMIRROR_SETTINGS``.

        Raises:
            UnknowConfigError: If given config name does not exist in
                ``settings.CODEMIRROR_SETTINGS``.

        Returns:
            dict: Registred config dict.
        """
        if name not in settings.CODEMIRROR_SETTINGS:
            msg = ("Given config name '{}' does not exists in "
                   "'settings.CODEMIRROR_SETTINGS'.")

            raise UnknowConfigError(msg.format(name))