i3wmを使用して*新しい*ワークスペースで特定のアプリケーションを開く

i3wmを使用して*新しい*ワークスペースで特定のアプリケーションを開く

私の問題はこれですこれ- しかし、特定のワークスペースで特定のアプリケーションを開けたくないので、毎回各インスタンスが新しいワークスペースで開くことを望みます。

リンクされた質問のOPは、ワークスペース2でFirefoxを開き、ワークスペース1でChromiumなどを開こうとします。

新しいインスタンスごとに、新しいワークスペースでテキストエディタ(Sublime Text)の新しいインスタンスを開きたいです。可能ですか?

解決策:

修正された形式で許可された回答を使用しました。

# .bashrc
...
function sublime {
  i3-msg workspace $(($(i3-msg -t get_workspaces | tr , '\n' | grep '"num":' | cut -d : -f 2 | sort -rn | head -1) + 1))
  /usr/bin/sublime_text_3/sublime_text $1
}

これにより、次のように使用できます。

$ sublime /path/to/file

そして、私のドットファイルを複数のコンピュータで使用しているので、すべてを一箇所に置くのが最善です!

ベストアンサー1

これを行うには、小さなBASHスクリプトを使用できます。

これにより、新しいワークスペースが開きます(次から取得)。ここ) 次のコマンドを実行します。

#!/bin/bash
i3-msg workspace $(($(i3-msg -t get_workspaces | tr , '\n' | grep '"num":' | cut -d : -f 2 | sort -rn | head -1) + 1))
sublime-text

以下にこのスクリプトを作成して/usr/bin名前を付けます。sublime-new、実行権限を付与すると、端末エミュレータから起動できるようになります。奇妙なことは、でスクリプトを実行するときにdmenu最初にプログラムを開いてからワークスペースを変更することです。

おすすめ記事