-`--default <profile>`.
-
-Another script called `postswitch` can be placed in the directory
-`~/.config/autorandr` (or `~/.autorandr` if you have an old installation) as
-well as in all profile directories: The scripts are executed after a mode
-switch has taken place and can notify window managers or other applications
-about it. The same holds for `preswitch`, which is executed before the switch
-takes place, and `postsave`, which is executed after a profile was
-stored/altered.
-
-All scripts can also be placed in any of the `$XDG_CONFIG_DIRS`. In addition to
-the script names themselves, any executables in subdirectories named
-`script_name.d` (e.g. `postswitch.d`) are executed as well. In scripts, some of
-autorandr's state is exposed as environment variables prefixed with `AUTORANDR_`.
-The most useful one is `$AUTORANDR_CURRENT_PROFILE`.
-
-## Apply configuration on login
-With recent versions of autorandr you typically do not need to add autorandr to `~/.xprofile`, since an autostart configuration file will be installed at `/etc/xdg/autostart/autorandr.desktop` by the makefile. It will select an appropriate profile automatically.
-
-If you need to customize this behaviour, you can always disable or modify it by placing an alternative desktop file with the same name in `~/.config/autostart` or by using a GUI configuration tool for autostart like `gnome-session-properties`.
+`--default <profile>`. The system-wide installation of autorandr by default
+calls autorandr with a parameter `--default default`. There are three special,
+virtual configurations called `horizontal`, `vertical` and `common`. They
+automatically generate a configuration that incorporates all screens
+connected to the computer. You can symlink `default` to one of these
+names in your configuration directory to have autorandr use any of them
+as the default configuration without you having to change the system-wide
+configuration.
+
+You can store default values for any option in an INI-file in
+`~/.config/autorandr/settings.ini` in a section `config`. The most useful
+candidate for doing that is `skip-options`, if you need it.
+
+## Advanced usage
+
+### Hook scripts
+
+Three more scripts can be placed in the configuration directory (as
+(as defined by the [XDG spec](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html),
+usually `~/.config/autorandr` or `~/.autorandr` if you have an old installation
+for user configuration and `/etc/xdg/autorandr` for system wide configuration):
+
+- `postswitch` is executed *after* a mode switch has taken place. This can be
+ used to notify window managers or other applications about the switch.
+- `preswitch` is executed *before* a mode switch takes place.
+- `postsave` is executed after a profile was stored or altered.
+- `predetect` is executed before autorandr attempts to run xrandr.
+
+These scripts must be executable and can be placed directly in the configuration
+directory, where they will always be executed, or in the profile subdirectories,
+where they will only be executed on changes regarding that specific profile.
+
+Instead (or in addition) to these scripts, you can also place as many executable
+files as you like in subdirectories called `script_name.d` (e.g. `postswitch.d`).
+
+If a script with the same name occurs multiple times, user configuration
+takes precedence over system configuration (as specified by the
+[XDG spec](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html))
+and profile configuration over general configuration.
+
+As a concrete example, suppose you have the files
+
+- `/etc/xdg/autorandr/postswitch`
+- `~/.config/autorandr/postswitch`
+- `~/.config/autorandr/postswitch.d/notify-herbstluftwm`
+- `~/.config/autorandr/docked/postswitch`
+
+and switch from `mobile` to `docked`. Then
+`~/.config/autorandr/docked/postswitch` is executed, since the profile specific
+configuration takes precedence, and
+`~/.config/autorandr/postswitch.d/notify-herbstluftwm` is executed, since
+it has a unique name.
+
+If you switch back from `docked` to `mobile`, `~/.config/autorandr/postswitch`
+is executed instead of the `mobile` specific `postswitch`.
+
+In these scripts, some of autorandr's state is exposed as environment variables
+prefixed with `AUTORANDR_`. The most useful one is `$AUTORANDR_CURRENT_PROFILE`.
+
+If you experience issues with xrandr being executed too early after connecting
+a new monitor, then you can use a `predetect` script to delay the execution.
+Write e.g. `sleep 1` into that file to make autorandr wait a second before
+running `xrandr`.
+
+### Wildcard EDID matching
+
+The EDID strings in the `~/.config/autorandr/*/setup` files may contain an
+asterisk to enable wildcard matching: Such EDIDs are matched against connected
+monitors using the usual file name globbing rules. This can be used to create
+profiles matching multiple (or any) monitors.
+
+## Changelog
+
+**autorandr 1.5**
+
+* *2018-01-03* Add --version
+* *2018-01-04* Fixed vertical/horizontal/clone-largest virtual profiles
+* *2018-03-07* Output all non-error messages to stdout instead of stderr
+* *2018-03-25* Add --detected and --current to filter the profile list output
+* *2018-03-25* Allow wildcard matching in EDIDs
+
+**autorandr 1.4**
+
+* *2017-12-22* Fixed broken virtual profile support
+* *2017-12-14* Added support for a settings file
+* *2017-12-14* Added a virtual profile `off`, which disables all screens
+
+**autorandr 1.3**
+
+* *2017-11-13* Add a short form for `--load`
+* *2017-11-21* Fix environment stealing in `--batch` mode (See #87)
+
+**autorandr 1.2**
+
+* *2017-07-16* Skip `--panning` unless it is required (See #72)
+* *2017-10-13* Add `clone-largest` virtual profile
+
+**autorandr 1.1**
+
+* *2017-06-07* Call systemctl with `--no-block` from udev rule (See #61)
+* *2017-01-20* New script hook, `predetect`
+* *2017-01-18* Accept comments (lines starting with `#`) in config/setup files
+
+**autorandr 1.0**
+
+* *2016-12-07* Tag the current code as version 1.0.0; see github issue #54
+* *2016-10-03* Install a desktop file to `/etc/xdg/autostart` by default