Comment définir une résolution personnalisée?

77

J'ai essayé d'utiliser xrandr1680x1050 comme nouveau mode pour la sortie VGA, mais il dit:

sudo xrandr --addmode VGA-0 1680
X Error of failed request:  BadMatch (invalid parameter attributes)
Major opcode of failed request:  140 (RANDR)
Minor opcode of failed request:  18 (RRAddOutputMode)
Serial number of failed request:  35
Current serial number in output stream:  36
utilisateur216356
la source

Réponses:

128

Commencez par générer une "modeline" à l'aide de cvt. La
syntaxe est la suivante: cvt largeur hauteur. Rafraîchir.

cvt 1680 1050 60

cela vous donne:

# 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz
Modeline "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync

Maintenant, dites ceci à xrandr :

xrandr --newmode "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync

Ensuite, vous pouvez maintenant l'ajouter au tableau des résolutions possibles d'une sortie de votre choix:

xrandr --addmode VGA-0 1680x1050_60.00

Les modifications sont perdues après le redémarrage. Pour configurer la résolution de manière persistante, créez le fichier ~/.xprofileavec le contenu:

#!/bin/sh
xrandr --newmode "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync
xrandr --addmode VGA-0 1680x1050_60.00
thom
la source
21
L'appareil connecté peut ne pas l'être VGA-0. Si vous recevez le message xrandr: cannot find output "VGA-0", essayez d'exécuter la commande suivante: xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/"(source: xrandr sur ArchWiki ). Le résultat de cette commande devrait être l'identifiant de périphérique correct.
thirdender
10
Vous n'avez pas besoin de sudo avec xrandr
Panther
2
Je voudrais ajouter que j'ai la même erreur - et ce qui précède ne résout pas le problème du tout
TellMeWhy
3
Si vous êtes sur une machine virtuelle, l’affichage est généralement à la Virtual1place de VGA-0.
CyberEd
5
Vous devez remplacer VGA-0 par la connexion de votre moniteur. Utilisez xrandr --listmonitors. Voir Comment corriger l'erreur 'xrandr: impossible de trouver la sortie «VGA1»' '?
Hooman
14

Comment définir une résolution personnalisée précédemment spécifiée. Après avoir exécuté les autres étapes définies pour créer la résolution, exécutez:

xrandr -s 1680x1050
GuiRitter
la source
4

Comment définir une résolution personnalisée précédemment spécifiée lors de l' exécution de plusieurs moniteurs . Après avoir exécuté les autres étapes définies pour créer la résolution, exécutez:

xrandr --output DVI-0 --mode 1680x1050

Remplacez DVI-0par votre identifiant d'appareil, par exempleVGA-0

pokkie
la source
3

Grâce à thom et thirdender, il s’agit d’une configuration à commande unique basée sur la réponse la plus votée .

RES="1920 1200 60" && \
DISP=$(xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/") && \
MODELINE=$(cvt $(echo $RES) | grep -e "Modeline [^(]" | sed -r 's/.*Modeline (.*)/\1/') && \
MODERES=$(echo $MODELINE | grep -o -P '(?<=").*(?=")') && \
cat > ~/.xprofile << _EOF
#!/bin/sh
xrandr --newmode $MODELINE
xrandr --addmode $DISP $MODERES
_EOF

La commande ci-dessus générera le ~/.xprofilefichier souhaité . Assurez-vous simplement que vous utilisez la résolution (c.-à-d. La RESvariable) qui vous convient. Plus d'infos ici .

Tanasis
la source