The i3 FAQ has migrated to All content here is read-only.
Ask Your Question

auto-starting apps on specific outputs in multi-monitor environment

asked 2015-12-15 17:49:56 +0000

crispinus gravatar image

Hallo, I'm working with a multi-headed environment (four outputs) and successfully configured my primary head for workspaces 1-4, each other head for two workspaces via the i3 config file (workspace <x> output <y>). As soon as I try to auto-start an application via exec (e.g., firefox or thunderbird) and try to move it to another than the primary output, the respective workspace will end up on the primary output instead of the output configured for this workspace in i3 config. To further illustrate my problem, I will give you a short example. DFP1 is the primary device, DFP5, 9 and 10 are secondary heads. Example: workspace 1 output DFP1 . . . workspace 7 output DFP9

assign [class="(?i)thunderbird"] 7 exec thunderbird

Expected behaviour would be, that thunderbird appears on workspace 7, which is placed on output DFP9. Actual behaviour is, that thunderbird appears on workspace 7, which is now placed on output DFP1. Without the exec-statement, workspace 7 is placed on output DFP9 as configured. Same goes for the iceweasel-example from the user guide: exec --no-startup-id i3-msg "workspace 7; exec thunderbird; workspace 1" yields the same results as the abovementioned configuration - workspace 7 is placed on output DFP1 instead of DFP9.

Am I just misconfiguring something here or is it a bug I'm expecting?

Thanks for your help! Julian

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2015-12-17 12:53:20 +0000

basletic gravatar image

updated 2015-12-17 12:58:03 +0000

Could you please post output of:

$ xrandr -q | grep ^[[:alnum:]]

(I'm very surprised you have heads called DFP1, DFP5, DFP9 nad DFP10.)

Also, you could first try your setup with two heads, and see if it works. Furthermore, you can create minimal non-working i3 configuration, and post the config it here. Perhaps you are doing something silly. It happened to me numerous times :)

For example, assign [class="(?i)thunderbird"] 7 exec thunderbird does seem odd a bit ... I would expect it to be assign [class="(?i)thunderbird"] 7 only.

edit flag offensive delete link more


I think the inline exec works due to the way this is implemented, but you are right that it's not how it's supposed to look. :)

Airblader gravatar imageAirblader ( 2015-12-17 13:04:30 +0000 )edit

Question Tools


Asked: 2015-12-15 17:49:56 +0000

Seen: 35 times

Last updated: Dec 17