summaryrefslogtreecommitdiff
path: root/sphinx/application.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/application.py')
-rw-r--r--sphinx/application.py43
1 files changed, 5 insertions, 38 deletions
diff --git a/sphinx/application.py b/sphinx/application.py
index e82182258..76c8f3c96 100644
--- a/sphinx/application.py
+++ b/sphinx/application.py
@@ -19,47 +19,10 @@ from cStringIO import StringIO
from docutils import nodes
from docutils.parsers.rst import directives, roles
-# Directive is either new-style or old-style
-clstypes = (type, types.ClassType)
-
-# create the error classes before importing the rest of Sphinx, so that
-# they can be imported in a circular fashion
-
-class SphinxError(Exception):
- """
- Base class for Sphinx errors that are shown to the user in a nicer
- way than normal exceptions.
- """
- category = 'Sphinx error'
-
-class SphinxWarning(SphinxError):
- """Raised for warnings if warnings are treated as errors."""
- category = 'Warning, treated as error'
-
-class ExtensionError(SphinxError):
- """Raised if something's wrong with the configuration."""
- category = 'Extension error'
-
- def __init__(self, message, orig_exc=None):
- super(ExtensionError, self).__init__(message)
- self.orig_exc = orig_exc
-
- def __repr__(self):
- if self.orig_exc:
- return '%s(%r, %r)' % (self.__class__.__name__,
- self.message, self.orig_exc)
- return '%s(%r)' % (self.__class__.__name__, self.message)
-
- def __str__(self):
- parent_str = super(ExtensionError, self).__str__()
- if self.orig_exc:
- return '%s (exception: %s)' % (parent_str, self.orig_exc)
- return parent_str
-
-
import sphinx
from sphinx.roles import xfileref_role, innernodetypes
from sphinx.config import Config
+from sphinx.errors import SphinxError, SphinxWarning, ExtensionError
from sphinx.builders import BUILTIN_BUILDERS
from sphinx.directives import GenericDesc, Target, additional_xref_types
from sphinx.environment import SphinxStandaloneReader
@@ -68,6 +31,9 @@ from sphinx.util.compat import Directive, directive_dwim
from sphinx.util.console import bold
+# Directive is either new-style or old-style
+clstypes = (type, types.ClassType)
+
# List of all known core events. Maps name to arguments description.
events = {
'builder-inited': '',
@@ -83,6 +49,7 @@ events = {
CONFIG_FILENAME = 'conf.py'
+
class Sphinx(object):
def __init__(self, srcdir, confdir, outdir, doctreedir, buildername,