W moim oknie Tmux mam 3 panele:
--------------------------
| | 2 |
| | |
| 1 |----------|
| | 3 |
| | |
--------------------------
Panele 1 i 2 mają vim
. Panel 3 uruchamia program, który rozwijam. Czasami chcę porównać panele 1 i 2, więc chcę ukryć panel 3:
--------------------------
| | |
| | |
| 1 | 2 |
| | |
| | |
--------------------------
a następnie przywróć panel 3 ponownie. Nie chcę zabijać okienka 3, ponieważ skonfigurowałem tam kilka rzeczy i nie chcę jechać, ustawiając je ponownie.
- Czy istnieje coś podobnego do tego,
PREFIX + z
co można powiększyć panel 2, ale bez dotykania panelu 1? Lub - Czy istnieje sposób, aby szybko ukryć panel 3 i przywrócić go w razie potrzeby?
Pomysł: uruchom tmux w tmux.
Oryginalna konfiguracja:
Panel 1 i panel 2; obok siebie. Uruchom vim w okienku 1 jak zwykle.
W okienku 2 uruchom ponownie tmux i utwórz dwa panele (tym razem jeden na drugim). Następnie uruchom vim w okienku 2.1, a twój CLI w okienku 2.2. Powinno to pozwolić na przejście do pełnego ekranu 2.1 z drugą instancją Vima, co daje pożądane zachowanie.
źródło
Zamiast ukrywać okienko 3, możesz także trochę oszukać i uczynić go bardzo małym, co prawdopodobnie będzie również działać w twoim przypadku.
Gdy panel 2 jest panelem aktywnym, możesz to zrobić
Następnie, aby przenieść go ponownie w górę, możesz albo
gdzie musiałbyś zastąpić 28 przyzwoitą liczbą, lub zamiast tego możesz spróbować PREFIXEsc4, a to automatycznie zmienia rozmiar.
źródło
set -g mouse-resize-pane on
ale oprócz zmiany rozmiaru mamy jakąś inną opcję?tmux
ekspertem, ale chciałbym dowiedzieć się, czy jest to możliwe.CTRL+B, ALT+<arrow direction to resize>
, niżCTRL+B, ESC, 4
(thx @Bernhard), aby go przywrócić.Teraz to pytanie ma prawie 5 lat, ale właśnie je znalazłem, ponieważ chciałem zrobić coś podobnego i dzięki odpowiedzi user78291 wymyśliłem następujące skróty klawiszowe :
W ten sposób mogę użyć Prefix!do ukrycia bieżącego panelu i Prefix@przywrócenia go. Zaletą jest to, że mogę w ten sposób ukryć wiele paneli.
Jest daleki od ideału, ale ma za zadanie ukrywanie szyb i przywracanie ich całkiem dobrze.
źródło
Wiem, że to tak naprawdę nie ukrywa panelu, nad którym pracujesz, ale próbowałem to zrobić, aby powstrzymać tmux od wysyłania typowych poleceń do wybranych okien i doszedłem do znacznie prostszego rozwiązania.
Jeśli nie chcesz wizualnie ukrywać panelu, ale po prostu chcesz zatrzymać wszelkie dane wejściowe do panelu. Scenariusz może polegać na tym, że chcesz wysłać polecenie do 5 otwartych paneli, ale nie chcesz wysłać go do 2 z nich.
W tym przypadku użycia możesz zrobić
ctrl + s
na panelach, do których nie chcesz, aby polecenia były przekazywane (ctrl + s
blokuje wszystkie dane wejściowe do panelu).Po zakończeniu naciśnij przycisk,
ctrl + c
aby wrócić.Uwaga : Nie naciskaj
ctrl + q
po poleceniach, ponieważ uruchomią wszystkie polecenia na tym ekranie.ctrl + c
nie zrobi tego (wypróbowałem to na Ubuntu).źródło