def METHOD_NAME(self, inprocess=False, **kwargs):
    merged_kwargs = self._kwargs.copy()
    merged_kwargs.update(kwargs)
    kernel = merged_kwargs.get('kernel', cfg.jupyter_default_kernel)
    name = u'{} ({})'.format(
        KERNEL_NAMES.get(kernel, kernel),
        self._console_count
    )
    jupyter_console = JupyterConsole(
        self,
        name=name,
        inprocess=inprocess,
        **merged_kwargs
    )
    self.addTab(
        jupyter_console,
        self.main_window.theme.qicon(
            'utilities-terminal'
            if inprocess
            else 'os-debug'
        ),
        name
    )
    if inprocess:
        global_dict = {
            ext.name(): ext
            for ext in self.extension_manager.extensions
        }
        global_dict['opensesame'] = self.main_window
        global_dict['event_durations'] = self._event_durations
        jupyter_console.set_workspace_globals(global_dict)
    else:
        self.extension_manager.fire(
            'register_subprocess',
            pid=jupyter_console.pid,
            description='jupyter_console:{}'.format(name)
        )
    self.setTabsClosable(self.count() > 1)
    self.setCurrentIndex(self.count() - 1)
    self._console_count += 1
    self.extension_manager.fire(
        'workspace_new',
        name=name,
        workspace_func=jupyter_console.get_workspace_globals
    )