볼륨, 배터리, 여유 디스크 공간 및 시간 등 정보가 거의 없는 dwm 상태 표시줄이 있습니다(bash 스크립트 사용). 볼륨 및 밝기와 같은 일부 항목은 변경된 경우(볼륨 높이기/낮추기, 밝기 높이기/낮추기)에만 나타나야 합니다.
터미널에서 다음을 수행할 수 있습니다.
vol="$(amixer get Master | tail -n1 | sed -r 's/.*\[(.*)%\].*/\1/')"
printf '%s\n' "Volume set to ${vol}" | dzen2 -p 3
이렇게 하면 dzen이 막대 중앙에 실제 볼륨을 표시하게 됩니다(밝기에도 동일하게 적용됩니다).
밝기를 변경하려면 XF86MonBrightnessDown XF86MonBrightnessUp(config.h에 정의됨)을 사용합니다.
볼륨/밝기 변화에 대한 정보를 얻는 방법은 무엇입니까?
당신의 도움을 주셔서 감사합니다!
답변1
제가 올바르게 이해했다면 dzen2
밝기/볼륨을 변경할 때 팝업이 표시되기를 원합니다. 스크립트에서 이 작업을 수행하고 동일한 키를 누를 때(등) 트리거할 수 XF86MonBrightnessUp
있습니다 XF86XK_AudioLowerVolume
.
귀하의 dwm에는 config.h
다음 줄이 있습니다
...
{ 0, XF86XK_AudioRaiseVolume, spawn, SHCMD("volume_change.sh -i") },
{ 0, XF86XK_AudioLowerVolume, spawn, SHCMD("volume_change.sh -d") },
...
이 SHCMD
명령은 주어진 쉘 명령을 실행합니다. volume_change.sh
스크립트를 가질 수 있습니다
#!/bin/sh
case $1 in
# Increase volume
-i)
pactl set-sink-volume @DEFAULT_SINK@ +5%
vol="$(amixer get Master | tail -n1 | sed -r 's/.*\[(.*)%\].*/\1/')"
printf '%s\n' "Volume set to ${vol}" | dzen2 -p 3
;;
# Decrease volume.
-d)
pactl set-sink-volume @DEFAULT_SINK@ -5%
vol="$(amixer get Master | tail -n1 | sed -r 's/.*\[(.*)%\].*/\1/')"
printf '%s\n' "Volume set to ${vol}" | dzen2 -p 3
;;
esac
비슷한 밝기 키 스크립트도 있습니다.
volume_change.sh
파일에 해당 파일이 있고 PATH
실행 가능한지 확인하세요 .
답변2
명도:
xsetroot -name "