Zmapuj Ctrl-A na ekranie GNU

30

Używam ekranu GNU od kilku dni i CTRL-Anawigacja zaczyna na mnie działać . Jak mogę ponownie przypisać tę kombinację klawiszy i jakie są typowe zamienniki tych kluczy? Na przykład w Vimie używam jjzamiast, <esc>ponieważ nie wymaga ode mnie łamania formy pisania.

Uwaga: Alex wyjaśnia, jak zmapować kombinację klawiszy, jednak dodanie powiązania .screenrcnie działało dla mnie. Dodałem to etc\screenrci działało. .screenrcMetoda wydaje się działać dla większości ludzi, nie jestem pewien, dlaczego nie w moim systemie.

Dru
źródło

Odpowiedzi:

26

Aby to zrobić CTRL+J, użyj następującego w .screenrc.

escape ^Jj

Aby zacytować stronę ,

 escape xy

Ustaw znak polecenia na x, a znak generujący literalny znak polecenia (uruchamiając polecenie „meta”) na y (podobnie jak opcja -e). Każdy argument jest albo pojedynczym znakiem, dwuznakową sekwencją postaci „^ x” (co oznacza „Cx”), odwrotnym ukośnikiem, po którym następuje liczba ósemkowa (określająca kod ASCII znaku), lub odwrotnym ukośnikiem drugi znak, taki jak „\ ^” lub „\”. Domyślna wartość to „^ Aa”.

Alex Hirzel
źródło
Kiedy zmiany zostaną wprowadzone, CTRL+Jczy powinno to działać CTRL+Apoprawnie?
Dru
Mam escape ^Jj^w .screenrcpliku katalogu głównego i pliku katalogu domowego użytkownika. Ponownie uruchomiłem ekran i ponownie uruchomiłem sesję ssh, w której byłem. Żadne z nich nie zadziałało, spodziewałem CTRL+Jsię zachowywać jakCTRL+A
Dru
Czy masz na końcu dodatkową karetkę? Powinno być escape ^Jj, nie escape ^Jj^.
Alex Hirzel
1
Może występuje konflikt z innymi powiązaniami, ale wypróbowałem kilka kluczy.
Dru
5
Możesz także nacisnąć Ctrl + a i wpisać „: escape ^ Jj” (jak w vi), aby dynamicznie zmienić mapowanie.
szmaty
14

Podobne do rozwiązania @Alex Hirzel, ale wolę używać skrótów klawiszowych Ctrl + ^ (Ctrl + Shift + 6), ponieważ nigdy nie jest używany w skrótach klawiszowych emacsa.

Po prostu napisz w ~/.screenrcnastępujący sposób:

escape ^^^
Chenming Zhang
źródło