tmux: 항상 세션의 창 목록을 왼쪽에 표시합니다.

tmux: 항상 세션의 창 목록을 왼쪽에 표시합니다.

tmux가 항상 왼쪽에 세션 창 목록을 표시하기를 원합니다.

목록에서 창을 클릭하면 오른쪽에 있는 창으로 전환되고(미리보기 없음 - 바로 창으로 전환) 초점이 해당 창으로 전환되지만 여전히 왼쪽 열린 창 목록은 그대로 유지됩니다. 이제 창이 강조 표시됩니다. 결과는 다음과 비슷해 보입니다.mprocs에서 제공.

나는 생각했다choose-tree명령이 도움이 될 수 있습니다. 아마도 사용자 정의 템플릿을 사용할 수도 있습니다. 일반적으로 choose-tree사용자가 창을 선택한 후에 사라지므로 사용자가 창을 선택한 후 다시 실행해야 할 수도 있습니다(아마도 "while" 루프에서).

이 목표를 어떻게 달성해야 합니까?

답변1

세 가지 세션을 만듭니다.

  • menu
  • windows
  • main에는 수평으로 두 개의 창으로 분할된 창이 포함되어 있으며 각각 연결된 클라이언트 menu와 세션을 실행하고 있습니다.windows

에서는 루프가 실행됩니다 menu.choose-tree

  • 세션의 창만 표시하도록 필터링 windows하고
  • 다음을 호출하는 템플릿 select-window:
while true; do
  tmux choose-tree -f '#{==:windows,#{session_name}}' \
    'select-window -t %%; select-pane -t main:0.1'
done

기본 세션에 연결합니다.

할 것:

  • 창을 선택하면 선택한 창이 menu다시 맨 위로 이동합니다.
  • 창 선택에는 menu한 번 클릭이 아닌 두 번 클릭이 필요합니다.
  • menuwindows세션을 맨 위에 표시합니다(트리가 아닌 창 목록만 필요함).
  • menu세션에서 새 창을 생성할 때 자동으로 업데이트되지 않습니다 windows. 그렇긴 하지만 지연이 발생합니다.
  • menu가장 긴 창 이름의 너비에 맞춰 자동으로 크기가 조정되지 않습니다.
  • menu"새 창" 마우스 오른쪽 버튼 클릭 메뉴 항목이 없습니다.

관련 정보