@@ -187,7 +187,8 @@ def install_nbextension_python(module, overwrite=False, symlink=False,
187
187
188
188
189
189
def 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 ):
191
192
"""Uninstall a Javascript extension of the notebook."""
192
193
nbext = _get_nbextension_dir (user = user , sys_prefix = sys_prefix ,
193
194
prefix = prefix ,
@@ -204,17 +205,17 @@ def uninstall_nbextension(dest, require=None, user=False, sys_prefix=False,
204
205
205
206
# Look through all of the config sections making sure that the nbextension
206
207
# 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' ) )
210
211
if require :
211
212
for section in NBCONFIG_SECTIONS :
212
213
cm .update (section , {"load_extensions" : {require : None }})
213
214
214
215
215
216
def uninstall_nbextension_python (module , user = False , sys_prefix = False ,
216
217
prefix = None , nbextensions_dir = None ,
217
- logger = None ):
218
+ logger = None , config_dir = None ):
218
219
"""Uninstall an nbextension bundled in a Python package."""
219
220
m , nbexts = _get_nbextension_metadata (module )
220
221
for nbext in nbexts :
@@ -224,16 +225,16 @@ def uninstall_nbextension_python(module, user=False, sys_prefix=False,
224
225
logger .info ("Uninstalling {} {}" .format (dest , require ))
225
226
uninstall_nbextension (dest , require , user = user , sys_prefix = sys_prefix ,
226
227
prefix = prefix , nbextensions_dir = nbextensions_dir ,
227
- logger = logger )
228
+ logger = logger , config_dir = config_dir )
228
229
229
230
230
231
def _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 ):
232
233
"""Set whether the section's frontend should require the nbextension."""
233
234
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' ) )
237
238
if logger :
238
239
logger .info ("{} {} extension {}..." .format (
239
240
"Enabling" if state else "Disabling" ,
@@ -248,47 +249,47 @@ def _set_nbextension_state(section, require, state,
248
249
249
250
250
251
def _set_nbextension_state_python (state , module , user , sys_prefix ,
251
- logger = None ):
252
+ logger = None , config_dir = None ):
252
253
"""Enable or disable some nbextensions stored in a Python package."""
253
254
m , nbexts = _get_nbextension_metadata (module )
254
255
return [_set_nbextension_state (section = nbext ["section" ],
255
256
require = nbext ["require" ],
256
257
state = state ,
257
258
user = user , sys_prefix = sys_prefix ,
258
- logger = logger )
259
+ logger = logger , config_dir = config_dir )
259
260
for nbext in nbexts ]
260
261
261
262
262
263
def enable_nbextension (section , require , user = True , sys_prefix = False ,
263
- logger = None ):
264
+ logger = None , config_dir = None ):
264
265
"""Enable a named nbextension."""
265
266
return _set_nbextension_state (section = section , require = require ,
266
267
state = True ,
267
268
user = user , sys_prefix = sys_prefix ,
268
- logger = logger )
269
+ logger = logger , config_dir = config_dir )
269
270
270
271
271
272
def disable_nbextension (section , require , user = True , sys_prefix = False ,
272
- logger = None ):
273
+ logger = None , config_dir = None ):
273
274
"""Disable a named nbextension."""
274
275
return _set_nbextension_state (section = section , require = require ,
275
276
state = False ,
276
277
user = user , sys_prefix = sys_prefix ,
277
- logger = logger )
278
+ logger = logger , config_dir = config_dir )
278
279
279
280
280
281
def enable_nbextension_python (module , user = True , sys_prefix = False ,
281
- logger = None ):
282
+ logger = None , config_dir = None ):
282
283
"""Enable some nbextensions associated with a Python module."""
283
284
return _set_nbextension_state_python (True , module , user , sys_prefix ,
284
- logger = logger )
285
+ logger = logger , config_dir = config_dir )
285
286
286
287
287
288
def disable_nbextension_python (module , user = True , sys_prefix = False ,
288
- logger = None ):
289
+ logger = None , config_dir = None ):
289
290
"""Disable some nbextensions associated with a Python module."""
290
291
return _set_nbextension_state_python (False , module , user , sys_prefix ,
291
- logger = logger )
292
+ logger = logger , config_dir = config_dir )
292
293
293
294
294
295
def validate_nbextension (require , logger = None ):
0 commit comments