Na maszynie Debian Wheezy przy poprzednim zadaniu przyzwyczaiłem się do klawiszy Alt + Left i Alt + Right, aby przeskakiwać między słowami w aktywnym wierszu poleceń (w skrócie).
Ponieważ jednak w domu uaktualniłem do Jessie (Debian 8.0, gałąź testowa), to już nie działa: zamiast przejść do poprzedniego słowa, Alt-Left drukuje coś w stylu D
lub [D
. OTOH, jeśli otworzę ssh i połączę się z moją bezgłową Debian Wheezy, działa to idealnie.
Ponadto właśnie zainstalowałem Fedorę 20 w moim nowym zadaniu i tutaj zachowanie jest takie samo. Dotyczy to bash, csh i ksh (rozpoczęte pod env -i
), a także rxvt-unicode i xfce4-terminal, więc musi to być coś poza tym poziomem.
Gdzie jeszcze na stosie powinienem szukać różnicy?
bash
terminal
keyboard-shortcuts
readline
Alois Mahdal
źródło
źródło
Odpowiedzi:
Prawdopodobnie zdefiniowano plik lokalny
~/.inputrc
lub globalny/etc/inputrc
, który został utracony podczas aktualizacji. Łatwym rozwiązaniem jest utworzenie~/.inputrc
pliku z następującymi liniami:Będą pracować
xterm
iterminator
agnome-terminal
jednak może być konieczne manipulowane dla innych terminali. Niestety, każdy emulator terminala może używać innej składni. Aby uzyskać więcej informacji, zobacz moją odpowiedź tutaj .źródło
terdon ustawił mnie we właściwym kierunku: plik inputrc .
Winowajcą jest to, że całkiem nieintuicyjnie, readline6 faktycznie używa ~ / .inputrc zamiast / etc / inputrc, który to readline (3) nie podkreśla ani nie obala:
Tak więc, w obu maszynach Debiana / etc / inputrc jest identyczna jak ta przewidziana przez libreadline6 opakowaniu (wersja jest taka sama, jak również), na nowszym komputerze ~ / .inputrc istnieje z jednej linii:
set bell-style none
. Po usunięciu tego pliku wszystko działa dobrze (patrz uwagi poniżej).Nie mogę sprawdzić Fedory do jutra, ale myślę, że to ten sam problem. Aktualizacja: W Fedorze ~ / .inputrc nie istniało, tutaj / etc / inputrc jest po prostu inny, więc może tego nie zdefiniować. Jako poprawkę po prostu zapisałem inputrc Debiana jako moje ~ / .inputrc.
Uwagi:
Tajemnica, jak to się zmieniło podczas aktualizacji 7> 8, pozostaje nierozwiązana, ale częściowo można to przypisać mojej złej pamięci i niezamierzonemu żonglowaniu plikami kropkowymi. (BTW, to nie była aktualizacja APT, ale raczej ponowna instalacja i ręczne przenoszenie pliku kropkowego, więc może ~ .inputrc jakoś temu przeszkodziło.)
Ponadto, gdy mówię OK, mam na myśli, że działa z Ctrl wszędzie oprócz Rxvt (OK, sprawdziłem tylko xfce4-terminal, ale wiemy, że Rxvt jest zwykłym buntownikiem), gdzie jest to mapowane na Alt, prawdopodobnie dlatego, że Ctrl jest pobierany przez Rxvt -specyficzna funkcjonalność - przenieś aktywną kartę na listę.
Jak wspomniała strona man, za pomocą bash możesz użyć wbudowanego polecenia bind, aby sprawdzić, co aktualnie masz.
źródło
$include /etc/inputrc
na górze,~/.inputrc
jeśli chcesz to również przeczytać.$include
d domyślnie).