2020from docutils import nodes
2121from docutils .parsers .rst .directives import flag , images , nonnegative_int
2222from sphinx .errors import SphinxError
23- from sphinx .util import ensuredir , relative_uri
23+ from sphinx .util import ensuredir , relative_uri , logging
2424
2525try :
2626 from hashlib import sha1 as sha
3434 aafigure = None
3535
3636
37+ logger = logging .getLogger (__name__ )
38+
3739DEFAULT_FORMATS = dict (html = 'svg' , latex = 'pdf' , text = None )
3840
3941
@@ -102,7 +104,7 @@ def render_aafig_images(app, doctree):
102104 format_map = app .builder .config .aafig_format
103105 merge_dict (format_map , DEFAULT_FORMATS )
104106 if aafigure is None :
105- app . builder .warn (
107+ logger .warn (
106108 'aafigure module not installed, ASCII art images '
107109 'will be redered as literal text'
108110 )
@@ -118,7 +120,7 @@ def render_aafig_images(app, doctree):
118120 if format in format_map :
119121 options ['format' ] = format_map [format ]
120122 else :
121- app . builder .warn (
123+ logger .warn (
122124 'unsupported builder format "%s", please '
123125 'add a custom entry in aafig_format config '
124126 'option for this builder' % format
@@ -131,7 +133,7 @@ def render_aafig_images(app, doctree):
131133 try :
132134 fname , outfn , id , extra = render_aafigure (app , text , options )
133135 except AafigError as exc :
134- app . builder .warn ('aafigure error: ' + str (exc ))
136+ logger .warn ('aafigure error: ' + str (exc ))
135137 img .replace_self (nodes .literal_block (text , text ))
136138 continue
137139 img ['uri' ] = fname
@@ -162,7 +164,7 @@ def render_aafigure(app, text, options):
162164 else :
163165 # Non-HTML
164166 if app .builder .format != 'latex' :
165- app . builder .warn (
167+ logger .warn (
166168 'aafig: the builder format %s is not officially '
167169 'supported, aafigure images could not work. '
168170 'Please report problems and working builder to '
0 commit comments