merging drag-and-drop to trunk tree
This commit is contained in:
commit
95059747fb
149
ChangeLog
149
ChangeLog
|
@ -1,102 +1,103 @@
|
|||
terminator 0.9:
|
||||
* Added support for ~/.terminatorrc
|
||||
* Added kwybindings for terms size and scrollbar manipulation. Thanks
|
||||
Emmanuel Bretelle.
|
||||
* Added support for ~/.terminatorrc
|
||||
* Added kwybindings for terms size and scrollbar manipulation. Thanks
|
||||
Emmanuel Bretelle.
|
||||
|
||||
|
||||
terminator 0.8.1:
|
||||
* Fixed ChangeLog
|
||||
* Revert URI matching behaviour to the same as gnome-terminal
|
||||
* Fixed ChangeLog
|
||||
* Revert URI matching behaviour to the same as gnome-terminal
|
||||
* Close LP #179315 with a fuller fix that provides proper colour support
|
||||
|
||||
terminator 0.8:
|
||||
* Make dependency on python-gnome optional. Non-gnome users can now reap
|
||||
the glorious benefits of Terminator and will only lose the ability to
|
||||
open email URLs (assuming their browser won't handle this for them).
|
||||
Closes LP #184809
|
||||
* Remove blank translations from .desktop file to fix empty menu entries
|
||||
Closes LP #187187
|
||||
* Add application icon at various sizes including a window icon
|
||||
* New options parser allowing -x support. Closes LP191124
|
||||
* More translations (thanks!)
|
||||
* Make dependency on python-gnome optional. Non-gnome users can now reap
|
||||
the glorious benefits of Terminator and will only lose the ability to
|
||||
open email URLs (assuming their browser won't handle this for them).
|
||||
Closes LP #184809
|
||||
* Remove blank translations from .desktop file to fix empty menu entries.
|
||||
Closes LP #187187
|
||||
* Add application icon at various sizes including a window icon
|
||||
* New options parser allowing -x support. Closes LP191124
|
||||
* More translations (thanks!)
|
||||
|
||||
terminator 0.7:
|
||||
|
||||
* Fullscreen support, via a patch from Thomas Meire. Closes LP #178914
|
||||
* Improved behaviour when closing terminals/window. Result of work by
|
||||
Thomas Meire. Closes LP #161121
|
||||
* Freedesktop .desktop file and appropriate setup.py entry for
|
||||
installing it. Closes LP #178943
|
||||
* Translation support, with Spanish, Dutch, Italian and Romanian
|
||||
translations. Closes LP #161120
|
||||
* Stop clashing with gnome-terminal's paste shortcut key, move
|
||||
horizontal splitting shortcut too, and add support for
|
||||
gnome-terminal's copy/paste shortcuts. Closes LP #179310
|
||||
* Borderless support (tell your window manager not to decorate
|
||||
Terminator)
|
||||
* Font zooming support. Closes LP #178792
|
||||
* Set the VTE widget to have a tooltip of its window title. This may be
|
||||
reverted if it is annoying
|
||||
* Support GNOME Terminal profile settings for backgrounds.
|
||||
Closes LP #180717
|
||||
* Use our own default values if there is no gnome-terminal profile.
|
||||
Closes LP #179315
|
||||
* Fullscreen support, via a patch from Thomas Meire. Closes LP #178914
|
||||
* Improved behaviour when closing terminals/window. Result of work by
|
||||
Thomas Meire. Closes LP #161121
|
||||
* Freedesktop .desktop file and appropriate setup.py entry for
|
||||
installing it. Closes LP #178943
|
||||
* Translation support, with Spanish, Dutch, Italian and Romanian
|
||||
translations. Closes LP #161120
|
||||
* Stop clashing with gnome-terminal's paste shortcut key, move
|
||||
horizontal splitting shortcut too, and add support for
|
||||
gnome-terminal's copy/paste shortcuts. Closes LP #179310
|
||||
* Borderless support (tell your window manager not to decorate
|
||||
Terminator)
|
||||
* Font zooming support. Closes LP #178792
|
||||
* Set the VTE widget to have a tooltip of its window title. This may be
|
||||
reverted if it is annoying
|
||||
* Support GNOME Terminal profile settings for backgrounds.
|
||||
Closes LP #180717
|
||||
* Use our own default values if there is no gnome-terminal profile.
|
||||
Closes LP #179315
|
||||
|
||||
terminator 0.6:
|
||||
|
||||
* Use new gnome-terminal gconf key to find available profiles
|
||||
* Move a few more hardcoded items to our settings array (not that
|
||||
it can be overridden yet)
|
||||
* Fix handling of exiting child processes to properly track
|
||||
gnome-terminal settings
|
||||
* Add Ctrl-Tab and Ctrl-Shift-Tab as options for switching terminals
|
||||
(patch from Kees Cook)
|
||||
* Stop using parent.show_all() when removing/adding a terminal and
|
||||
instead show the actual widgets that have been created. This
|
||||
prevents scrollbars from re-appearing after they have been hidden
|
||||
* Use new gnome-terminal gconf key to find available profiles
|
||||
* Move a few more hardcoded items to our settings array (not that
|
||||
it can be overridden yet)
|
||||
* Fix handling of exiting child processes to properly track
|
||||
gnome-terminal settings
|
||||
* Add Ctrl-Tab and Ctrl-Shift-Tab as options for switching terminals
|
||||
(patch from Kees Cook)
|
||||
* Stop using parent.show_all() when removing/adding a terminal and
|
||||
instead show the actual widgets that have been created. This
|
||||
prevents scrollbars from re-appearing after they have been hidden
|
||||
|
||||
terminator 0.5:
|
||||
|
||||
* The terminator window is now able to resize smaller,
|
||||
thanks to Kees Cook for the fix.
|
||||
* Email addresses are now matched and opened correctly.
|
||||
Closes LP #139015
|
||||
* Double clicking a URL now selects the whole URL. Closes LP #129533
|
||||
* The default behaviour is now to open a single 80x24 terminal rather
|
||||
than four terminals in a maximised window. Closes LP #126219 and
|
||||
should force me to fix LP #87720
|
||||
* There are now hotkeys for switching between terminals, splitting
|
||||
terminals and closing them. Closes LP #149931 and #148622(thanks
|
||||
to Huanghe for patches for this)
|
||||
* If there is only one terminal, closing it will not produce a quit
|
||||
message
|
||||
* The terminator window is now able to resize smaller,
|
||||
thanks to Kees Cook for the fix.
|
||||
* Email addresses are now matched and opened correctly.
|
||||
Closes LP #139015
|
||||
* Double clicking a URL now selects the whole URL. Closes LP #129533
|
||||
* The default behaviour is now to open a single 80x24 terminal rather
|
||||
than four terminals in a maximised window. Closes LP #126219 and
|
||||
should force me to fix LP #87720
|
||||
* There are now hotkeys for switching between terminals, splitting
|
||||
terminals and closing them. Closes LP #149931 and #148622(thanks
|
||||
to Huanghe for patches for this)
|
||||
* If there is only one terminal, closing it will not produce a quit
|
||||
message
|
||||
|
||||
terminator 0.4:
|
||||
|
||||
* Architecture should be all, not any
|
||||
* Fix section
|
||||
* Add AUTHORS file
|
||||
* Rename script to drop the .py
|
||||
* Handle the gnome-terminal profile better by offering command options
|
||||
* Fudge around some resizing issues
|
||||
* Fix child spawning to avoid segfaulting zsh
|
||||
* Misc. code formatting/style improvements
|
||||
* Refactor terminal splitting into one axis agnostic function
|
||||
* Flesh out setup.py a tiny bit more
|
||||
* Architecture should be all, not any
|
||||
* Fix section
|
||||
* Add AUTHORS file
|
||||
* Rename script to drop the .py
|
||||
* Handle the gnome-terminal profile better by offering command options
|
||||
* Fudge around some resizing issues
|
||||
* Fix child spawning to avoid segfaulting zsh
|
||||
* Misc. code formatting/style improvements
|
||||
* Refactor terminal splitting into one axis agnostic function
|
||||
* Flesh out setup.py a tiny bit more
|
||||
|
||||
terminator 0.3:
|
||||
|
||||
* Implemented terminal closing, which correctly reparents its sibling
|
||||
(if any)
|
||||
* Updated documentation to reflect a serious bug with shells that aren't
|
||||
bash (or at least zsh)
|
||||
* Implemented terminal closing, which correctly reparents its sibling
|
||||
(if any)
|
||||
* Updated documentation to reflect a serious bug with shells that aren't
|
||||
bash (or at least zsh)
|
||||
|
||||
terminator 0.2:
|
||||
|
||||
* Support dynamically splitting terminals
|
||||
* Support dynamically splitting terminals
|
||||
|
||||
terminator 0.1:
|
||||
|
||||
* Fixed some distribution wording
|
||||
* Fix build-depends
|
||||
* Initial release
|
||||
* Fixed some distribution wording
|
||||
* Fix build-depends
|
||||
* Initial release
|
||||
|
||||
|
|
11
po/es.po
11
po/es.po
|
@ -8,13 +8,13 @@ msgstr ""
|
|||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2008-01-29 23:57+0000\n"
|
||||
"PO-Revision-Date: 2008-01-15 00:09+0000\n"
|
||||
"PO-Revision-Date: 2008-02-15 14:25+0000\n"
|
||||
"Last-Translator: Nicolas Valcárcel <nvalcarcel@ubuntu-pe.org>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2008-02-14 23:16+0000\n"
|
||||
"X-Launchpad-Export-Date: 2008-02-19 23:16+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#: terminator:44
|
||||
|
@ -22,23 +22,30 @@ msgid ""
|
|||
"You need to install the python bindings for gobject, gtk, gconf and pango to "
|
||||
"run Terminator."
|
||||
msgstr ""
|
||||
"Necesitas instalar los lazos python para gobject, gtk, gconf y pango para "
|
||||
"ejecutar Terminator"
|
||||
|
||||
#: terminator:63
|
||||
msgid ""
|
||||
"You need to install python bindings for libvte (\"python-vte\" in "
|
||||
"debian/ubuntu)"
|
||||
msgstr ""
|
||||
"Necesitas instalar lazos python para libvte (\"python-vte\" en debian/ubuntu)"
|
||||
|
||||
#: terminator:127
|
||||
#, python-format
|
||||
msgid "Warning: unable to find profile %s. Continue with default values..."
|
||||
msgstr ""
|
||||
"Advertencia: No es posible encontrar perfil %s. Continuar con valores por "
|
||||
"defecto..."
|
||||
|
||||
#: terminator:213
|
||||
msgid ""
|
||||
"Unknown value requested. Unable to find in gconf profile or default "
|
||||
"settings: "
|
||||
msgstr ""
|
||||
"Valor desconocido requerido. No se pudo encontrar en perfil gconf o valores "
|
||||
"por defecto "
|
||||
|
||||
#: terminator:414
|
||||
msgid "_Open Link"
|
||||
|
|
64
terminator
64
terminator
|
@ -18,7 +18,7 @@
|
|||
"""Terminator by Chris Jones <cmsj@tenshu.net>"""
|
||||
|
||||
# import standard python libs
|
||||
import os, sys, string, time, math
|
||||
import os, platform, sys, string, time, math
|
||||
from optparse import OptionParser
|
||||
|
||||
import gettext
|
||||
|
@ -85,7 +85,7 @@ class TerminatorTerm:
|
|||
'scroll_on_output' : False,
|
||||
'scrollback_lines' : 100,
|
||||
'focus' : 'sloppy',
|
||||
'child_restart' : False,
|
||||
'exit_action' : 'close',
|
||||
'palette' : '#000000000000:#CDCD00000000:#0000CDCD0000:#CDCDCDCD0000:#30BF30BFA38E:#A53C212FA53C:#0000CDCDCDCD:#FAFAEBEBD7D7:#404040404040:#FFFF00000000:#0000FFFF0000:#FFFFFFFF0000:#00000000FFFF:#FFFF0000FFFF:#0000FFFFFFFF:#FFFFFFFFFFFF',
|
||||
'word_chars' : '-A-Za-z0-9,./?%&#:_',
|
||||
'mouse_autohide' : True,
|
||||
|
@ -104,14 +104,15 @@ class TerminatorTerm:
|
|||
|
||||
matches = {}
|
||||
|
||||
|
||||
def __init__ (self, terminator, profile = None, command = None):
|
||||
def __init__ (self, terminator, profile = None, command = None, cwd = None):
|
||||
self.defaults['profile_dir'] = self.defaults['_profile_dir']%(self.defaults['gt_dir'])
|
||||
|
||||
self.terminator = terminator
|
||||
self.gconf_client = gconf.client_get_default ()
|
||||
self.command = command
|
||||
|
||||
self.cwd = cwd or os.getcwd();
|
||||
|
||||
if profile == None:
|
||||
profile = self.gconf_client.get_string (self.defaults['gt_dir'] + '/global/default_profile')
|
||||
|
||||
|
@ -147,7 +148,7 @@ class TerminatorTerm:
|
|||
self._box.show ()
|
||||
|
||||
self._scrollbar = gtk.VScrollbar (self._vte.get_adjustment ())
|
||||
if self.scrollbar_position != "hidden":
|
||||
if self.scrollbar_position != "hidden" and self.scrollbar_position != "disabled":
|
||||
self._scrollbar.show ()
|
||||
|
||||
if self.scrollbar_position == 'right':
|
||||
|
@ -171,22 +172,18 @@ class TerminatorTerm:
|
|||
#for testing purpose: drag-motion
|
||||
self._vte.connect("drag-motion", self.on_drag_motion)
|
||||
self._vte.connect("drag-data-received", self.on_drag_data_received, self)
|
||||
self._vte.connect ("composited-changed", self.on_composited_changed)
|
||||
|
||||
# self._vte.connect ("window-title-changed", self.on_vte_title_change)
|
||||
|
||||
|
||||
|
||||
exit_action = self.gconf_client.get_string (self.profile + "/exit_action")
|
||||
if not exit_action:
|
||||
if self.defaults['child_restart']:
|
||||
exit_action = "restart"
|
||||
else:
|
||||
exit_action = "close"
|
||||
exit_action = self.reconf ("exit_action")
|
||||
if exit_action == "restart":
|
||||
self._vte.connect ("child-exited", self.spawn_child)
|
||||
#gnome-terminal Bug: http://bugzilla.gnome.org/show_bug.cgi?id=518184
|
||||
#/apps/gnome-terminal/profiles/<profile name>/exit_action might be
|
||||
#set to "left" instead of close
|
||||
# LP#194771
|
||||
# We need to support "left" because some buggy versions of gnome-terminal
|
||||
# set it in some situations
|
||||
if exit_action in ("close", "left"):
|
||||
self._vte.connect ("child-exited", lambda close_term: self.terminator.closeterm (self))
|
||||
|
||||
|
@ -357,7 +354,21 @@ class TerminatorTerm:
|
|||
shell = pwd.getpwuid (os.getuid ())[6]
|
||||
args = [os.path.basename (shell)]
|
||||
|
||||
self._vte.fork_command (command = shell, argv = args, envv = [], loglastlog = login, logwtmp = update_records, logutmp = update_records)
|
||||
self._pid = self._vte.fork_command (command = shell, argv = args, envv = [], directory=self.cwd, loglastlog = login, logwtmp = update_records, logutmp = update_records)
|
||||
|
||||
def get_cwd (self):
|
||||
""" Return the current working directory of the subprocess.
|
||||
This function requires OS specific behaviours
|
||||
"""
|
||||
system = platform.system ()
|
||||
|
||||
if system == 'Linux':
|
||||
cwd = os.path.realpath ('/proc/%s/cwd' % self._pid)
|
||||
else:
|
||||
# We don't have a child cwd getter for this platform, so let
|
||||
# TerminatorTerm use its default
|
||||
cwd = None
|
||||
return (cwd)
|
||||
|
||||
def reconf (self, property):
|
||||
value = self.gconf_client.get ('%s/%s'%(self.profile, property))
|
||||
|
@ -448,8 +459,13 @@ class TerminatorTerm:
|
|||
self._vte.set_scroll_background (self.reconf ('scroll_background'))
|
||||
self._vte.set_background_transparent (False)
|
||||
if background_type == "transparent":
|
||||
self._vte.set_background_transparent (True)
|
||||
self._vte.set_background_saturation (1 - (self.reconf ('background_darkness')))
|
||||
darkness = self.reconf ('background_darkness')
|
||||
if self._vte.is_composited():
|
||||
self._vte.set_background_transparent (False)
|
||||
self._vte.set_opacity(int(darkness * 65535))
|
||||
else:
|
||||
self._vte.set_background_transparent (True)
|
||||
self._vte.set_background_saturation (1 - darkness)
|
||||
|
||||
colors = palette.split (':')
|
||||
palette = []
|
||||
|
@ -474,7 +490,7 @@ class TerminatorTerm:
|
|||
scrollbar_position = self.reconf ('scrollbar_position')
|
||||
|
||||
if scrollbar_position != self.scrollbar_position:
|
||||
if scrollbar_position == 'hidden':
|
||||
if scrollbar_position == 'hidden' or scrollbar_position == 'disabled':
|
||||
self._scrollbar.hide ()
|
||||
else:
|
||||
self._scrollbar.show ()
|
||||
|
@ -497,6 +513,9 @@ class TerminatorTerm:
|
|||
def on_gconf_notification (self, client, cnxn_id, entry, what):
|
||||
self.reconfigure_vte ()
|
||||
|
||||
def on_composited_changed (self, widget):
|
||||
self.reconfigure_vte ()
|
||||
|
||||
def on_vte_button_press (self, term, event):
|
||||
# Left mouse button should transfer focus to this vte widget
|
||||
if event.button == 1:
|
||||
|
@ -696,6 +715,13 @@ class Terminator:
|
|||
|
||||
self.window.set_property ('allow-shrink', True)
|
||||
|
||||
# Set RGBA colormap if possible so VTE can use real alpha
|
||||
# channels for transparency.
|
||||
screen = self.window.get_screen()
|
||||
colormap = screen.get_rgba_colormap()
|
||||
if colormap:
|
||||
self.window.set_colormap(colormap)
|
||||
|
||||
# Start out with just one terminal
|
||||
# FIXME: This should be really be decided from some kind of profile
|
||||
term = (TerminatorTerm (self, self.profile, self.command))
|
||||
|
@ -781,7 +807,7 @@ class Terminator:
|
|||
""" Split the provided widget on the horizontal or vertical axis. """
|
||||
|
||||
# create a new terminal and parent pane.
|
||||
terminal = TerminatorTerm (self, self.profile, None)
|
||||
terminal = TerminatorTerm (self, self.profile, None, widget.get_cwd())
|
||||
pane = (vertical) and gtk.VPaned () or gtk.HPaned ()
|
||||
|
||||
# get the parent of the provided terminal
|
||||
|
|
Loading…
Reference in New Issue