Как привязать ключ к циклу между рабочими пространствами?

Я сейчас использую 2 рабочих пространства, и я хотел бы иметь возможность циклически просматривать их, используя один ярлык. На данный момент я могу сделать Ctrl + Alt + Right , чтобы переключиться на рабочую область 2, и Left переключиться на 1, но я бы хотел, чтобы одна клавиша (или комбинация клавиш) переключалась в рабочее пространство, в котором я сейчас не нахожусь. Таким образом, мне нужен только этот ярлык, а не два.

Я использую Ubuntu на старой машине, и это вообще не позволяет мне включать compiz. Я попытался написать сценарий, используя wmctrl и xdotool, но ни один из них не работает должным образом (независимо от того, что я делаю, они оба переключатся только на рабочее пространство 1, а не на 2).

Есть предложения?

7
задан 5 October 2010 в 20:48

2 ответа

Вот сценарий, который переключается на следующую рабочую область, переносясь назад к первому после последнего. Обратите внимание, что рабочие области пронумерованы от 0, возможно, это - то, что бросило Вас, когда Вы пытались писать сценарий.

#!/bin/sh
total=$(wmctrl -d | wc -l)
current=$(wmctrl -d | sed -n 's/^\([0-9]\+\) *\*.*/\1/p')
if [ -z "$total" ] || [ -z "$current" ]; then
  echo 1>&2 "$0: Could not obtain workspace information!"
  exit 2
fi
target=$(($current+1))
if [ $target = $total ]; then
  target=0
fi
wmctrl -s $target
5
ответ дан 5 October 2010 в 20:48

Я знаю, что это старый, но вот мои версии:

Для нескольких рабочих пространств (как в ответе Жиля):

wmctrl -s `wmctrl -d | awk '$2=="*"{cur=NR} END{print cur % NR}'`

Для нескольких видов:

0
ответ дан 5 October 2010 в 20:48

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

Похожие вопросы: