You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
config settings lost when I cancel "Close multiple terminals" dialog #210
I have a Terminator window that launches another Terminator window with a specific profile via terminator -l .... This second window has 5 horizontal terminals. If I close the second window with the x in the top-right corner, I get the expected dialog "Close multiple terminals?". If I click 'Cancel' in this dialog, Terminator silently zeros out the ~/.config/terminator/config file and displays this message in the first Terminator window:
ConfigBase::save: Unable to save config: 'ascii' codec can't encode character '\u21d2' in position 2252: ordinal not in range(128)
After this, opening a new Terminator window uses default settings. As far as I can tell, all config settings are permanently lost.
The U+21D2 mentioned in the error is displayed in several of the 5 horizontal terminals in the second Terminator.
Thanks for helping with this issue. ð Unfortunately, I can't post the config publicly because it contains sensitive information. It may be helpful to know that file says it is UTF-8 Unicode text. The fist 3 bytes are 5b 67 6c, so no UTF marker. It does contain the U+21D2 character (hex bytes e2 87 92) in a few places, all of them on a command = ... line. Is this not supported?
Hmm, can you post the command that's causing it to fail? Do you need those specific unicode characters in the command? I just need some way of reproducing the bug to be able to debug it.
I have found a way to reproduce what I think is the same bug, but without a customized config file:
close all instances of Terminator
delete or rename ~/.config/terminator/config
open Terminator and select Preferences > Layouts > Terminal child1 and in the Custom command box type: echo fiance; sleep 1h
click close and then close Terminator
run Terminator again; it should display "fiance"
repeat all of the above steps, but this time in the command box, copy-paste (note the accent on the 'e'): echo fiancÃĐ; sleep 1h
I would expect it to act the same both times (except for the accented 'e'), but instead it opens with a default configuration and has a zero-byte ~/.config/terminator/config file
I'm just going to assume that this was part of the porting to python3, and the different behaviour when dealing with unicode strings that don't map to ascii.
I have found a way to reproduce what I think is the same bug, but without a customized config file:
close all instances of Terminator
delete or rename ~/.config/terminator/config
open Terminator and select Preferences > Layouts > Terminal child1 and in the Custom command box type: echo fiance; sleep 1h
click close and then close Terminator
run Terminator again; it should display "fiance"
repeat all of the above steps, but this time in the command box, copy-paste (note the accent on the 'e'): echo fiancÃĐ; sleep 1h
I would expect it to act the same both times (except for the accented 'e'), but instead it opens with a default configuration and has a zero-byte ~/.config/terminator/config file
I can't reproduce this in Terminator 2.0 on Ubuntu 20.04.
Does sleep 1h have to finish?
The sleep 1h does not have to finish. It is just to keep the window open so you can view the output. If Terminator displays fiancÃĐ (with the accent), then it would seem that Terminator 2.0 does not have this bug. I"m using Terminator 1.91, which is what comes with Ubuntu 20.04.
Activity
mattrose commentedon Sep 18, 2020
can you attach a copy of your config? It looks like it got corrupted somehow.
bitinerant commentedon Sep 18, 2020
Thanks for helping with this issue. ð Unfortunately, I can't post the config publicly because it contains sensitive information. It may be helpful to know that
filesays it isUTF-8 Unicode text. The fist 3 bytes are 5b 67 6c, so no UTF marker. It does contain the U+21D2 character (hex bytes e2 87 92) in a few places, all of them on acommand = ...line. Is this not supported?mattrose commentedon Sep 20, 2020
Hmm, can you post the command that's causing it to fail? Do you need those specific unicode characters in the command? I just need some way of reproducing the bug to be able to debug it.
bitinerant commentedon Sep 21, 2020
I have found a way to reproduce what I think is the same bug, but without a customized config file:
echo fiance; sleep 1hecho fiancÃĐ; sleep 1hI would expect it to act the same both times (except for the accented 'e'), but instead it opens with a default configuration and has a zero-byte ~/.config/terminator/config file
mattrose commentedon Sep 21, 2020
Thank you, that'll make it much easier to work on.
mattrose commentedon Oct 1, 2020
I'm just going to assume that this was part of the porting to python3, and the different behaviour when dealing with unicode strings that don't map to ascii.
planet36 commentedon Oct 10, 2020
I can't reproduce this in Terminator 2.0 on Ubuntu 20.04.
Does
sleep 1hhave to finish?bitinerant commentedon Oct 10, 2020
The
sleep 1hdoes not have to finish. It is just to keep the window open so you can view the output. If Terminator displaysfiancÃĐ(with the accent), then it would seem that Terminator 2.0 does not have this bug. I"m using Terminator 1.91, which is what comes with Ubuntu 20.04.mattrose commentedon Oct 10, 2020
Awesome, I'm going to close it then.
bitinerant commentedon Oct 13, 2020
I decided to check this myself. I can confirm that this bug no longer exists in the current version (2.01, cloned 2020-10-12). ð
py-terminator: Upgrade to 2.1.0
py-terminator: Upgrade to 2.1.0
py-terminator: Upgrade to 2.1.0
py-terminator: Upgrade to 2.1.0