Terminator va in segmentation fault durante il drag & drop

Ho da poco scoperto Terminator (sì, lo so, era ora!) e me ne sono praticamente innamorato. Ho anche scoperto in fretta che trascinando per un po’ i terminali, Terminator va in segmentation fault. Fortunatamente esiste un “rimedio”, indicato qui: https://bugs.launchpad.net/terminator/+bug/869503/comments/15

L’unico effetto collaterale è che quando trascinerete testo o file dentro a Terminator avrete la stessa animazione del trascinamento dei terminali, un prezzo assai misero da pagare per evitare crash.

Per applicare questa modifica, aprite il file /usr/share/terminator/terminatorlib/terminal.py da root

sudo nano /usr/share/terminator/terminatorlib/terminal.py

e cercate la funzione on_drag_motion (CTRL + W e scrivete def on_drag_motion) e commentate il primo if che incontrate:

def on_drag_motion(self, widget, drag_context, x, y, _time, _data):
"""*shrug*"""
#        if gtk.targets_include_text(drag_context.targets) or
#           gtk.targets_include_uri(drag_context.targets):
#            # copy text from another widget
#            return

Salvate, chiudete e avete finito.

Per i pigri, o se dovete applicare questo rimedio su più di un computer e volete farlo con un solo comando (se non avete installato curl, fatelo, è troppo fico per non averlo!):

curl http://pastebin.com/download.php?i=X24riVAt | sudo patch /usr/share/terminator/terminatorlib/terminal.py

Bonus trick (Ubuntu)

Una volta installato Terminator su Ubuntu, mi sono accorto che aveva preso il posto di GNOME Terminal nella scorciatoia CTRL + ALT + T. Il modo migliore per correggere questo comportamento è reimpostare x-terminal-emulator al suo valore originale:

sudo update-alternatives --set x-terminal-emulator  /usr/bin/gnome-terminal.wrapper

Un pensiero su “Terminator va in segmentation fault durante il drag & drop”

  1. Grazie per aver evidenziato il workarround, confermo che questo bug è presente anche in Fedora 18, il file da modificare in questo caso si trova qui:

    /usr/lib/python2.7/site-packages/terminatorlib/terminal.py

    Mentre in CentOS 6.3 e 6.4 terminator funziona correttamente.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *