The syntax :0.NUMBER
specifies a screen number on display 0. The concept of screen was intended to describe multiple monitors on the same display, but an application can't be moved from one display to another, so it's been pretty much abandoned. Your monitors are all on screen 0, i.e. :0.0
, which is equivalent to :0
since the only screen is the default screen.
All the monitors are placed on a rectangular canvas. In a two-monitor configuration, one monitor has its top left corner at position 0x0 and the other has its top left corner at position 0xH (vertical arrangement) or Wx0 (horizontal arrangement) where WxH is the size of the first monitor.
Well-behaved application take an option -geometry
or --geometry
that allows the user to specify the position and size of the application's main window. For example, with two 1600x1200 monitors in a horizontal arrangement, xterm -geometry +1600+0
launches xterm at the top left of the right-hand monitor. Unfortunately Cheese is not well-behaved¹.
If you always want to run the application at a specific position, you can use Devil's Pie to make it reposition the window when it's created. With devilspie2, create a file ~/.config/devilspie2/cheese-geometry.lua
containing
if (get_application_name() == "Cheese" and get_window_name() == "Cheese") then
set_window_position(1600, 0);
end
With the original Devil's Pie, create a file ~/.devilspie/cheese-geometry.ds
containing
(if (and (is (application_name) “Cheese”) (is (window_name) “Cheese”))
(geometry "+100+1"))
Note that your window manager may override the position — the window manager has final say when positioning windows. If your window manager overrides the position, hopefully it has a way to configure it.
¹ It's a GNOME application. GNOME believes in removing any ability for users to choose how programs behave.
--display
only sets the display. Multiple heads of the same display are still the same display.