web-dev-qa-db-fra.com

xrandr étendre les paramètres d'affichage

J'ai un vieil ordinateur portable Lenovo E330 sous Xubunu 16.04

J'ai connecté 2 écrans externes, l'un avec VGA et l'autre avec un câble HDMI.

J'essaie d'écrire une simple commande pour étendre mon bureau à deux écrans externes, le couvercle restera fermé, donc je ne lancerai que deux écrans simultanément.

    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)

La commande devrait être quelque chose de simple comme l'un de ceux-ci.

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

ou

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

A quoi devrait ressembler le bon script?

Est-il possible d'activer l'écran de l'ordinateur portable après avoir déconnecté les écrans externes? Parce qu’il reste actuellement même lorsque je déconnecte les écrans externes et que je redémarre le système (

2
P75

J'utilise maintenant ceci. Cela fonctionne sur Xubuntu avec awesome-wm. Ces fonctions xrandr commutent les moniteurs et permettent au wm de déplacer les balises qui sont comme des bureaux alternatifs; qui sont affichés sous forme d'onglets de dossier sur le bord supérieur. Comme dans mon cas, parfois, le gestionnaire de fenêtres n'aime pas qu'on lui dise de le ranger et de le déplacer.

L'idée est de redémarrer le gestionnaire de fenêtres avant de déplacer à nouveau les écrans. Donc, chaque fois que vous appelez xrandr, assurez-vous de redémarrer le gestionnaire de fenêtres.

mettez ces lignes dans votre .zshrc ou cela fonctionnera peut-être aussi dans bashrc mais je n’ai pas essayé cela.

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;
}

Ensuite, en expliquant la personnalisation.orig.restart () est juste une partie spéciale que j'ai eue. La fonction AwesomeWM awesome.restart() fonctionnerait à l’instant pour ceux qui n’utilisent pas une configuration rc.lua modifiée.

Pour que vous ayez tout ce que j'ai trouvé ceci discussion sur le déplacement des balises vers un nouvel écran et utilisé les fonctions de transfert des balises nommées trouvées ici qui peut aller n'importe où dans le fichier rc.lua ou inclure un fichier custom.lua pour des fonctions supplémentaires que vous pourriez ajouter. Assurez-vous que custom.lua est inclus dans le fichier rc.lua.

1
Nightsdark

Commencez par ouvrir l'utilitaire de paramétrage d'alimentation et sélectionnez ne rien faire lorsque le couvercle de l'ordinateur portable est fermé. Tous les paramètres> Alimentation

Il ne reste plus qu’à ajouter quelques alias à .bash_aliases

# pour le couvercle fermé, ce seront des écrans étendus ,

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

# ordinateur portable uniquement exécuté avant de déconnecter les moniteurs externes :

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

Vous devez faire deux scripts pour atteindre votre objectif.

un pour allumer les deux écrans externes et éteindre l'écran de votre ordinateur portable.

et l'autre pour annuler la modification effectuée par le script un.

Donc, créez script1.sh et rendez-le exécutable avec le contenu suivant.

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

et script2.sh avec le contenu suivant et rend cela trop exécutable.

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

Vous pouvez exécuter le scipt1.sh après avoir connecté les écrans externes et vous devez exécuter le script2.sh avant de supprimer les écrans externes.

Notez que la méthode ci-dessus reflètera votre écran sur deux écrans distincts en même temps. Et si vous avez besoin d'un écran séparé plutôt que d'une mise en miroir, vous pouvez utiliser l'option --left-of ou --right-of et fournir les noms de périphérique en conséquence.

Vous pouvez également vérifier si votre matériel prend en charge trois écrans en même temps en allumant l'écran du portable avec les deux moniteurs.

0
ran