it-swarm.com.de

xrandr Anzeigeeinstellungen erweitern

Ich habe einen alten Laptop Lenovo E330 mit Xubunu 16.04

Ich habe 2 externe Displays angeschlossen, eines mit VGA und eines mit HDMI-Kabel.

Ich versuche, einen einfachen Befehl zu schreiben, um meinen Desktop auf zwei externe Displays auszudehnen. Der Deckel bleibt geschlossen, sodass ich nur zwei Displays gleichzeitig laufen lassen kann.

    Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
LVDS-1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 293mm x 165mm
   1366x768      60.03*+
   1360x768      59.80    59.96  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   960x600       60.00  
   960x540       59.99  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   800x512       60.17  
   700x525       59.98  
   640x512       60.02  
   720x450       59.89  
   640x480       60.00    59.94  
   680x384       59.80    59.96  
   576x432       60.06  
   512x384       60.00  
   400x300       60.32    56.34  
   320x240       60.05  
VGA-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080     60.00*+
   1680x1050     59.95  
   1280x1024     75.02    60.02  
   1440x900      74.98    59.89  
   1024x768      75.03    60.00  
   800x600       75.00    60.32  
   640x480       75.00    72.81    66.67    59.94  
   720x400       70.08  
HDMI-1 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      74.98    59.90  
   1024x768      75.03    60.00  
   800x600       75.00    60.32  
   640x480       75.00    72.81    66.67    59.94  
   720x400       70.08  
DP-1 disconnected (normal left inverted right x axis y axis)

Der Befehl sollte so einfach sein wie einer dieser Befehle.

xrandr --auto --output VGA-1 --mode 1920x1080 --right-of HDMI-1

oder

xrandr --output LVDS-1 --off  
xrandr --output VGA-1 --mode 1920x1080
xrandr --output HDMI-1 --mode 1920x1080

Wie soll das richtige Skript aussehen?

Ist es möglich, den Laptop-Bildschirm zu aktivieren, nachdem ich die externen Anzeigen getrennt habe? Denn momentan bleibt es auch so, wenn ich die externen Displays abtrenne und das System neu starte; (

2
P75

Ich benutze das jetzt. Es funktioniert auf Xubuntu mit awesome-wm. Diese xrandr-Funktionen wechseln die Monitore und lassen den wm die Tags verschieben, die wie alte Desktops aussehen. Diese werden als Ordnerregisterkarten am oberen Rand angezeigt. Wie in meinem Fall mag es der Fenstermanager manchmal nicht, wenn er aufgefordert wird, ihn einzupacken und sich zu bewegen.

Sie sollten den Fenstermanager neu starten, bevor Sie die Bildschirme erneut verschieben. Stellen Sie also jedes Mal, wenn Sie xrandr aufrufen, sicher, dass Sie den Fenstermanager neu starten.

fügen Sie diese Zeilen in Ihre .zshrc-Datei ein, oder es funktioniert auch in bashrc, aber das habe ich nicht versucht.

switch1() {
    xrandr --output VGA1 --mode 1920x1080 --primary --output HDMI-1 --mode 1920x1080 --left-of LVDS1 --output LVDS1 --mode 1280x800 --left-of VGA1;
    sleep 2;
    echo 'customization.orig.restart()' | awesome-client;
    xrandr --output VGA1 --mode 1920x1080 --output HDMI-1 --mode 1920x1080 --left-of LVDS1 --output LVDS1 --primary --mode 1280x800 --left-of VGA1;
    sleep 2;
    echo 'customization.orig.restart()' | awesome-client;
    xrandr --output VGA1 --off --output HDMI1 --off;
    echo 'customization.orig.restart()' | awesome-client;
    sleep 1;
}

switch2() {
    xrandr --output VGA1 --mode 1920x1080 --output HDMI-1 --mode 1920x1080 --left-of LVDS1 --output LVDS1 --primary --mode 1280x800 --left-of VGA1;
    sleep 2;
    echo 'customization.orig.restart()' | awesome-client;
    xrandr --output VGA1 --mode 1920x1080 --primary --output HDMI-1 --mode 1920x1080 --left-of LVDS1 --output LVDS1 --mode 1280x800 --left-of VGA1;
    sleep 2;
    echo 'customization.orig.restart()' | awesome-client;
    xrandr --output LVDS1 --off;
    echo 'customization.orig.restart()' | awesome-client;
    sleep 1;
}

Das nächste Erklären von customization.orig.restart () ist nur ein spezieller Teil, den ich hatte. Die AwesomeWM-Funktion awesome.restart() würde für diejenigen funktionieren, die keine modifizierte rc.lua-Konfiguration verwenden.

Nur damit Sie alles haben, fand ich dies Diskussion über das Verschieben von Tags auf einen neuen Bildschirm und verwendete die benannten Funktionen zum Verschieben von Tags hier , die überall in der rc.lua oder include verwendet werden können eine custom.lua-Datei für zusätzliche Funktionen, die Sie möglicherweise hinzufügen. Stellen Sie sicher, dass eine custom.lua in der rc.lua-Datei enthalten ist.

1
Nightsdark

Öffnen Sie zuerst das Dienstprogramm für die Energieeinstellungen und wählen Sie Nichts tun , wenn der Laptopdeckel geschlossen ist. Alle Einstellungen> Power

Dann müssen nur noch ein paar Aliase zu .bash_aliases hinzugefügt werden

# bei geschlossenem Deckel wird dies erweitert angezeigt ,

alias 2mon='xrandr --output HDMI-1 --auto --primary --rotate normal --output VGA-1 --preferred --rotate normal --left-of VGA-1 --output LVDS-1 --off'

# nur Laptop vor dem Trennen externer Monitore ausführen:

alias 1mon='xrandr --output LVDS-1 --auto --rotate normal --output HDMI-1 --off --output VGA-1 --off'
0
Axios

Sie müssen zwei Schritte ausführen, um Ihr Ziel zu erreichen.

einen, um beide externen Displays ein- und auszuschalten.

und die andere, um die durch das Skript vorgenommene Änderung rückgängig zu machen.

Also erstelle script1.sh und mache es mit folgendem Inhalt ausführbar.

#!/bin/bash
    xrandr --output LVDS-1 --off  
    xrandr --output VGA-1 --mode 1920x1080 --auto
xrandr --output HDMI-1 --mode 1920x1080 --auto

und script2.sh mit folgenden Inhalten und machen diese auch ausführbar.

#!/bin/bash
xrandr --output VGA-1 --off
xrandr --output HDMI-1 --off
xrandr --output LVDS-1 --mode 1366x768 --auto

Sie können den scipt1.sh ausführen, nachdem Sie die externen Anzeigen angeschlossen haben, und Sie müssen den script2.sh ausführen, bevor Sie die externen Anzeigen entfernen.

Beachten Sie, dass die obige Methode Ihren Bildschirm gleichzeitig auf zwei separate Bildschirme spiegelt. Wenn Sie einen separaten Bildschirm anstelle der Spiegelung benötigen, können Sie entweder die Option --left-of oder --right-of verwenden und die Gerätenamen entsprechend angeben.

Sie können auch überprüfen, ob Ihre Hardware drei Displays gleichzeitig unterstützt, indem Sie das Laptop-Display zusammen mit den beiden Monitoren einschalten.

0
ran