ノートパソコンのようにデスクトップモニターの明るさを調整することは可能ですか?
はい、すべてのデスクトップモニターには個別のメニューがあります。
しかし、これをWinkey +(F1..F12)のようなものに変更することは可能ですか?
モニターはVGAまたはDVIケーブルを介して接続されます。
次のスクリプトを使用すると、0.1
から1.0
までの画面の明るさを、9つのステップで、anyxrandr
に「従う」システムで設定できます。
引数「up」または「down」のいずれかを指定して実行するだけで、現在の明るさを1ステップ増減できます。
#!/usr/bin/env python3
import subprocess
import sys
arg = sys.argv[1]
# get the data on screens and current brightness, parsed from xrandr --verbose
current = [l.split() for l in subprocess.check_output(["xrandr", "--verbose"]).decode("utf-8").splitlines()]
# find the name(s) of the screen(s)
screens = [l[l.index("connected")-1] for l in current if "connected" in l]
# find the current brightness
currset = (round(float([l for l in current if "Brightness:" in l][0][1])*10))/10
# create a range of brightness settings (0.1 to 1.0)
sets = [n/10 for n in list(range(11))][1:]
# get the current brightness -step
step = len([n for n in sets if currset >= n])
if arg == "up":
if currset < 1.0:
# calculte the first value higher than the current brightness (rounded on 0.1)
nextbright = (step+1)/10
if arg == "down":
if currset > 0.1:
# calculte the first value lower than the current brightness (rounded on 0.1)
nextbright = (step-1)/10
try:
for scr in screens:
# set the new brightness
subprocess.Popen(["xrandr", "--output", scr, "--brightness", str(nextbright)])
except NameError:
pass
set_brightness.py
として保存します次のコマンドでテスト実行します。
python3 /path/to/set_brightness.py up
そして
python3 /path/to/set_brightness.py down
すべてが正常に機能する場合は、両方のコマンドをショートカットキーに追加します。[システム設定]> [キーボード]> [ショートカット]> [カスタムショートカット]を選択します。 [+]をクリックして、上記の両方のコマンドを2つの異なるショートカットキーに追加します。
コードの説明は、ほとんどスクリプトにあります:)
そのままで、スクリプトは「メイン」画面と追加可能な画面の両方の輝度を等しく設定します。