コンテキスト

コンテキスト

あまり役に立たないトピック/ウェブサイトを検索しました。

コンテキスト

私の画面の解像度は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。私はそれを上流にマージしようとします。

分割画面のスクリーンショット

関連情報