간격: i3blocks에서 지속성이나 반복은 나쁜 생각입니까? 블록을 새로 고치는 올바른 방법은 무엇입니까?

간격: i3blocks에서 지속성이나 반복은 나쁜 생각입니까? 블록을 새로 고치는 올바른 방법은 무엇입니까?

다른 곳에서 특정 블록(예: i3blocks의 볼륨 및 키보드 레이아웃)을 변경할 때 새로 고치는 가장 좋은 방법은 무엇입니까? amixer 명령을 실행할 때 볼륨 블록을 새로 고치는 것처럼 명령이 실행될 때 어떻게든 새로 고칠 생각이지만 이를 수행할 방법을 찾을 수 없습니다. 사람들이 지속적인 간격을 사용하는 것을 봅니다. 이를 사용하는 것이 좋은 생각입니까, 아니면 밀리초마다 명령을 실행하는 것과 같습니까?

답변1

개별 블록을 새로 고치기 위해 i3blocks로 보낼 수 있는 신호를 정의할 수 있습니다. 예를 들면 다음과 같습니다.

bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +3% && pkill -SIGRTMIN+10 i3blocks

i3 블록:

[volume]
label=♪
interval=60
instance=Master
signal=10

이는 i3 구성에서 작업을 매핑하는 상황에 이상적입니다. pavucontrol을 통해 볼륨을 변경할 때 여전히 간격을 대체 수단으로 사용하고 있습니다. 혹시 궁금하실까봐 Arch wiki나 아래 링크된 저장소에서 제가 사용하고 있는 구성을 찾은 것 같습니다.

명확하게 말하면 지속성은 종료되지 않지만 새로운/변경된 정보가 있을 때마다 stdout에 쓰는 스크립트를 위한 것입니다. 어떤 일이 발생할 때까지 실행되고 종료 후 즉시 다시 실행되어야 하는 스크립트/명령에 반복적으로 사용됩니다. 귀하의 명령/스크립트가 이 관행을 따르지 않는다면, 그렇습니다. 아마도 나쁜 생각일 것입니다.

자세한 내용은 여기를 참조하세요. https://github.com/vivien/i3blocks#signal

관련 정보