tmux가 $x를 수행하지 않는 이유는 무엇입니까?

tmux가 $x를 수행하지 않는 이유는 무엇입니까?

여러 세션을 생성하고 prefix + s세션 사이를 변경하는 데 사용하면 화면 하단에 색인과 이름이 포함된 각 창의 미리보기가 표시됩니다. 표시된 창 테두리의 색상을 어떻게 변경합니까?

그림:

세션 선택기 스크린샷

답변1

tmux 용어에서 이러한 미리보기는 비슷한 방식으로 터미널 영역을 공유하지만 실제로는 "창"이 아닙니다. 따라서 (현재 tmux2.7에서는) 자체 구성 설정이 없으며 active-window-style이것이 실수라고 생각되면 제기할 수 있습니다.기능 요구 사항:

tmux가 $x를 수행하지 않는 이유는 무엇입니까?

기능 요청은 다음 주소로 이메일을 보내주세요.[이메일 보호됨].

패치하고 다시 컴파일하기

또는 소스에서 빌드하는 데 익숙하다면 tmux담당 기능을 쉽게 수정할 수 있습니다.

미리보기 사이의 수직선은 으로 그려지고 screen_write_vline, 모든 수직선 주위의 상자는 로 그려집니다 screen_write_box. 두 기능 모두 다음에서 사용할 수 있습니다.screen-write.c, 다음 줄을 포함합니다.

    memcpy(&gc, &grid_default_cell, sizeof gc);

gc유형은 각각 프런트엔드와 백엔드를 나타내는 struct grid_cell멤버 fg및 를 포함하는 입니다.bg

grid_default_cell는 다음 const과 같이 정의됩니다.grid.c. 둘 fg다 8입니다 bg. 즉, 와 동일한 값을 사용하거나 default(설정되지 않은 경우) 터미널 자체 기본값을 사용합니다.window-active-style

이 설정을 재정의하려면 gc나중에 즉시 변경할 수 있습니다.

    memcpy(&gc, &grid_default_cell, sizeof gc);
    gc.fg = 1;

그러면 관련 선을 그리기 전에 전경이 빨간색으로 설정됩니다.

색상을 정수로 변환

구성 파일에서는 tmux다음 형식의 색상이 인식됩니다.

색상은 검정색, 빨간색, 녹색, 노란색, 파란색, 마젠타색, 청록색, 흰색, aixterm 밝은 변형(지원되는 경우: 밝은 빨간색, 밝은 녹색 등), 256색 세트의 color0 ~ color255(기본값) 중 하나입니다. 또는 "#ffffff"와 같은 16진수 RGB 문자열입니다.

int소스에서 설정할 때 읽기 기능에서 .from 으로 읽어야 합니다.colour_fromstring존재하다colour.c, 숫자 표현을 찾을 수 있습니다.

  • 기본 색상: 0-7
  • 기본값: 8
  • 기본 색상의 "밝은" 버전: 90-97
  • 색인 출처256가지 색상 팔레트: COLOUR_FLAG_256 |색인
  • 트루컬러(24비트 RGB):COLOUR_FLAG_RGB | 0xRRGGBB

관련 정보