![tmux에서 복사 모드로 들어갈 때 [0/0] 표시는 무엇을 의미합니까?](https://rvso.com/image/1311273/tmux%EC%97%90%EC%84%9C%20%EB%B3%B5%EC%82%AC%20%EB%AA%A8%EB%93%9C%EB%A1%9C%20%EB%93%A4%EC%96%B4%EA%B0%88%20%EB%95%8C%20%5B0%2F0%5D%20%ED%91%9C%EC%8B%9C%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9D%84%20%EC%9D%98%EB%AF%B8%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
tmux에서 복사 모드로 들어가면 오른쪽 상단에 "[0/0]"이 표시됩니다. 매뉴얼 페이지에서 이 숫자가 무엇을 의미하는지에 대한 문서를 찾을 수 없으며 Google이 대괄호와 슬래시를 없애기 때문에 검색하기가 어렵습니다.
이는 window-copy.c의 window_copy_write_line()에 의해 생성됩니다.
if (py == 0) {
size = xsnprintf(hdr, sizeof hdr,
"[%u/%u]", data->oy, screen_hsize(data->backing));
if (size > screen_size_x(s))
size = screen_size_x(s);
screen_write_cursormove(ctx, screen_size_x(s) - size, 0);
screen_write_puts(ctx, &gc, "%s", hdr);
하지만 변수 이름은 코드에 익숙하지 않은 사람에게는 그다지 유익하지 않습니다.
이 숫자가 무엇을 의미하는지에 대한 힌트가 있나요?
답변1
화면 크기와 관련하여 버퍼 내 현재 위치를 나타내는 줄 표시기입니다. 0은 마지막 줄(맨 아래)이고 뒤로 갈수록 증가합니다. 표시된 줄 번호는 항상 화면 하단에 있는 줄입니다.
vi/vim과 같은 명령을 사용하면 :50
화면 하단에 커서가 있는 50번째 줄이 표시되고, 스크롤 백 버퍼에 사용 가능한 줄이 100개 있으면 다음과 같이 표시됩니다.[50/100]
설명하기는 좀 어렵지만 사용 가능한 실제 버퍼가 120라인인데 화면 높이가 20라인이라면 표시될 것이고 [x/100]
커서가 :100
화면 하단에 라인 100을 놓고 여전히 20라인이 있을 것입니다. 그 위에 더 많은 줄이 있지만 120줄까지 스크롤하면 에 위치하지 않고 [120/120]
에 그대로 유지 됩니다 [100/100]
.
답변2
대략적으로 말하면 두 번째 숫자는 창 기록에서 화면에 맞지 않는 줄 수입니다. 복사 모드에서 창 상단을 지나 위로 스크롤하고 일부 줄이 화면 하단 "아래"에 있는 경우 첫 번째 숫자는 0보다 큽니다.