web-dev-qa-db-ja.com

開いているすべての端末を前面に表示するショートカット

Webページまたはエディターに移動した後、開いているすべてのターミナルを元の位置に前面に戻す方法はありますか?端末アイコンをクリックしてから、それぞれを個別に戻すのは少し面倒です。

ありがとう!

例:

  • 事前ショートカット:

Pre-image shortcut


  • ショートカット後:

Post-image shortcut

17
TomSelleck

押すことができます Alt+Tab ウィンドウ間を順方向に切り替える Alt+Shift+Tab ウィンドウを切り替えるには。このショートカットは、ほとんどすべてのグラフィカルオペレーティングシステムで機能するようになっています。うんも使用できます Super+W 同じ目的の矢印キー。

ターミナルウィンドウを前面に1つ持ってから、 Alt+~ 他のすべてのターミナルウィンドウを1つずつ前面に表示するには:

switch to windows


開いているすべてのターミナルを自動的に前面に表示するには(前に説明したように1つずつではありません)、次のスクリプトで キーボードショートカットを追加 する必要があります(スクリプトは Adobeanswer と、スクリプトのバージョンが機能していないことを考慮して改善されました):

#!/bin/bash

if [ $# -ne 1 ];then
  echo -e "Usage: `basename $0` PROGRAM_NAME\n
           For example:\n\t
           '`basename $0` gnome-terminal' for Terminal\n\t
           '`basename $0` firefox' for Firefox\n\t
           '`basename $0` chromium-browser' for Chromium\n\t..."
  exit 1
fi

pids=" $(pidof $@) "

if [ "$pids" = "  " ]; then # the string "  " contain two spaces
    echo "There is no program named '$@' opened at the moment."
    exit 1
fi

wmctrl -lp | while read identity desktop_number PID window_title; do 
    if [ "${pids/ $PID }" != "$pids" ]; then
        wmctrl -ia $identity
    fi
done

スクリプトを実行可能にすることを忘れないでください:

chmod +x /path/to/script/script_name

ターミナルでスクリプトをテストした後、以下を確認する必要があります。

9
Radu Rădeanu

以下は、タイトルがARGと一致するすべてのウィンドウを前面に表示する小さなbashスクリプトです。

bring-all-windows.bash ARG

スクリプト:

#!/bin/bash

Program=$@

wmctrl -l | while read Window; do
    if [[ "$Window" == *"$Program"* ]]; then
        echo "DEBUG: I bring $Window"
        code=`echo "$Window" | cut -f 1 -d " "`
        wmctrl -i -a $code
    fi
done

バインドできます

bring-all-windows.bash Terminal

ホットキーへ(スクリプトをログインシェルPATHに入れるか、フルパスを書き込むことを忘れないでください)。

スクリプトには、wmctrlのインストールが必要です。

編集

ターミナルから何かを実行するには、スクリプトを配置したディレクトリに移動してから、

chmod +x bring-all-windows.bash
./bring-all-windows.bash Terminal

ターミナルから確実に機能することを確認したら、それをホットキーにバインドして、フルパスを指定してください。ホットキーとスクリプトへのフルパスで動作することが確認できたら、そのディレクトリをログインシェルパスに追加してみて、そのように動作するかどうかを確認します。

8
Adobe

別の方法は、xdotoolを使用することです。 Sudo apt-get install xdotoolが必須なので、最初にインストールする必要があります。

xdotool search --class "terminal" windowactivate %@
xdotool search --name "braiam@bt" windowactivate %@

最初は*terminal*というバイナリを探し、2番目は*braiam@bt*というタイトルのウィンドウを探します。それをbashスクリプトに入れると:

#!/bin/bash

set -e
program=$@

xdotool search --class '$program' windowactivate %@
xdotool search --name '$program' windowactivate %@

これについては、xdotoolマニュアルで詳しく知ることができます。

0
Braiam

アーカイブの場合: https://Gist.github.com/psi-4ward/18c3a596d28a3cfa772101af755545df

最近使用したアプリケーションを尊重するスクリプト

0
Psi

Ubuntuデスクトップでは、デスクトップの左側の余白にアイコンが垂直に配置されています。端末アイコンを左クリックすると、すべての端末ウィンドウが表示されます。ターミナルアイコンを右クリックすると、メニューのリストが表示され、上部に[新しいターミナル]が表示され、リストの下部に開いているすべてのターミナルが表示されます。どちらをアクティブな端末にするかを選択できます。

この同じ方法は、ブラウザなどの他のアプリケーションでも機能するはずです。

0
Kemin Zhou