14.10 классический метагород гнома не может подключить сочетание клавиш к двоичному

Я пытаюсь заставить эффект Aero Snap работать на Ubuntu 14.10, используя Gnome Classic Metacity.

Я нашел команду, которая работает, если я выполняю в окне терминала:

wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -e 0,0,0,`xwininfo -root | grep Width | awk '{ print (($2/2))}'`,`xwininfo -root | grep Height | awk '{ print $2 }'`

И я могу запустить его с sleep 1 чтобы успеть переключиться на окно я хочу изменить размер:

sleep 1 && wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -e 0,0,0,`xwininfo -root | grep Width | awk '{ print (($2/2))}'`,`xwininfo -root | grep Height | awk '{ print $2 }'`

Это работает хорошо.

Я также могу запустить его как скрипт bash в моих $HOME/bin/left.sh и $HOME/bin/right.sh или более коротких, Alt+F2 затем $HOME/bin/aaa для левого и $HOME/bin/fff за право. Он также работает в активном окне за Alt+F2 меню.

Теперь я хочу подключить эту команду к сочетанию клавиш. Я старался:

System Settings -> Keyboard -> Shortcuts -> Custom Shortcuts -> "Aero Left" - Super+Left

который я ссылаюсь на /bin/bash /home/myusername/bin/aero_left.sh с командной строкой выше. Но это не имеет никакого эффекта. Опять же, запуск команды bash в окне терминала работает, а сочетание клавиш - нет.

На самом деле, мало что происходит для любого из Custom Shortcuts Я пытаюсь настроить:

/usr/bin/mplayer /usr/share/aisleriot/sounds/splat.ogg

or

/bin/bash -c "/usr/bin/mplayer /usr/share/aisleriot/sounds/splat.ogg"

и попробуйте подключить его к любой комбинации клавиш, она не работает...

ОБНОВЛЕНИЕ: я пытался xbindkeys и ни один из моих примеров не работает. Все еще загипнотизированы относительно того, почему Custom Shortcuts не делай много. Ждем решения.

[hpenvy15 ~] $ mkdir ~/bin ; ls -l -d1 ~/bin | wc -l
1
[hpenvy15 ~] $ cat > ~/bin/left.sh
#!/bin/bash
sleep 0.1 && wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -e 0,0,0,`xwininfo -root | grep Width | awk '{ print (($2/2))}'`,`xwininfo -root | grep Height | awk '{ print $2 }'`
^C
[hpenvy15 ~] $ cat > ~/bin/right.sh
#!/bin/bash
sleep 0.1 && wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -e 0,`xwininfo -root | grep Width | awk '{ print (($2/2)+5) ",0," (($2/2)) }'`,`xwininfo -root | grep Height | awk '{ print $2 }'`
^C

[hpenvy15 ~] $ sudo apt-get install xbindkeys
Reading package lists... Done
Building dependency tree       
Reading state information... Done
xbindkeys is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade.

printf '"bash $HOME/bin/left.sh"\n Mod4+Super_L+Left\n' > ~/.xbindkeysrc
printf '"bash $HOME/bin/right.sh"\n Mod4+Super_L+Right\n' >> ~/.xbindkeysrc
xbindkeys

Если я тогда наберу control+alt+b Я слышу звук барабана, но ничего не происходит.

Есть идеи?

1 ответ

Решение

Вот шаги:

  1. Создайте файл сценария, который начинает строку #!/bin/bash с последующим указанием вашей команды в вопросе.
  2. sudo apt-get install xbindkeys
  3. Тип:

    printf '"bash $HOME/bin/left.sh"\n Control+Alt+A\n' > ~/.xbindkeysrc 
    printf '"bash $HOME/bin/right.sh"\n Control+Alt+F\n' >> ~/.xbindkeysrc
    
    xbindkeys
    

Теперь проверьте, работает ли он.

Я надеюсь, что это сработает.

Другие вопросы по тегам