diff --git a/terminatorlib/config.py b/terminatorlib/config.py index 93f4326d..b91a8dae 100755 --- a/terminatorlib/config.py +++ b/terminatorlib/config.py @@ -189,7 +189,9 @@ DEFAULTS = { 'insert_number' : '', 'insert_padded' : '', 'edit_window_title': '', - 'layout_launcher' : '' + 'layout_launcher' : '', + 'next_profile' : '', + 'previous_profile' : '' }, 'profiles': { 'default': { diff --git a/terminatorlib/prefseditor.py b/terminatorlib/prefseditor.py index 8ffd98d1..918d900b 100755 --- a/terminatorlib/prefseditor.py +++ b/terminatorlib/prefseditor.py @@ -146,7 +146,9 @@ class PrefsEditor: 'insert_number' : 'Insert terminal number', 'insert_padded' : 'Insert zero padded terminal number', 'edit_window_title': 'Edit window title', - 'layout_launcher' : 'Open layout launcher window' + 'layout_launcher' : 'Open layout launcher window', + 'next_profile' : 'Switch to next profile', + 'previous_profile' : 'Switch to previous profile' } def __init__ (self, term): diff --git a/terminatorlib/terminal.py b/terminatorlib/terminal.py index b2e49212..7393daff 100755 --- a/terminatorlib/terminal.py +++ b/terminatorlib/terminal.py @@ -188,6 +188,26 @@ class Terminal(Gtk.VBox): """Return our profile name""" return(self.config.profile) + def switch_to_next_profile(self): + profilelist = self.config.list_profiles() + list_length = len(profilelist) + + if list_length > 1: + if profilelist.index(self.get_profile()) + 1 == list_length: + self.force_set_profile(False, profilelist[0]) + else: + self.force_set_profile(False, profilelist[profilelist.index(self.get_profile()) + 1]) + + def switch_to_previous_profile(self): + profilelist = self.config.list_profiles() + list_length = len(profilelist) + + if list_length > 1: + if profilelist.index(self.get_profile()) == 0: + self.force_set_profile(False, profilelist[list_length - 1]) + else: + self.force_set_profile(False, profilelist[profilelist.index(self.get_profile()) - 1]) + def get_cwd(self): """Return our cwd""" # Disabled and reverted to revert to old style cwd detection as only returns None. @@ -1532,6 +1552,12 @@ class Terminal(Gtk.VBox): def key_zoom_in(self): self.zoom_in() + def key_next_profile(self): + self.switch_to_next_profile() + + def key_previous_profile(self): + self.switch_to_previous_profile() + def key_zoom_out(self): self.zoom_out()