Displays is a project mainly written in Python, based on the GPL-3.0 license.
Commandline tool to configure Mac OS X displaymodes
displays is a simple commandline tool to configure displaymodes and mirroring in Mac OS X.
It is easily installed via Python's setuptools.
$ sudo easy_install displays
[...]
Or run sudo python setup.py install
in the source code folder.
To list the online displays and its displaymodes, run displays list
.
$ displays list
#0 display 69676864 main online active builtin
1280 x 800
1152 x 720
1024 x 768
* 1024 x 768 Stretched
1024 x 640
800 x 600
800 x 600 Stretched
To set the mode of a display, run display set
.
$ displays set 1280x800
If several modes match the same modeline, you can pick one
using the --choose
option.
$ displays set 1024x
More than one mode matches:
0 1024 x 768
1 1024 x 768 Stretched
2 1024 x 640
Refine the request or use `--choose n' to pick canididate n
$ displays set 1024x --choose 2
Displaymodes that Mac OS X thinks are not suitable for the desktop GUI
are hidden. Use --all
(-a
) to involve them.
To change the mode of another display, use the option --display
. Example:
$ displays set 1280x1024@75 --display 1
Changes persist for the duration of the loginsession. To apply the
changes for every session, use the --permanently
flag.
displays
can also automatically configure the displaymodes as it thinks is
best:
$ displays auto
Basically, displays
will pick the top modes listed by displays list
.
A bunch of displays that show the same image are called a mirroring set. If you want display #0 to be in the same mirroring set as display #1, run:
$ displays mirror --display 0 --master 1
If you do not specify --display
or --master
, the master display
and the first other display will be mirrored.
To remove display #1 from a mirroring set, run:
$ displays unmirror --display 1
If you do not specify --display
then the main display will be unmirrored if
it is in a display set. Otherwise another display in a mirroring set will
be unmirrored.
If all listed displaymodes have the same refresh rate, the refresh rates
are hidden. The same goes for the bit depth. Hardware flags (for instance:
Stretched
) are only shown when required to differentiate modes.
To override this behaviour, use --full-modes
.