diff --git a/IPython/qt/console/frontend_widget.py b/IPython/qt/console/frontend_widget.py index 064d037..0c0ea0a 100644 --- a/IPython/qt/console/frontend_widget.py +++ b/IPython/qt/console/frontend_widget.py @@ -615,10 +615,11 @@ class FrontendWidget(HistoryConsoleWidget, BaseFrontendMixin): if clear: self._control.clear() - self._append_plain_text(self.banner) - if self.kernel_banner: - self._append_plain_text(self.kernel_banner) - + if self._display_banner: + self._append_plain_text(self.banner) + if self.kernel_banner: + self._append_plain_text(self.kernel_banner) + # update output marker for stdout/stderr, so that startup # messages appear after banner: self._append_before_prompt_pos = self._get_cursor().position() diff --git a/IPython/qt/console/qtconsoleapp.py b/IPython/qt/console/qtconsoleapp.py index 5df4e2e..9172557 100644 --- a/IPython/qt/console/qtconsoleapp.py +++ b/IPython/qt/console/qtconsoleapp.py @@ -50,6 +50,7 @@ if os.name == 'nt': from IPython.external.qt import QtCore, QtGui # Local imports +from IPython.config.application import boolean_flag from IPython.config.application import catch_config_error from IPython.core.application import BaseIPythonApplication from IPython.qt.console.ipython_widget import IPythonWidget @@ -91,6 +92,11 @@ qt_flags = { 'plain' : ({'IPythonQtConsoleApp' : {'plain' : True}}, "Disable rich text support."), } +qt_flags.update(boolean_flag( + 'banner', 'IPythonQtConsoleApp.display_banner', + "Display a banner upon starting IPython.", + "Don't display a banner upon starting IPython." +)) # and app_flags from the Console Mixin qt_flags.update(app_flags) @@ -168,6 +174,10 @@ class IPythonQtConsoleApp(BaseIPythonApplication, IPythonConsoleApp): plain = CBool(False, config=True, help="Use a plaintext widget instead of rich text (plain can't print/save).") + display_banner = CBool(True, config=True, + help="Whether to display a banner upon starting IPython." + ) + def _plain_changed(self, name, old, new): kind = 'plain' if new else 'rich' self.config.ConsoleWidget.kind = kind @@ -255,6 +265,7 @@ class IPythonQtConsoleApp(BaseIPythonApplication, IPythonConsoleApp): self.widget._existing = self.existing self.widget._may_close = not self.existing self.widget._confirm_exit = self.confirm_exit + self.widget._display_banner = self.display_banner self.widget.kernel_manager = self.kernel_manager self.widget.kernel_client = self.kernel_client