本猫把一台19寸显示器插在本本VGA插口上, 结果在KDE的分辨率管理界面上发现只能最高选择分辨率到1024×768, 甚是不爽! 于是…写了一个脚本, 以后就可以一步做到啦!
此外: 运行此脚本后, KDE的分辨率管理列表中也会出现运行此脚本的时候指定的分辨率哟!(即使是显示器不支持的)
当然啦, 显卡不支持的分辨率是不会设置成功的…
实现的功能比较简单, 但是很方便, 希望对你也有用~
使用方法:
1 |
resolution <设备名> <分辨率> [刷新率] |
使用示例:
1 |
resolution VGA1 1366x768 60 |
1 |
resolution LVDS1 1280x800 |
Changelog:
2011-4-29 发布第一个版本
下面…就是脚本啦!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#!/usr/bin/env python2 import os, sys, subprocess if len(sys.argv) < 3: print "Usage: resolution <device> <resolution> [refreshrate]" sys.exit(1) device = sys.argv[1] resolution = sys.argv[2] x, y = resolution.split('x') try: refreshrate = sys.argv[3] p = subprocess.Popen(['cvt', x, y, refreshrate], stdout = subprocess.PIPE) refreshrate = "_" + refreshrate except: refreshrate = "" p = subprocess.Popen(['cvt', x, y], stdout = subprocess.PIPE) output = p.communicate()[0] newline = output.split('\n')[1].split() #modename = newline[1].replace('"', '') modename = resolution + refreshrate specs = newline[2:] p = subprocess.Popen(['xrandr', '--newmode', modename] + specs) output = p.communicate() p = subprocess.Popen(['xrandr', '--addmode', device, modename]) output = p.communicate() print " ".join(newline) p = subprocess.Popen(['xrandr', '--output', device, '--mode', modename]) output = p.communicate() |