Add support for spawning new windows as new Terminator processes. Closes LP #381193

This commit is contained in:
Chris Jones 2009-05-28 10:29:56 +02:00
parent 98a5fee1f6
commit ac56c18501
7 changed files with 28 additions and 0 deletions

View File

@ -11,6 +11,8 @@ terminator 0.13:
* Add configurability of cursor colour and shape
* Support various VoIP URIs
* Addcommand line option to force a particular window title
* Add a hotkey for spawning a new Terminator instance
(emulates a "new window" feature)
terminator 0.12:
* Bug fixes

View File

@ -174,6 +174,9 @@ Group all terminals in the current tab so input sent to one of them, goes to all
.TP
.B Super+Shift+T
Remove grouping from all terminals in the current tab.
.TP
.B Ctrl+Shift+I
Spawn a new Terminator process and thus get a new window
.SH "Drag and Drop"
The layout can be modified by moving terminals with Drag and Drop.
To start dragging a terminal, hold down \fBCtrl\fP, click and hold the \fBright\fP mouse button.

View File

@ -388,5 +388,9 @@ Default value: \fB<Super>t\fR
.B ungroup_tab
Remove grouping from all terminals in the current tab.
Default value: \fB<Super><Shift>T\fR
.TP
.B new_window
Spawn a new instance of Terminator and thus get a new window.
Default value: \fB<Ctrl><Shift>I\fR
.SH "SEE ALSO"
.BR gnome\-terminal(1)

View File

@ -20,6 +20,7 @@
# import standard python libs
import os, sys
origcwd = os.getcwd()
from optparse import OptionParser, SUPPRESS_HELP
import terminatorlib.translation
@ -161,6 +162,8 @@ See the following bug report for more details:
options.maximise, options.borderless, options.no_gconf,
options.geometry, options.hidden, options.forcedtitle)
term.origcwd = origcwd
if options.debug > 1:
import terminatorlib.debugserver as debugserver
import threading

View File

@ -169,6 +169,7 @@ DEFAULTS = {
'ungroup_all' : '<Super><Shift>g',
'group_tab' : '<Super>t',
'ungroup_tab' : '<Super><Shift>T',
'new_window' : '<Ctrl><Shift>I',
}
}

View File

@ -210,6 +210,7 @@ class Terminator:
options = None
groupings = None
_urgency = False
origcwd = None
def __init__ (self, profile = None, command = None, fullscreen = False,
maximise = False, borderless = False, no_gconf = False,

View File

@ -1033,6 +1033,20 @@ text/plain
def key_ungroup_tab(self):
self.ungroup_tab(self)
def key_new_window(self):
cmd = sys.argv[0]
if not os.path.isabs(cmd):
# Command is not an absolute path. Figure out where we are
cmd = os.path.join (self.terminator.origcwd, sys.argv[0])
if not os.path.isfile(cmd):
# we weren't started as ./terminator in a path. Give up
err('Unable to locate Terminator')
return False
dbg("Spawning: %s" % cmd)
subprocess.Popen([cmd,])
# End key events
def zoom_orig (self):