Window-Management

使用 i3wm 在 new 工作區中打開特定應用程序

  • June 21, 2014

我的問題是這樣的——但我不想在特定的工作空間上打開給定的應用程序,我希望每個實例每次都在新的工作空間上打開。

連結到問題中的 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

也因為我在多台電腦上使用我的點文件,所以將所有內容包含在一個地方會更好!

你可以使用一個小的 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,它首先打開程序,然後更改工作區。

引用自:https://unix.stackexchange.com/questions/138425