web-dev-qa-db-ja.com

アプリケーションのウィンドウが存在する場合、それを表示するショートカットを作成するにはどうすればよいですか?

Sublime Text、Terminal、Chromeを常に切り替えています。 「Alt + 1」のようなショートカットをバインドして、現在のターミナルと現在のGoogle Chromeが開きます。

現在、Google Chrome=またはターミナルを起動するたびに、新しいウィンドウが開きます。アイデアはありますか?

よろしくお願いします!

3
Whatda Fock

霧雨の答えの方法は機能しますが、いくつかの欠点があります

  • 遅延があります。押すとき Super キー、数字が表示されるまで約1秒待つ必要があります。
  • 実行するアプリケーションによっては、ランチャー内のアイテムの順序が変わる場合があります。その場合、Chromeの数は異なる場合があります。

    enter image description here

代替オプション

あなたは次のコマンドで簡単に行うことができます

wmctrl -a chrome

名前に「chrome」が含まれる最初に見つかったウィンドウが表示されます。ただし、これにより、現在書き込んでいるウィンドウも表示されます(a firefoxウィンドウ、名前: "現在のGoogle Chromeを開くショートカット..."

ウィンドウのpidを使用すると、これを防ぐことができます。したがって、私の意見では、コマンドを置く方がエレガントです。

wmctrl -ia "$(wmctrl -lp | grep "$(pgrep chrome)" | tail -1 | awk '{ print $1 }')"

ショートカットキー(Alt+1 あなたはwmctrlをインストールする必要があるという事実を考えると、うまくいくでしょう:

Sudo apt-get install wmctrl

コマンドをショートカットに追加する方法

  1. インストールwmctrl

    Sudo apt-get install wmctrl
    
  2. 小さなスクリプトを作成します(空のファイルを開き、その下にスクリプトを貼り付けます)

    #!/bin/bash
    wmctrl -ia "$(wmctrl -lp | grep "$(pgrep chrome)" | tail -1 | awk '{ print $1 }')"
    

    raise_chrome.shとして保存します

  3. スクリプトをショートカットに追加します。 [システム設定]> [キーボード]> [ショートカット]> [カスタムショートカット]を選択します。 「+」をクリックして、コマンドを追加します。

    /bin/bash /path/to/raise_chrome.sh
    

    (例)ショートカットへ Alt+1

    N.B。絶対パスを使用します。 ~

説明

コマンドは実際には this one の「変換」であり、説明も同様です。

セクション内:

"$(wmctrl -lp | grep "$(pgrep chrome)" | tail -1 | awk '{ print $1 }')"

コマンド:

wmctrl -lp

pidとwindow-idを含むすべてのウィンドウをリストします。結果はパイプされます

grep "$(pgrep chrome)"

Chromeウィンドウのすべての出現をフィルタリング(リスト)します。

そして、

tail -1

最後に作成されたウィンドウであるリストの最後の項目が表示されます(wmctrlはウィンドウを時系列でリストするため)。

awk '{ print $1 }'

最後に、(wmctrlの出力から)行の最初の文字列を取得します。これはウィンドウIDです。

コマンド:

wmctrl -ia <window_id>

次に、Chromelast createdウィンドウを表示します

注意

コマンドのchromeを他のアプリケーション(プロセス名)に置き換えて、別々のキーの組み合わせに配置できることは言うまでもありません。


編集する

アプリケーションを引数として使用する

Sublime TextTerminal、およびChromeについて言及しているので、複数のショートカットを使用して、アプリケーションを引数としてスクリプトを実行することができます。

そうするために

わずかな違いでスクリプトを使用します。

#!/bin/bash
app=$1
wmctrl -ia "$(wmctrl -lp | grep "$(pgrep "$app")" | tail -1 | awk '{ print $1 }')"

その後、ショートカットキーの下のコマンドを使用して実行します。

sh /home/jacob/Bureaublad/raise.sh sublime_text
sh /home/jacob/Bureaublad/raise.sh gnome-terminal

そして

sh /home/jacob/Bureaublad/raise.sh chrome
2
Jacob Vlijm

Alt-tabを使用して、プログラムをすばやく切り替えることができます。

次のようにSuperボタン(別名Windowsボタン)を使用することもできます。例えば。 Super + 3は、アプリランチャーで3番目のアプリを開きます。アプリに関連付けられている番号をすばやく特定するには、スーパーボタンを押し続けます。

0
drizzle