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 17/09/2011, à 23:29

Tomzz

xrandr n'aime pas Oneiric [script] Résolution virtuelle

Un coup de main svp, ce script ne marche plus sous Oneiric, voir post 3

Bonjour,
Ayant depuis peu un netbook je me suis aperçu que la fenêtre de certains des logiciels que j'utilisais ne pouvaient pas être redimensionnés en dessous d'une certaine résolution.

J'ai donc cherché à créer une résolution virtuelle pour mon bureau.

La ligne de code suivante permet cette manipulation (La résolution native de mon netbook étant 1024x600)

xrandr --output LVDS1 --panning 1024x800

J'obtiens alors un bureau de 1024x800 sur un écran de 1024x600 la zone affichée glissant lorsque la souris dépasse la zone visible.

Ceci étant, l'affichage en 1024x600 me convient la plus part du temps.
Alors pour pouvoir basculer d'une taille de bureau a l'autre facilement j'ai affecté un raccourcis clavier au script suivant:

#!/bin/bash
##

## récupération de la taille d'affichage courrante
bur=$(xrandr --verbose | grep "Screen 0" | sed 's/, /\n/g' | grep "current")

## Basculement de la taille d'affichage
if [  "${bur}" = "current 1024 x 600" ]; then
    {
        xrandr --output LVDS1 --panning 1024x800
    }
else
    {
        xrandr --output LVDS1 --panning 1024x600
    }
fi
exit 0

Si ça peut être utile a quelqu'un...

Dernière modification par Tomzz (Le 17/10/2011, à 00:29)

Hors ligne

#2 Le 15/10/2011, à 04:08

Tomzz

Re : xrandr n'aime pas Oneiric [script] Résolution virtuelle

Bonjour,
Je viens de passer à Oneiric et parmi tous les petits soucis rencontrés, j'ai ce script qui ne fonctionne plus.

En fait, c'est la commande xrandr --output LVDS1 --panning 1024x800 qui ne produit plus le même effet.

Sous Natty après cette commande mon écran physiquement en 1024x600 passait virtuellement en 1024x800 et en déplaçant ma souris vers le bord de l’écran le bureau scrollait automatiquement pour afficher les 200px supplémentaires.

Maintenant, cette commande semble bien s’exécuter, si je vérifie avec xrandr --verbose | grep "Screen 0" | sed 's/, /\n/g' | grep "current" j'obtiens bien current 1024 x 800 mais le bureau ne scrolle plus.

Quelqu'un a t'il une idée.

PS: merci MicP, je suis resté avec mon script car il correspondais mieux à mes besoins (simple raccourci clavier pour basculer entre 2 résolutions prédéfinies).
J'ai teste vite fait pour voir et en fait j'ai quelques bugs:

# n'exécuter qu'une seule instance de ce script
if [ `pgrep -fc "$BASH $P"` -gt 1 ]; then
   exit 1
fi

Cette partie me fais quitter le script qu'il soit déjà lancé ou non.

Je crois aussi que tu as quelques erreurs de syntaxe avec Zenity.

Hors ligne

#3 Le 16/10/2011, à 02:47

Tomzz

Re : xrandr n'aime pas Oneiric [script] Résolution virtuelle

Bonsoir,
Ton script "marche" (enfin le problème de la commande xrandr reste entier)  chez moi sous cette forme:

#!/bin/bash
#▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
# sam. 24 sept. 2011 07:47:07 CEST 
####################################################
# Michel Pailhé tst9pail@gmail.com
#
# Choix résolution (pour mon EeePC 1000H)
#
# Il suffira de créer un lanceur pour ce script
#  qu'on aura rendu exécutable.
#
####################################################
# liens vers la documentation utilisée:
####################################################
#
# http://library.gnome.org/users/zenity/stable/index.html.fr
#
# http://www.delafond.org/traducmanfr/X11/man1/xrandr.1x.html
#
#▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
####################################################
# ici, vous pouvez changer la variable de l'écran
#  et les résolutions proposées par la boîte de dialogue.
# 
# Pour mon EeePC, ça donne une ligne avec :
# LVDS1 connected 1024x600+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
# j'ai donc récupéré la valeur "LVDS1", et testé les résolutions qui m'intéressaient.
ecran="LVDS1"
resolutions="FALSE 1024x600 FALSE 1024x768 FALSE 1152x864 FALSE 1280x1024 FALSE 1680x1050 FALSE 1920x1080"
####################################################
# n'exécuter qu'une seule instance de ce script
#if [ `pgrep -fc "$BASH $P"` -gt 1 ]; then
#   exit 1
#fi
####################################################
# Installer zenity et xrandr si necessaire
ListeApps="zenity xrandr"
for i in ${ListeApps}
  do
    if [ ! "$(which $i)" ]; then
        {
            xterm -title "Install $i" -e "sudo apt-get install -q -y $i"
        }
    fi
done
####################################################
####################################################
# dialogue de choix de résolution
resolutionchoisie=$(zenity --list --title="Panning Écran" --radiolist --column=" " --column="Resolution" ${resolutions}) || exit 0
                            

## la partie suivante est remplacee par || exit 0 apres la fenetre zenity qui s'execute si on sort de zenity autrement que par OK si on met && a la place de || ca s'execute si on sort par ok
# if [ "$resolutionchoisie" = "" ]    # si bouton "Anuller" ou touche "Esc"
    #then
    #exit 0                # alors on quitte le script 
####################################################
# exécution de la commande avec les paramètres
xrandr --output $ecran --panning $resolutionchoisie

La déclaration de la variable resolutions peut être améliorée en ajoutant les FALSE après à coup de sed.

Pour la vérification d'une seule instance j'utilise un fichier temporaire comme ça: 

## On vérifie qu'il n'y ai pas d'autre instance de ce script en cours, et on propose de la stopper le cas échéant
if [ -s /tmp/ssh-directory.LOCK ]; then
    {
                ## création d'un script pour tuer le script en cours 
        echo "#!/bin/bash
        ##

        rm /tmp/ssh-directory.LOCK ; rm ${rept}/tmp/stop.sh ; killall ssh-directory ; killall gtkdialog ; killall zenity ; exit 0" > ${rept}/tmp/stop.sh

        chmod +rx ${rept}/tmp/stop.sh
        zenity --question --ok-label="Réinitialiser" --timeout="20" --text="Une autre instance de l'application est déjà en cours\.\nVous pouvez tout réinitialiser manuellement." || exit 0
        zenity --question --ok-label="Stopper" --timeout="20" --text="Vous allez stopper toutes les instances de cette application.\nÊtes vous sûr?" || exit 0
        sh ${rept}/tmp/stop.sh
        exit 0
    }
fi

## Création du fichier de verrouillage ne permettant qu'une instance unique.
echo ";-)" > /tmp/ssh-directory.LOCK

Attention je ne suis pas non plus un pro du bash et si un kador passe par la au mieux je vais le faire rire au pire pleurer wink

Hors ligne

#4 Le 16/10/2011, à 08:05

Nozon

Re : xrandr n'aime pas Oneiric [script] Résolution virtuelle

Bonjour,
Je constate le même problème que Tomzz, la commande "xrandr --output LVDS1 --panning 1024x800" ne fonctionne plus depuis le passage à Oneiric. Il semble que le "panning" soit verrouillé à quelques pixels..
Je souligne que cette commande me rend de grands services avec mon écran d'Aspire One.
Merci pour votre aide.

Hors ligne

#5 Le 17/10/2011, à 00:08

Tomzz

Re : xrandr n'aime pas Oneiric [script] Résolution virtuelle

Bonsoir,
Au passage, je viens aussi de me rendre compte d'autres changements avec Zenity:

zenity --question --ok-label="Réinitialiser" --timeout="20" --text="Une autre instance de l'application est déjà en cours\.\nVous pouvez tout réinitialiser manuellement." || exit 0

ne marche plus, il faut faire:

timeout 20 zenity --question --ok-label="Réinitialiser" --text="Une autre instance de l'application est déjà en cours\.\nVous pouvez tout réinitialiser manuellement." || exit 0

Voir ici pour en savoir plus.

Mais le plus important...
Quelqu'un a une idée pour xrandr ?

Dernière modification par Tomzz (Le 17/10/2011, à 00:30)

Hors ligne

#6 Le 24/10/2011, à 15:59

Tomzz

Re : xrandr n'aime pas Oneiric [script] Résolution virtuelle

B'jour,
Un petit up pour savoir si quelqu'un sait faire marcher ça :

xrandr --output LVDS1 --panning 1024x800

Hors ligne

#7 Le 02/11/2011, à 20:27

Nozon

Re : xrandr n'aime pas Oneiric [script] Résolution virtuelle

Bonsoir,

Je n'ai pas trouvé de solution et suite à d'autres problèmes depuis le passage à Oneiric (http://forum.ubuntu-fr.org/viewtopic.ph … 1#p6726371) j'ai réinstallé la version 10.04LTS, stable et rapide.

Je suis tout de même de près cette version 11.10.

Hors ligne