Disper is an on-the-fly display switch utility. It is intended to be used just before giving a presentation with a laptop, when all one wants is that the beamer, which has just been connected, is able to show whatever you prepared.
Disper gives you the option to either clone all detected displays, or extend the desktop to them. Resolutions are automatically detected. For cloning, the highest common resolution supported by all displays is chosen; for extending every display device gets its highest supported resolution. For special setups requiring more detailed control, one can still use the standard display configuration utilites.
At the moment nVidia cards are supported, and a basic XRandR backend is in place. The latter is not fully complete and untested since I don't have the hardware.
Generally, one would bind disper -c to a shortcut key (or if you rather like to extend your desktop, use disper -e). Without an external display or beamer connected, you'll get your laptop's full resolution; when an external display is present, it switches to clone mode after the keypress (or extend, if you configured it that way).
Some work is being done to create a graphical user-interface. For now I hope that it'll save you some time at the beginning of presentations.
Development code is available at the disper bazaar branch. Packages are available as part of Debian. Ubuntu packages are available at the disper package archive, packages for ArchLinux are available at the arch users repository, and it seems there are openSUSE packages as well. For other distributions you can download the source below and run cli.py in the directory src/, or just make install.
Please see the bug tracker for a list of current issues. Additionally, the following is the case: