Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/05/2018, à 20:47

Psv H

Problème multi-écran avec Super+P

Hello,

Je possède Ubuntu 18.04, sous Gnome, depuis peu et en suis ravi.
J'ai juste un souci avec le raccourci "Super+P" : les modes "Que l'externe" et "Que l'intégré" me renvoient la même chose que "Joindre écrans", à savoir un écran étendu.
"Joindre écran" et "Cloner" fonctionnent bien.

Je précise que tous les modes fonctionnent très bien quand j'utilise les paramètres > périphériques > écran.

Mes premières recherches m'ont amené vers le plugin Xrandr, en vain.

Quelqu'un a-t-il rencontré le même problème ?

Une précision : j'utilise le driver propriétaire Nvidia version 390 avec une carte GTX560. J'imagine que c'est lié d'une manière ou d'une autre...

Merci pour votre aide !

Hors ligne

#2 Le 11/05/2018, à 19:41

Psv H

Re : Problème multi-écran avec Super+P

Nobody ? hmm

Hors ligne

#3 Le 12/05/2018, à 09:50

kholo

Re : Problème multi-écran avec Super+P

salut,
voilà un script à adapter issus d'un autre... tout est indiqué
pour résumer, cela repose sur xrandr
qui te renverra des infos sur les possibilités reconnues de l'ensemble carte graphique écran

xrandr

ensuite, tu adaptes les infos affichées et les résolutions
j'ai mis 5 choix possibles...

la routine, à la fin, permet de rafraîchir les bureaux quand leurs résolutions sont différentes

et tu as des exemples et des astuces wink

#!/bin/bash

#############################################################
#
# www.soupaloignon.net
# modifié par kholo kholo-informatique
#
# SP-Ecrans Externes
# 2014-07-05 : Version 0.3
# 2012-07-12 : Version 0.2
# 2010-07-14 : Version 0.1
#
# Permet d'activer un écran externe ou un vidéo projecteur avec les
# bonnes résolutions, tout en activant/désactivant l'écran de votre portable
#
# Le mode d'identification des sorties est différent suivant les puces graphiques.
# Pour connaitre les votres taper xrandr en console
# (necessite que xrandr soit installé)
#
# Pour pouvoir refermer le capot du portable sans le couper (Sous Gnome 2),
# taper en console : 
# gconftool-2 --type string --set /apps/gnome-power-manager/buttons/lid_ac "nothing"
# cela va rajouter l'option "ne rien faire" lorsque l'écran du portable est rabattu,
# dans Systeme/preferences/gestionnaire d'energie


# Paramètres modifiables en fonction des besoins

# identification des sorties
#~ # identification de la sortie écran portable
#~ # (à paramétrer en fonction de votre puce graphique,
#~ # taper xrandr en console pour avoir l'information)
# EXEMPLE
#############################################################
#~ Screen 0: minimum 8 x 8, current 1280 x 1024, maximum 16384 x 16384
#~ DVI-I-0 disconnected (normal left inverted right x axis y axis)
#~ VGA-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
   #~ 1280x1024      60.0*+   76.0     75.0     67.0  
   #~ 1280x960       60.0  
   #~ 1152x864       75.0  
   #~ 1024x768       75.0     70.1     60.0  
   #~ 800x600        75.0     72.2     60.3     56.2  
   #~ 640x480        75.0     72.8     59.9  
#~ DVI-I-1 disconnected (normal left inverted right x axis y axis)
#~ HDMI-0 connected (normal left inverted right x axis y axis)
   #~ 1920x1080      60.0 +   59.9     50.0     24.0     30.0     30.0     25.0  
   #~ 1280x1024      60.0  
   #~ 1280x720       60.0     59.9     50.0  
   #~ 1024x768       60.0  
   #~ 800x600        60.3  
   #~ 720x576        50.0     25.0  
   #~ 720x480        59.9     30.0  
   #~ 640x480        59.9     59.9  
#############################################################
OUTPUTvga="VGA-0"
OUTPUThdmi="HDMI-0"
OUTPUTdvi="DVI-I-1"
#~ OUTPUTecranPortable="LVDS1"

# résolution de secours
MODE1024="1024x768"

# résolution de l'écran LCD externe
MODE1280="1280x1024"

# résolution de l'écran TV Sony
MODE1920="1920x1080"

#~ # résolution de l'écran de l'ordi portable
#~ MODEecranPortable="1280x800"

#~ # résolution du vidéo projecteur
#~ # EXEMPLE non testé :
#~ # xrandr --output VGA --pos 0x0 --mode 1024x768 --rate 60.00 
#~ MODEvideoProj="1024x768"

# Fin des paramètres modifiables. Ne pas modifier ce qui suis, sauf si vous savez ce que vous faites ;)
#############################################################
# adapter les texte de la zenity ici ;°)
Explications="Choisir un mode :"
KA="VGA seul"
KB="VGA et HDMI"
KC="HDMI seul"
KD="clone sur la télé"
KE="bureau étendu"

choix="$(zenity --list --width=600 --height=300 --text="$Explications" --hide-column 1 --column "" --column "" 1 "$KA" 2 "$KB" 3 "$KC" 4 "$KD" 5 "$KE")"
# EXEMPLES
#~ xrandr --output $OUTPUTvga --mode $MODE1280
#~ xrandr --output $OUTPUTvga --off
#~ xrandr --output $OUTPUThdmi --mode $MODE1920
#~ xrandr --output $OUTPUThdmi --off
# EXEMPLES
#~ 1="Activer L'écran auxiliaire($MODElcd), désactiver l'écran du portable"
#~ 2="Activer l'écran du portable, désactiver l'écran auxiliaire"
#~ 3="Activer l'écran du portable, activer l'écran auxiliaire"
#~ 4="Activer video proj, activer l'écran du portable"
#~ 5="Activer video proj, désactiver l'écran du portable"
#~
#~ if [ $choix -eq 1 ] ; then
#~ xrandr --output $OUTPUTvga --mode $MODElcd
#~ xrandr --output $OUTPUTecranPortable --off
#~ fi
#~ 
#~ if [ $choix -eq 2 ] ; then
#~ xrandr --output $OUTPUTvga --off
#~ xrandr --output $OUTPUTecranPortable --mode $MODEecranPortable
#~ fi
#~ 
#~ if [ $choix -eq 3 ] ; then
#~ xrandr --output $OUTPUTvga --mode $MODElcd
#~ xrandr --output $OUTPUTecranPortable --mode $MODEecranPortable
#~ fi
#~ 
#~ if [ $choix -eq 4 ] ; then
#~ xrandr --output $OUTPUTvga --mode $MODEvideoProj
#~ xrandr --output $OUTPUTecranPortable --mode $MODEecranPortable
#~ fi
#~ 
#~ if [ $choix -eq 5 ] ; then
#~ xrandr --output $OUTPUTvga --mode $MODEvideoProj
#~ xrandr --output $OUTPUTecranPortable --off
#~ fi
case $choix in
	1)
	choisi="$KA"
	xrandr --output $OUTPUTvga --mode $MODE1280
	xrandr --output $OUTPUThdmi --off
	;;
	2)        
	choisi="$kKB"
	xrandr --output $OUTPUTvga --mode $MODE1280
	xrandr --output $OUTPUThdmi --mode $MODE1920
	;;
	3)        
	choisi="$KC"
	xrandr --output $OUTPUTvga --off
	xrandr --output $OUTPUThdmi --mode $MODE1920
	;;
	4)        
	choisi="$KD"
	xrandr --output $OUTPUTvga --mode $MODE1280
	xrandr --output $OUTPUThdmi --mode $MODE1280
	;;
	5)        
	choisi="$KE"
	xrandr --output $OUTPUTvga --mode $MODE1280
	xrandr --auto --output $OUTPUThdmi --mode $MODE1920 --right-of $OUTPUTvga
	;;
	# *)
	# TODO en cas de problème
	# xrandr --output $OUTPUTvga --mode $MODE1024
	# xrandr --output $OUTPUThdmi --mode $MODE1024
	# ;;
esac

# zenity --info --text="$choisi"

# selon les rapports de résolution entre écrans, 
# nautilus peut avoir su mal à adapter le fond d'écran
selected_level=$(zenity --question --text="L'image est-elle bizarre ?")

if [ $? = 1 ]; then
	# zenity --error --title="002" --text="traitement interrompu"
	exit 0;
else
	# killall nautilus
	nautilus -q
	#zenity --info --title="003" --text="je suis mort !"
	nautilus &
	sleep 2
	# on rafraîchi les icônes du bureau
	gsettings set org.gnome.desktop.background show-desktop-icons false
	gsettings set org.gnome.desktop.background show-desktop-icons true
fi
exit 0

notice :
à mettre dans un fichier texte et le rendre exécutable

mkdir ~/bin
> ~/bin/ma_reso
chmod +x ~/bin/ma_reso
gedit ~/bin/ma_reso

coller le script ici
enregistrer et fermer...
exécuter

cd ~/bin; ./ma_reso

Hors ligne

#4 Le 12/05/2018, à 20:04

Psv H

Re : Problème multi-écran avec Super+P

OK super, je vais tester, merci !

Hors ligne

#5 Le 14/05/2018, à 21:17

Psv H

Re : Problème multi-écran avec Super+P

Bon, solution trop complexe pour moi, pas assez de maîtrise de Linux probablement...
Merci quand même !

Hors ligne

#6 Le 15/05/2018, à 11:41

kholo

Re : Problème multi-écran avec Super+P

oh,... pas de soucis, je vais un peu vite et suis un peu présomptueux des capacités des lecteurs wink
dis moi où tu galères et je précise...
je reprends en simplifié
tu ouvres un terminal avec Ctrl + Alt + t
puis tu vas créer les fichiers et dossiers de cette façon :

mkdir ~/bin
> ~/bin/ma_reso
chmod +x ~/bin/ma_reso

maintenant tu édites le script qui est pour le moment vide

gedit ~/bin/ma_reso

et tu colles tel quel ce script (le même que l'autre mais extrêmement simplifié et dé-commenté)

#!/bin/bash

###########################################################
# Configuration des modes et sorties
OUTPUTA="VGA1"
OUTPUTB="HDMI3"

# résolutions
MODE1024="1024x768"
MODE1280="1280x1024"
MODE1920="1920x1080"

#############################################################
# adapter les textes de la zenity ici ;°)
Explications="Choisir un mode :"
KA="écran A seul"
KB="écran B seul"
KC=""
KD="A et B clone"
KE="A et B bureau étendu"

choix="$(zenity --list --width=600 --height=300 --text="$Explications" \
--hide-column 1 --column "" --column "" \
1 "$KA" 2 "$KB" 3 "$KC" 4 "$KD" 5 "$KE")"

case $choix in
	1)
	# choisi="$KA"
	xrandr --output $OUTPUTA --mode $MODE1920
	sleep .2
	xrandr --output $OUTPUTB --off
	;;
	2)        
	# choisi="$KB"
	xrandr --output $OUTPUTA --off
	sleep .2
	xrandr --output $OUTPUTB --mode $MODE1920
	;;
	3)        
	# choisi="$KC"
	# xrandr --output $OUTPUTA --mode $MODE1920
	# sleep .2
	# xrandr --output $OUTPUTB --mode $MODE1920
	;;
	4)        
	# choisi="$KD"
	xrandr --output $OUTPUTA --mode $MODE1920
	sleep .2
	xrandr --output $OUTPUTB --mode $MODE1920
	;;
	5)        
	# choisi="$KE"
	xrandr --output $OUTPUTA --mode $MODE1920
	sleep .2
	xrandr --auto --output $OUTPUTB --mode $MODE1920 --right-of $OUTPUTA
	;;
esac

exit 0

et tu vas devoir l'adapter pour ta configuration

tu ouvres un second terminal avec Ctrl + Alt + t et tu fais un

xrandr

ça va te donner des infos sur tes possibilités graphiques... et le nom de tes sorties :
par exemple sur une 16.04, j'ai en retour:

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +  50.00    59.94    24.00    23.98  
   1920x1080i    60.00    50.00    59.94  
   1280x1024     60.02  
   1280x720      60.00    50.00    59.94  
   1024x768      60.00  
   800x600       60.32  
   720x576       50.00  
   720x576i      50.00  
   720x480       60.00    59.94  
   720x480i      60.00    59.94  
   640x480       60.00    59.94  
VGA1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 290mm
   1920x1080     60.00*+
   1680x1050     59.95  
   1280x1024     60.02  
   1440x900      59.89  
   1280x720      60.00  
   1024x768      60.00  
   800x600       60.32  
   640x480       59.94  
   720x400       70.08  
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

je vais un peu restreindre le retour pour mieux voir :
voici mes sorties (de la carte graphique entre autre)

DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 connected (normal left inverted right x axis y axis)
VGA1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 290mm
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

on voit que HDMI3 et VGA1 sont 'connected'
Pour toi, ces noms peuvent être différents
nous avons nos sorties (enfin les miennes et toi les tiennent) et il faut adapter dans le script

# Configuration des modes et sorties
OUTPUTA="VGA1"
OUTPUTB="HDMI3"

ensuite toujours dans le retour de xrandr, tu as les résolutions acceptées par tes sorties 'connected'
pour moi, en résolution maxi, on voit :

HDMI3 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +  50.00    59.94    24.00    23.98  

et

VGA1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 290mm

bien pratique, j'ai les même possible : "1920x1080" et c'est celle que je vais utiliser
mais tu peux avoir une résolution différente sur les deux écrans
on ajoutera un petite routine plus tard si c'est le cas

maintenant, il faut adapter :

# résolutions
MODE1024="1024x768"
MODE1280="1280x1024"
MODE1920="1920x1080"

et adapter également les $MODExxxx :
pour moi tout en $MODE1920 soit "1920x1080"
NB : le choix 3 (KC) est désactivé car inutile mais on peut le conserver pour ajouter une possibilité plus tard.
NB 2 : tu remarqueras que c'est simple à lire

case $choix in
	1)
	# choisi="$KA"
	xrandr --output $OUTPUTA --mode $MODE1920
	sleep .2
	xrandr --output $OUTPUTB --off
	;;
	2)
	# choisi="$KB"
	xrandr --output $OUTPUTA --off
	sleep .2
	xrandr --output $OUTPUTB --mode $MODE1920
	;;
	3)
	# choisi="$KC"
	# xrandr --output $OUTPUTA --mode $MODE1920
	# sleep .2
	# xrandr --output $OUTPUTB --mode $MODE1920
	;;
	4)
	# choisi="$KD"
	xrandr --output $OUTPUTA --mode $MODE1920
	sleep .2
	xrandr --output $OUTPUTB --mode $MODE1920
	;;
	5)
	# choisi="$KE"
	xrandr --output $OUTPUTA --mode $MODE1920
	sleep .2
	xrandr --auto --output $OUTPUTB --mode $MODE1920 --right-of $OUTPUTA
	;;
esac

voilà, j'ai également ajouté un petit sleep (.2 pour 0.2 secondes) qui calme un peu le jeu entre les changements de réso et les allumage / extinction de moniteur.

maintenant UTILISATION :
si tu as créé le dossier ~/bin, il n'est pas encore ajouté à ton PATH, il faut déconnecter et reconnecter ton utilisateur ou redémarrer ta machine
ensuite un simple terminal (ctrl + alt + t) et

ma_reso

lancera le script et affichera la fenêtre zenity avec des cases à cocher.

si tout fonctionne, on ajoutera ensuite un fichier desktop sur ton bureau pour lancer le script en graphique

... bon, je pense n'avoir rien oublié ! wink

Dernière modification par kholo (Le 15/05/2018, à 11:44)

Hors ligne

#7 Le 25/05/2018, à 14:28

Psv H

Re : Problème multi-écran avec Super+P

Super merci je vais tester !

Hors ligne