如何在 i3 启动时启动特定工作区上的应用程序?
为什么这在我的配置文件中不起作用? :
workspace 1; exec firefox; workspace 2; exec chromium; workspace 1
答案1
根据Arch 维基 i3 页面,要在特定工作区自动启动应用程序,您可以使用i3-msg
:
exec --no-startup-id i3-msg 'workspace 1:Web; exec /usr/bin/firefox'
答案2
# This is what I use in ie config
# custom variables for workspaces
set $ws1 "1< txt >"
set $ws2 "2> fm "
set $ws3 "3< Web >"
set $ws4 4
set $ws5 5
set $ws6 6
set $ws7 7
set $ws8 8
set $ws9 9
##==================================================##
# *** Workspace specific settings *** #
##=================================================##
# Assign Workspaces:
assign [class="Firefox"] $ws3
assign [class="Chromium"] $ws3
assign [class="Google-chrome-beta"] $ws3
assign [class="^Geany"] $ws1
注意:要应用配置,您可以使用:
i3-msg reload
答案3
它只是在工作区启动时自动启动,而不是在 i3 启动时自动启动,但我认为它可能很有用。
例如,要在命名的第二个工作区“web”中启动我的网络浏览器,这就是我在配置中所做的:
bindsym $mod+2 workspace 2:web; layout tabbed; exec [ $(ps h -C vimb | wc -l) = 0 ] && /usr/bin/vimb -s
当我按下键 2 时,我的网络浏览器启动,但当它已经打开时,它并没有重新启动它,它只是切换到网络工作区。
注意:布局部分有时可能会很烦人,但这不是必需的。
欲了解更多详情,请参阅我的会议
答案4
只需使用assign [class="<use your program name here e.g. - Firefox>"] $workspace<eg. 5>
.它对我有用。