Guake: Allow Ctrl-Tab as an accelerator

Created on 26 May 2013  Â·  40Comments  Â·  Source: Guake/guake

Allow Ctrl-Tab as an accelerator http://guake.org/ticket/247
Reported by: frabjous Owned by: somebody
Priority: minor Milestone:
Component: guake Version: 0.4.1
Keywords: keyboard shortcuts Cc:
Description

Thanks for the great software!

I would like to assign Ctrl-Tab and Ctrl-Shift-Tab as my keyboard shortcuts for switching to Next Tab and Previous Tab respectively. However, they are not allowed when I go into Guake preferences, click on Ctrl-PageUp/PageDown and it shows choose new acceleator, it simple beeps at me if I press Ctrl-Tab.

Is this because the shell itself uses Ctrl-Tab?

Low Feature Request

Most helpful comment

hi. Text search is on another issue. But feel free to have a look at the code, it's python. But I guess that issue with Ctrl-tab comes from libkeybinder and its integration on ubuntu.

So, yes, PR welcomed!

All 40 comments

Changed 4 months ago by kiz

vote +1 for this one, i've tried to use gconf-editor to assign Tab as shortcut, but it said invalid on guake properties.

Ctrl+Tab and Ctrl+Shift+Tab is normal way to switch tab in internet browser and many other applications.

Changed 4 months ago by pingou replying to kiz:

But guake is not a web browser and moving tabs in terminal is normally made with ctrl+page up/down rather than ctrl+tab

+1
is there any problems letting use ctrl+tab and ctrl+shift+tab keyboard shortcuts?

accepted

Is there something new about this feature request Stibbons ?

:+1: for ctrl+tab! :wink:

I don't see why it shouldnt work if you don't have the window manager that preempt this hotkey ?

For me at least, ctrl+tab works in every other program, so I don't think that's the issue (eg, terminator, sublime text, chrome, firefox, etc.) I'm on Ubuntu 14.04, x64.

When I open Guake Prefs, and just use ctrl+tab/ctrl+shift+tab it moves the focus from item to item in the window. But when I try to change the shortcut key, and use ctrl+tab, nothing happens - no focus changes and nothing new shows up in the shortcut.

I found ~/.gconf/apps/guake/keybindings/local/%gconf.xml but changes to this file doesn't seem to matter. In fact, it seems like it's always a version behind what I just set in guake prefs... Is it just a backup? I did try changing "Page_Up" to "Tab" and then opened the gconf prefs again, it still said page-up, and it didn't make a difference in Guake itself. I tried >Tab< too, just for kicks.

I tried gconf-editor and got farther, but only in that <Ctrl>Tab made guake prefs say "Invalid". After doing some research, I found this:
https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/162000

The relevant part is this:

"There are a couple of keys which are not candidates to be keyboard accelerators, independently of the modifiers. Tab is one of those keys, as it (with various combinations of modifiers) are reserved by gtk for its own use and the window manager.
Note that validity is decided by calling gtk_accelerator_valid, but the list of valid accelerator keys seems to be only in the source (which you can find at http://cvs.gnome.org/lxr/source/gtk+/gtk/gtkaccelgroup.c#790, in case you feel like it)

So I'm not sure you can support this on Ubuntu... :cry:

indeed it doesn't work :(

I use Ctrl+PageUp/Down which is quite easy to use

20+ years of using Ctrl+Tab is hard to erase. My fingers just do things now, I have little control over them! :wink:

For now I'm going to use guake with one tab as my "garbage shell" (the shell I go to to run apt-get or other one-off commands.) Terminator will continue to be my main terminal where I work on projects... I do like the split-screen feature it offers, so it's not like I'm all that disappointed... And the instant access of guake from a hotkey is nice... makes it easy to get to for those one-offs. :smile:

so, on your system Ctrl+Tab works on Terminator but not on Guake, right?

Correct.​

I could see the same problem with Tilda, and I think it's a problem inherent in the use of GTK.

Just as an FYI since I've searched on this for another program... here's how pidgin does it in the conversation window to for tab switching

conv_keypress_common(PidginConversation _gtkconv, GdkEventKey *event)
{
/_ ... */

if (event->state & GDK_CONTROL_MASK) {
    switch (event->keyval) {
                   /* ... */
        case GDK_Tab:
        case GDK_KP_Tab:
        case GDK_ISO_Left_Tab:
            if (event->state & GDK_SHIFT_MASK) {
                move_to_next_unread_tab(gtkconv, FALSE);
            } else {
                move_to_next_unread_tab(gtkconv, TRUE);
            }

            return TRUE;
            break;

+1 for this.

should be handled but in the next rewrite of guake

Can you say anything about when that will be? Loving Guake, but I keep using ctrl(+shift)+tab.

not planed for the moment

I must say that the lack of this feature hits me quite hard, because all important tools that I use, like IDE, Editor, Browser and what not, let me use "Ctrl+[Shift]+tab" for tab switching.

Man this is heart breaking...

I am using Guake an it is great, but the lack of the tab switch is so sad, as another user pointed it is so embedded in my brain that I find myself doing it several time a day.

Any updates on this?

I use Ctrl + page up/down which is more efficient. You could hack the code yourself to see how to make it work and submit a pull request :)

Playing with gconf right now to see, and you are absolutely right I should!

Btw Thanks for guake... It's great!

it is very convenient feature. It would be nice if it implemented.

In the meantime I've been using [Ctrl + `] and [Ctrl + ~] for next tab and previous tab respectively since it's right next door to Tab. Not exactly what I want, but a decent approximation. Ctrl + PgUp/PgDn always seemed clunky to me because I have a bad habit of only using left Ctrl.

Upvoting this, Ctrl Tab / Ctrl Shift Tab is unified way of navigation.

I cannot get this working, like if libkeybinder cannot register this shortcut. You’ll have to use the manual registration method described on the README and use the ‘guake -t’ command

This way only global keys can be registered, that's wrong, because other programs will be affected.

indeed. Maybe a bug in libkeyinder can be raised

Are you aware of terminator project ?
Though it's based ot GTK - it allows to register Ctrl+Tab as a shortcut.

So what's holding this feature back? Does anyone know of any hurdles that are stopping this from being implemented? I'm new to python in general (coming from C++) but tentatively thinking of contributing to/playing with guake as a learning ground.

I love the program but it needs this and the ability to text search via ctrl + shift + f or something.

If anyone can knowledge dump on any leads into the src I'd greatly appreciate it :)

hi. Text search is on another issue. But feel free to have a look at the code, it's python. But I guess that issue with Ctrl-tab comes from libkeybinder and its integration on ubuntu.

So, yes, PR welcomed!

Still waiting on this feature, I managed to get Ctrl+Tab as a keybinding one point but after that the keybinding stopped working.

+1

+1

+1

+1

+1

+1

Ran into this and I worked around by remapping <Super>L to <Super><Power> in Gnome. That leaves me with <Super>(<Shift>)(I|J|K|L) vacant so I made it work just like Vim. Pretty happy about it until this is done.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

hotice picture hotice  Â·  22Comments

kikecalpe picture kikecalpe  Â·  21Comments

igorog picture igorog  Â·  41Comments

naftulikay picture naftulikay  Â·  28Comments

UnsolvedCypher picture UnsolvedCypher  Â·  27Comments