0

我在我的配置文件中尝试了多种方法来让 chromium 在 $ws2 上打开,但它只是在启动时一直在 $ws1 上打开。

4

2 回答 2

3

首先你必须WM_CLASS(STRING)从 xprop 中找到。打开 xprop 并单击目标窗口,您将看到有关该窗口的信息。找到WM_CLASS(STRING)第二个字符串(对于 i3wm)然后转到 i3 wm 的配置文件.config/i3/config并像这样定义规则for_window [class="Chromium"] move to workspace $ws2 for_window [class="TelegramDesktop"] move to workspace $ws3 这里用class="String"我们之前找到的字符串替换为 xprop。在此处输入图像描述

在此处输入图像描述

或者,按照i3 用户指南第4.17节中的说明,在您的配置文件中插入声明,例如. 这将直接在指定的工作空间上打开程序。但是,对于像 Spotify 这样表现不佳的程序,该方法需要在程序打开后移动程序。assignassign [class="Chromium"] $ws2for_window ... move to workspace ...

于 2020-12-09T04:11:02.440 回答
0

要在启动期间在特定工作区上打开程序(在您的情况下为铬)并返回到您的第一个工作区:

1:将以下内容添加到您的 ~/.config/i3/config 文件中。

exec --no-startup-id i3-msg '工作区 $ws2; 执行程序;工作区 $ws1'

1a:将示例中的“$ws2”替换为您要使用的工作空间的名称。

1b:用 PROGRAM 的任何选项替换要运行(执行)的程序的名称。本节不需要引号

1c:将示例中的“$ws1”替换为您要返回的工作空间的名称,或者省略“;workspace $ws1”以进入$ws2。

1d:确保您在示例中包含单引号

2:保存编辑(我让编辑器保持打开状态,以防重启后我必须将文件改回来)

3:测试:

3a:让 i3 重新读取配置文件(我的系统上的 mod4+shift+c)

3b:就地重启 i3(我的系统上的 mod4+shift+r)

注意:我在我的配置中使用了 $ws1 $ws2 等,因为一旦配置了这些,我就可以更轻松地在一个地方而不是多个地方更改标题和真棒图标。方法无耻地从 i3 和其他人那里窃取,这是我所有的 linux 知识。:-)

于 2021-09-15T15:28:10.047 回答