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