Panel zmiany rozmiaru nie działa dla Tmux na Macu?
33
Po przeszukaniu doszedłem do wniosku, że ctrl + b (PREFIKS), a następnie ctrl + strzałka powinny zmienić rozmiar bieżącego panelu. Ale to nie działa. Czy coś mi brakuje?
Do waszej strony dostosowałem szerokość za pomocą PREFIX: panel zmiany rozmiaru, ale wciąż zastanawiam się, dlaczego powyższe polecenie nie powinno działać.
Prawdopodobnie twój terminal nie wysyła (wyraźnej) sekwencji po przytrzymaniu Controli naciśnięciu klawisza strzałki.
Spróbuj uruchomić cati wpisać w nim klucze (Control-C, aby wyjść). Prawdopodobnie przekonasz się, że (np.) UpI Control- Upoba generują tę samą sekwencję.
Aplikacja OS X Terminal
W swojej domyślnej konfiguracji aplikacja Terminal OS X wysyła sekwencję ^[[A(lub ^[OA) bez względu na to, czy wpiszesz Upczy Control- Up(także dowolną kombinację zi, Shifti Option).
Można jednak ponownie skonfigurować Terminal, aby wysyłał odpowiednie kody. Jest to trochę nużące, ale zazwyczaj musisz to zrobić tylko raz.
Terminal > Preferencje…
Karta najwyższego poziomu Ustawienia
wybierz profil, który chcesz zmodyfikować
klawiatura Zakładka
kliknij przycisk plus, aby dodać nowe powiązanie
wybierz klawisz kursora
ustaw modyfikator na control
użyj Send Text:akcji
wpisz Escape(pojawi się jako \033), a następnie jeszcze [1;5jeden znak:
Adla Up,
Bdla Down,
Cdla Rightlub
D dla Left
kliknij OK, aby dodać powiązanie
Na przykład końcowa sekwencja dla Control- Uppowinna wyglądać tak \033[1;5A.
Sekwencje te są tymi, które generuje XTerm (szczegóły w dokumentacji ctlseqs ).
Powtórz ostatni krok dla pozostałych klawiszy strzałek.
Rzeczywiście, Ctrl + {klawisze strzałek} są mapowane do przełączania aplikacji. Nie wysyłają sekwencji.
Biswanath,
19
Próbowałem tego na waniliowej maszynie Mavericks (MBP retina pod koniec 2013 r.), Ale nie działało bez dezaktywacji wszystkich skrótów klawiszowych Ctrl + Strzałka w Preferencjach systemowych -> Klawiatura -> Skróty -> Kontrola misji. +1 za wskazówkę dotyczącą używania catdo wyświetlania zdarzeń na klawiaturze
Alex Leach
działa dobrze, dopóki nie uruchomię Tmux. Dostaję ^ [[1; 5A ^ [[1; 5B przed uruchomieniem tmux, ale ^ [OA ^ [OB w tmux.
nakhli
1
@ Sinbadsoft.com: Wygląda na to, że nie masz xterm-keyswłączonego dla tego okna tmux ; możesz chcieć set -gw xterm-keys on.
Chris Johnsen
działa idealnie dla mnie (el capitan).
mol
10
Przynajmniej w Mavericks i iTerm2 musisz przytrzymać Control, a następnie nacisnąć b(zamiast przytrzymywać), a następnie przytrzymać przycisk kierunkowy. Wysyła to prawie takie same sekwencje, jak przytrzymanie Control- bz przyciskiem kierunkowym, więc działa.
Pamiętaj też, aby przejść do ustawień klawiatury i na karcie skrótów wyłączyć kontrolę misji i takie skróty klawiaturowe, które możesz mieć Controlplus klawisz kierunkowy.
dzięki! zmiana powiązań kontroli misji / okien aplikacji w
Skrótach
7
Możesz użyć klawisza meta zamiast klawisza Control w kombinacjach ctrl-↑ i ctrl- ↓. W terminalu OSX domyślnym meta kluczem jest klawisz Escape. Na przykład, aby zwiększyć rozmiar panelu, wpisz ctrl-b esc- ↑.
Uważam, że klawisz Escape jest trudny do osiągnięcia, więc zamiast tego używam klawisza opcji jako klawisza meta. W Terminal.app możesz to zmienić, wybierając Terminal> Preferencje> Profile> Klawiatura: zaznacz „Użyj opcji jako klawisza meta”.
Teraz możesz wpisać opcję ctrl-b- ↑, aby zwiększyć rozmiar lub opcję ctrl-b- ↓, aby zmniejszyć rozmiar i nie musisz ponownie przypisywać klawiszy kontrolnych misji.
Odpowiedzi:
Prawdopodobnie twój terminal nie wysyła (wyraźnej) sekwencji po przytrzymaniu Controli naciśnięciu klawisza strzałki.
Spróbuj uruchomić
cat
i wpisać w nim klucze (Control-C, aby wyjść). Prawdopodobnie przekonasz się, że (np.) UpI Control- Upoba generują tę samą sekwencję.Aplikacja OS X Terminal
W swojej domyślnej konfiguracji aplikacja Terminal OS X wysyła sekwencję
^[[A
(lub^[OA
) bez względu na to, czy wpiszesz Upczy Control- Up(także dowolną kombinację zi, Shifti Option).Można jednak ponownie skonfigurować Terminal, aby wysyłał odpowiednie kody. Jest to trochę nużące, ale zazwyczaj musisz to zrobić tylko raz.
kliknij przycisk plus, aby dodać nowe powiązanie
control
Send Text:
akcji\033
), a następnie jeszcze[1;5
jeden znak:A
dla Up,B
dla Down,C
dla RightlubD
dla LeftNa przykład końcowa sekwencja dla Control- Uppowinna wyglądać tak
\033[1;5A
.Sekwencje te są tymi, które generuje XTerm (szczegóły w dokumentacji ctlseqs ).
Powtórz ostatni krok dla pozostałych klawiszy strzałek.
iTerm 2
iTerm 2 domyślnie wysyła oczekiwaną sekwencję.
źródło
cat
do wyświetlania zdarzeń na klawiaturzexterm-keys
włączonego dla tego okna tmux ; możesz chciećset -gw xterm-keys on
.Przynajmniej w Mavericks i iTerm2 musisz przytrzymać
Control
, a następnie nacisnąćb
(zamiast przytrzymywać), a następnie przytrzymać przycisk kierunkowy. Wysyła to prawie takie same sekwencje, jak przytrzymanieControl
-b
z przyciskiem kierunkowym, więc działa.Pamiętaj też, aby przejść do ustawień klawiatury i na karcie skrótów wyłączyć kontrolę misji i takie skróty klawiaturowe, które możesz mieć
Control
plus klawisz kierunkowy.źródło
Możesz użyć klawisza meta zamiast klawisza Control w kombinacjach ctrl-↑ i ctrl- ↓. W terminalu OSX domyślnym meta kluczem jest klawisz Escape. Na przykład, aby zwiększyć rozmiar panelu, wpisz ctrl-b esc- ↑.
Uważam, że klawisz Escape jest trudny do osiągnięcia, więc zamiast tego używam klawisza opcji jako klawisza meta. W Terminal.app możesz to zmienić, wybierając Terminal> Preferencje> Profile> Klawiatura: zaznacz „Użyj opcji jako klawisza meta”.
Teraz możesz wpisać opcję ctrl-b- ↑, aby zwiększyć rozmiar lub opcję ctrl-b- ↓, aby zmniejszyć rozmiar i nie musisz ponownie przypisywać klawiszy kontrolnych misji.
źródło