2

I am using xfce terminal on one side of screen, and many tabs. But when I want to use EOF interupt (aka <ctrl>-D), then the tab will remove its position from that side of screen to the other (see image below), I have even try to set -o ignoreeof but to no avail.

Before <ctrl>-D: enter image description here

after <ctrl>-D: enter image description here

As you can see, the first tab Terminal will get off the right side of screen to the other, only because of <ctrl>-D. Is there a way to fix this bug? (that is -> the tab where is EOF interupt triggered (Terminal in my case), will stay at its position (will be fixed), without moving randomly on the screen)? This is really annoying.

I cannot find any shortcut for <ctrl>-D in ~/.config/xfce4/terminal/accels.scm, so I assume the xfce4-terminal does not interpret it? (And let it be handle as interrupt?), but not sure where the problem is.

Herdsman
  • 340
  • 3
    This is a duplicate of https://unix.stackexchange.com/q/590202/5132 . – JdeBP Jun 01 '20 at 11:15
  • @JdeBP yes, I wanted to migrated it from my second account, but I do not know how, so I post it here as well. But still could be answer here – Herdsman Jun 01 '20 at 18:08
  • But your screenshots show 2 tabs before, and again 2 tabs after. So it seems that ^D is not closing the active tab? That would be a bug. – q.undertow Jun 03 '20 at 20:12
  • @q.undertow, you right, it does not (if invoke inside terminal). It closes once it is split (as is in second picture). So as it seems - once there is no other tabs, but ONLY one, then it closes on ^D, but if there are more tabs, then happens what is in pictures. – Herdsman Jun 03 '20 at 20:17
  • I see. So probably xfce-terminal has a misfeature where it uses ^D as an app-specific shortcut and doesn't pass the real control code down to the shell running inside (which the shell would interpret as EOF and an instruction to exit). To get rid of this behavior you'll need to disable that shortcut. I don't use xfce myself (mostly) so I don't know how, but I hope this will get you started. – q.undertow Jun 03 '20 at 20:21
  • @q.undertow, unfortunatelly I have not found a shortcut in the config file (~/.config/xfce4/terminal/accels.scm) where should be, so I cannot say, if xfce4-terminal is really clobbering the shortcut. Seems to do so, but I cannot prove it – Herdsman Jun 03 '20 at 20:29
  • That does not only happen when cat is being misused, right? (Just to make sure.) This is a very striking bug if it really is so. I installed it in my system (which only has a window manager) and tried to reproduce the bug, but I could not. The tab closes just as expected. The version of xfce4-terminal is xfce4-terminal 0.8.7.4 (Xfce 4.12), what is yours? My guess is that the ^D is intercepted, if not by a custom terminal binding as you have already ruled out, then by a XFCE binding. – Quasímodo Jun 04 '20 at 16:03
  • @Quasímodo, I have the same version xfce4-terminal 0.8.7.4 (Xfce 4.12). It seems like a bug, but by what it could be intercepted? And I do know about XFCE bindings, what are they, and where is their config file? – Herdsman Jun 04 '20 at 22:42
  • I don't use XFCE, but How do I configure the Super-D keybinding in XFCE indicates that bindings can be configured. Certify yourself that you have no Ctrl-D binding in there. – Quasímodo Jun 05 '20 at 10:55

1 Answers1

0

XFCE terminal by default doesn't do anything for the Ctrl + D shortcut. In fact it's so commonly used when working with Bash it would be a major issue. Please make sure your desktop environment or other applications don't react to it.

Here you can find which application owns a global hotkey.