dwm에 타사 상태 표시줄 설정

dwm에 타사 상태 표시줄 설정

dwm창 관리자 (특히 내가 사용하려는 것 ) 에서 외부 상태 표시줄을 설정하려고 하는데 polybar창 배치에 몇 가지 문제가 있습니다.

  • 바에는 자체 공간이 필요합니다.순진하게 dwm을 실행하면 polybar자신만의 창이 생성되지만(완전히 바람직하지 않음), 더 똑똑하고 통과하더라도 override-redirect = true제안된 대로 내용을 숨기면서 기존 창 위에 배치됩니다.이 GitHub 문제dwm바를 위한 약간의 공간을 남겨두어야 합니다 . 어떻게?
  • 숨기고 싶은 것:기본 열을 숨겨 창의 화면 공간을 확보할 수 있지만 다른 열을 위해 일부 공간을 예약하도록 강제하는 경우 동일한 작업을 수행하는 방법을 dwm알고 싶습니다.dwm

가장 큰 문제는 내가 그것에 대해 충분히 알지 못하기 dwm때문에 사용자 정의 솔루션을 직접 만들기 위한 소스 코드에 익숙하지 않다는 것입니다. 누구든지 나에게 조언을 해줄 수 있습니까? 아니면 유용한 패치를 지적하시겠습니까?

추신: 일반적으로 다른 상태 표시줄 설정에 대한 튜토리얼을 찾지 못했습니다 dwm(예:이 Reddit 게시물동일한 리소스를 요청했지만 아무도 유용한 답변을 제공하지 않았습니다.) 따라서 누군가 비슷한 것을 제공할 수 있다면

답변1

나는 당신이 dwm 소스 코드를 파헤치는 것을 주저하지 않을 것이라고 생각합니다.

과거에 저에게 효과적이었던 한 가지는 dwm이 Polybar를 처리하기 위해 자체 막대를 처리하는 방식을 수정하는 것이었습니다. 이는 dwm 열을 렌더링하는 코드를 제거하는 것을 의미하지만 열의 상단이나 하단에 공간을 추가하는 코드는 제거하지 않습니다.

저는 dwm을 사용하지 않고 개념 증명으로 이 작업을 수행합니다. 안타깝게도 더 이상 패치가 없지만 몇 가지 팁을 드릴 수 있습니다.

참고: 참고자료 제출 당시의 코드입니다.f09418b. 다른 제출물의 경우 상황이 다를 수 있습니다.

  • topbarPolybar 구성에서 변수를 변수의 역수로 설정합니다 config.def.h.bottom
  • 막대 높이에 대한 bh변수를 픽셀 단위로 설정합니다 (기존 할당 제거).dwm.c
  • dwm이 자체 열을 표시하는 것을 방지합니다. 막대 창만 설정 showbar = 0하고 처리할 수 없고 코드 전체에 분산되어 있기 때문에 이것이 가장 어려운 부분입니다. 구조변수가 사용되는 모든 곳을 봅니다 barwin.Monitor

막대 숨기기에 대한 두 번째 부분에서는 위에서 제안한 변경 사항을 통해 동일한 방식으로 막대를 전환할 수 있습니다. 이는 열 자체가 아닌 열에 대해 dwm에 의해 예약된 공간만 전환합니다. 이렇게 하려면 에도 전화해야 합니다 polybar-msg cmd toggle.

답변2

여전히 시도 중이라면(가능성이 낮음) 방금 dwm을 사용하여 폴리바를 추가했는데 원하는 대로 작동합니다.

스크린샷을 게시하고 있습니다. 이게 내 설정이야 dwm 및 폴리바

당신이 원한다면 나는 당신(또는 누구든지)이 이것을 얻도록 도와줄 수 있습니다.

  • 여름은:
  1. 따르다Polybar-DWM 모듈설치하려면 Readme를 반드시 읽고 따르십시오.

  2. dwm 소스 코드를 가져와 vanitygaps 등과 같은 필수 패치와 ANYBAR 패치 등을 추가합니다.폴리바-DWM-모듈식읽어보기에 따르면

  3. 작동해야 하지만 여기에 버그가 게시되지 않은 경우 기꺼이 도와드리겠습니다.

관련 정보