@@ -187,7 +187,8 @@ def install_nbextension_python(module, overwrite=False, symlink=False,
187187
188188
189189def uninstall_nbextension (dest , require = None , user = False , sys_prefix = False ,
190- prefix = None , nbextensions_dir = None , logger = None ):
190+ prefix = None , nbextensions_dir = None , logger = None ,
191+ config_dir = None ):
191192 """Uninstall a Javascript extension of the notebook."""
192193 nbext = _get_nbextension_dir (user = user , sys_prefix = sys_prefix ,
193194 prefix = prefix ,
@@ -204,17 +205,17 @@ def uninstall_nbextension(dest, require=None, user=False, sys_prefix=False,
204205
205206 # Look through all of the config sections making sure that the nbextension
206207 # doesn't exist.
207- config_dir = os . path . join (
208- _get_config_dir (user = user , sys_prefix = sys_prefix ), 'nbconfig' )
209- cm = BaseJSONConfigManager (config_dir = config_dir )
208+ if not config_dir :
209+ config_dir = _get_config_dir (user = user , sys_prefix = sys_prefix ),
210+ cm = BaseJSONConfigManager (config_dir = os . path . join ( config_dir , 'nbconfig' ) )
210211 if require :
211212 for section in NBCONFIG_SECTIONS :
212213 cm .update (section , {"load_extensions" : {require : None }})
213214
214215
215216def uninstall_nbextension_python (module , user = False , sys_prefix = False ,
216217 prefix = None , nbextensions_dir = None ,
217- logger = None ):
218+ logger = None , config_dir = None ):
218219 """Uninstall an nbextension bundled in a Python package."""
219220 m , nbexts = _get_nbextension_metadata (module )
220221 for nbext in nbexts :
@@ -224,16 +225,16 @@ def uninstall_nbextension_python(module, user=False, sys_prefix=False,
224225 logger .info ("Uninstalling {} {}" .format (dest , require ))
225226 uninstall_nbextension (dest , require , user = user , sys_prefix = sys_prefix ,
226227 prefix = prefix , nbextensions_dir = nbextensions_dir ,
227- logger = logger )
228+ logger = logger , config_dir = config_dir )
228229
229230
230231def _set_nbextension_state (section , require , state ,
231- user = True , sys_prefix = False , logger = None ):
232+ user = True , sys_prefix = False , logger = None , config_dir = None ):
232233 """Set whether the section's frontend should require the nbextension."""
233234 user = False if sys_prefix else user
234- config_dir = os . path . join (
235- _get_config_dir (user = user , sys_prefix = sys_prefix ), 'nbconfig' )
236- cm = BaseJSONConfigManager (config_dir = config_dir )
235+ if not config_dir :
236+ config_dir = _get_config_dir (user = user , sys_prefix = sys_prefix )
237+ cm = BaseJSONConfigManager (config_dir = os . path . join ( config_dir , 'nbconfig' ) )
237238 if logger :
238239 logger .info ("{} {} extension {}..." .format (
239240 "Enabling" if state else "Disabling" ,
@@ -248,47 +249,47 @@ def _set_nbextension_state(section, require, state,
248249
249250
250251def _set_nbextension_state_python (state , module , user , sys_prefix ,
251- logger = None ):
252+ logger = None , config_dir = None ):
252253 """Enable or disable some nbextensions stored in a Python package."""
253254 m , nbexts = _get_nbextension_metadata (module )
254255 return [_set_nbextension_state (section = nbext ["section" ],
255256 require = nbext ["require" ],
256257 state = state ,
257258 user = user , sys_prefix = sys_prefix ,
258- logger = logger )
259+ logger = logger , config_dir = config_dir )
259260 for nbext in nbexts ]
260261
261262
262263def enable_nbextension (section , require , user = True , sys_prefix = False ,
263- logger = None ):
264+ logger = None , config_dir = None ):
264265 """Enable a named nbextension."""
265266 return _set_nbextension_state (section = section , require = require ,
266267 state = True ,
267268 user = user , sys_prefix = sys_prefix ,
268- logger = logger )
269+ logger = logger , config_dir = config_dir )
269270
270271
271272def disable_nbextension (section , require , user = True , sys_prefix = False ,
272- logger = None ):
273+ logger = None , config_dir = None ):
273274 """Disable a named nbextension."""
274275 return _set_nbextension_state (section = section , require = require ,
275276 state = False ,
276277 user = user , sys_prefix = sys_prefix ,
277- logger = logger )
278+ logger = logger , config_dir = config_dir )
278279
279280
280281def enable_nbextension_python (module , user = True , sys_prefix = False ,
281- logger = None ):
282+ logger = None , config_dir = None ):
282283 """Enable some nbextensions associated with a Python module."""
283284 return _set_nbextension_state_python (True , module , user , sys_prefix ,
284- logger = logger )
285+ logger = logger , config_dir = config_dir )
285286
286287
287288def disable_nbextension_python (module , user = True , sys_prefix = False ,
288- logger = None ):
289+ logger = None , config_dir = None ):
289290 """Disable some nbextensions associated with a Python module."""
290291 return _set_nbextension_state_python (False , module , user , sys_prefix ,
291- logger = logger )
292+ logger = logger , config_dir = config_dir )
292293
293294
294295def validate_nbextension (require , logger = None ):
0 commit comments