Xfceでは、[設定]-> [ディスプレイ]を実行して、好みの出力モニターを変更できます。私が見つけられなかったのは、利用可能な出力の変化に合わせて自動的に調整することです。
たとえば、DVIディスプレイを使用しているがラップトップのドッキングを解除した場合、XFCEは、ディスプレイが機能していないことを自動的に認識せず、出力を変更します。 Gnomeがこれを行いましたが、どのサービスを使用するかはわかりません。少なくとも1つの作業出力が常に自動的に行われるようにする方法が必要です。
サイドノート:これは私の別の質問に関連しています デスクトップ環境ではなくウィンドウマネージャを使用する場合、自動ドック/ドック解像度の更新を取得するにはどうすればよいですか? ですが、xfceではなく任意の汎用ウィンドウマネージャー。
$ xrandr --auto
xrandrのmanページから:
-auto:接続されているが無効な出力の場合、優先モード(または優先モードがない場合は96dpiに近い値)を使用してそれらを有効にします。切断されているが有効な出力の場合、これはそれらを無効にします。
この質問に対する回答は、Unix StackExchange: https://unix.stackexchange.com/questions/101809/how-can-i-automatically-update-my-monitor-layout-in-xfce/120945#120945 ただし、この質問を別のサイトの質問の複製としてマークすることはできないため、ここで答えをコピーします。
1つの方法はudevルールを作成することですが、よりポータブルなものが欲しかったので、このbashスクリプトがあります。 inotifywaitのサポートに依存し、何らかの種類のループを持たず、効率的であると見なされます。
external-lcd.sh
#!/bin/sh
# inspired of:
# http://unix.stackexchange.com/questions/4489/a-tool-for-automatically-applying-randr-configuration- when-external-display-is-p
# http://ozlabs.org/~jk/docs/mergefb/
# http://superuser.com/questions/181517/how-to-execute-a-command-whenever-a-file-changes/181543#181543
export MONITOR2=/sys/class/drm/card0-VGA-1/status
while inotifywait -e modify,create,delete,open,close,close_write,access $MONITOR2;
dmode="$(cat $MONITOR2)"
do
if [ "${dmode}" = disconnected ]; then
/usr/bin/xrandr --auto
echo "${dmode}"
Elif [ "${dmode}" = connected ];then
/usr/bin/xrandr --output VGA1 --auto --right-of LVDS1
echo "${dmode}"
else /usr/bin/xrandr --auto
echo "${dmode}"
fi
done
ファイルを実行可能にすることを忘れないでください(chmod +x external-lcd.sh
)。次に、DEを起動するたびに起動します。
これをarchlinuxで使用しているので、動作するはずです。 xrandrパラメーターを変更するか、arandr構成を使用するように交換できます。