From 48e59d377fc03feb1203c6a02d7e6424a533be62 Mon Sep 17 00:00:00 2001 From: mathieui Date: Wed, 30 Apr 2014 21:55:19 +0200 Subject: Fix #2282 (change the terminal title depending on the tab name) - change_title plugin --- doc/source/plugins/change_title.rst | 6 ++++++ doc/source/plugins/index.rst | 6 ++++++ plugins/change_title.py | 23 +++++++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 doc/source/plugins/change_title.rst create mode 100644 plugins/change_title.py 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 ` + + 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() + -- cgit v1.2.3