あまり役に立たないトピック/ウェブサイトを検索しました。
- 物理Xモニターを2つの仮想モニターに分割しますか?
- https://chipsenkbeil.com/notes/linux-virtual-monitors-with-xrandr/
- https://askubuntu.com/questions/150066/split-monitor-in-two/998435#998435
コンテキスト
私の画面の解像度は5120x1440ピクセルです。このモニターをデュアルモニター設定のように使用できるように、このモニターを2つの仮想画面に分割したいと思います。また、すぐに再び1つの画面のみを使用するように切り替えたいので、これらすべてをbashスクリプトで実行したいのですが、今はそれほど重要ではありません。
出力はxrandr
次のとおりです
Screen 0: minimum 8 x 8, current 5120 x 1440, maximum 32767 x 32767
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
DP-4 connected primary 5120x1440+0+0 (normal left inverted right x axis y axis) 1mm x 1mm
3840x1080 119.97 + 99.96 59.97
5120x1440 119.97* 100.00 59.98
2560x1440 59.95
2560x1080 119.88 100.00 60.00 59.94
1920x1080 119.88 100.00 60.00 59.94
1680x1050 59.95
1600x900 60.00
1440x900 59.89
1280x1024 75.02 60.02
1280x800 59.81
1280x720 60.00
1152x864 75.00
1024x768 75.03 70.07 60.00
800x600 75.00 72.19 60.32 56.25
640x480 75.00 72.81 59.94
DP-5 disconnected (normal left inverted right x axis y axis)
USB-C-0 disconnected (normal left inverted right x axis y axis)
実装する
私が見つけたチュートリアルと投稿に応じて、これが私がしなければならないことです。
xrandr --setmonitor VIRTUAL-LEFT 2560/0x1440/1+0+0 DP-4
xrandr --setmonitor VIRTUAL-RIGHT 2560/1x1440/1+2560+0 none
数字を説明する
- 仮想左
2560
半分だから5120
0
例では、軸(私の場合は1 mm)を2で割ったため、左側に丸められた結果の数値が表示されます。1440
それは私の画面の高さだから1
例では、他の軸(私の場合でも1mm)をそのまま使用しているためです。0+0
これはxrandr出力と同じなのでDP-4
つながる主要機器なので
- 仮想権利
2560
なぜなら上を見てください1
上記を参照してください。丸められた数字が必要ですが、1440
なぜなら上を見てください1
なぜなら上を見てください2560+0
これは左からのオフセットであり、例で使用されます。none
すべての例がこれを行うので
変更がないので、例の提案に従いました。
xrandr --fb 5120x1441
xrandr --fb 5120x1440
予想される結果
今、私は2つの仮想画面と常に利用可能なデスクトップを期待しています。
実際の結果
画面は半分に切り取られており、左側の画面は現在の壁紙ですが、右側の画面は完全に黒ですが、マウスをその上に移動することはできますが、設定できず、モニターには表示されません。 、私はそれについて何もできません
ここで解決策は何ですか?
答え1
コメントを考慮して、動的/タイリングウィンドウマネージャ(DWM)を使用することをお勧めします。偽のフルスクリーンパッチ。パッチを使用すると、アプリケーションは現在割り当てられているスペース(ウィンドウや半画面など)に「フルスクリーン」に移動できます。シナリオに適しています。画面の半分はゲーム用(フルスクリーンのチャック)として使用し、残りは他のアプリケーション用に使用してください。 DE(xfce、gnomeなどのデスクトップ環境)の代わりにWMを使用する方がより高度な設定です。
Linuxでは、異なる管理者/環境を使用して2つのXサーバーを同時に起動できることに注意してください。 1つはxfce(現在の設定)、もう1つはDWMです。 ++を使用してctrl2つを切り替えることができます。altF1 - F12
モニターのPBP機能に関しては、同じPCで2つの出力を使用できます。グラフィックコントローラにDisplayPort、HDMI、VGAなどの複数の出力があるようです。したがって、PCが2つの画面に接続されているかのように、DisplayPortとHDMIを同時に接続できます。したがって、コンピュータに2つの出力がある場合(おそらく)別々のケーブルが必要です。もちろん正しいタイプです。
答え2
残念ながら、いくつかの未解決の問題のため、Linuxのほとんどのウィンドウマネージャでは機能しません。
1つ目は、xserverがモニターに複数の出力を設定することを許可しておらず、モニターを持たない出力は複数のアプリケーションで無視されることです。パッチはここで提供されます:
https://gitlab.freedesktop.org/xorg/xserver/-/issues/1213
2つ目は、gtkが出力名の代わりにモニター名を使用してモニターを区別することです(2つの出力が同じモニターにある場合は機能しません)。問題を「修正」するために、ディスプレイに数字を追加する小さなパッチを作成しました。しかし、すべての状況で完全に機能するには追加の作業が必要です。
https://gitlab.gnome.org/GNOME/gtk/-/issues/2013#note_1280968
私にとっては、(ウルトラワイド)デスクトップでLinuxを使用するのは本当に残念で邪魔になります。これらの回避策は効果的ですが、アップストリームを実装する前に手動パッチが必要です。
編集する:
ソリューションを再設計し、すべての内容を文書化しました。https://gitlab.gnome.org/GNOME/gtk/-/issues/2013#note_1564528。私はそれを上流にマージしようとします。