diff options
-rw-r--r-- | doc/source/plugins/change_title.rst | 6 | ||||
-rw-r--r-- | doc/source/plugins/index.rst | 6 | ||||
-rw-r--r-- | plugins/change_title.py | 23 |
3 files changed, 35 insertions, 0 deletions
diff --git a/doc/source/plugins/change_title.rst b/doc/source/plugins/change_title.rst new file mode 100644 index 00000000..9a669a80 --- /dev/null +++ b/doc/source/plugins/change_title.rst @@ -0,0 +1,6 @@ +.. _changetitle-plugin: + +Title change +============ + +.. automodule:: change_title diff --git a/doc/source/plugins/index.rst b/doc/source/plugins/index.rst index d608742f..452c2e8a 100644 --- a/doc/source/plugins/index.rst +++ b/doc/source/plugins/index.rst @@ -235,6 +235,11 @@ Plugin index Manage IRC gateways with biboumi more easily + Title change + :ref:`Documentation <changetitle-plugin>` + + Change the title of the terminal according to the name + of the current tab. .. toctree:: @@ -273,3 +278,4 @@ Plugin index pointpoint autocorrect irc + change_title diff --git a/plugins/change_title.py b/plugins/change_title.py new file mode 100644 index 00000000..07759bc9 --- /dev/null +++ b/plugins/change_title.py @@ -0,0 +1,23 @@ +""" +This plugin will set the title of your terminal to the name of the current tab. + +""" +from plugin import BasePlugin +import sys + + +class Plugin(BasePlugin): + def init(self): + self.on_tab_change(0, self.core.current_tab_nb) + self.api.add_event_handler('tab_change', self.on_tab_change) + + def cleanup(self): + "Re-set the terminal title to 'poezio'" + sys.stdout.write("\x1b]0;poezio\x07") + sys.stdout.flush() + + def on_tab_change(self, old, new): + new_tab = self.core.get_tab_by_number(new) + sys.stdout.write("\x1b]0;{}\x07".format(new_tab.name)) + sys.stdout.flush() + |