Mam ten plik ~ / .inputrc, który utworzyłem dla niektórych powiązań klawiszy.
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C":forward-word
"\e[1;5D":backward-word
"\e[5C":forward-word
"\e[5D":backward-word
"\e\e[C":forward-word
"\e\e[D":backward-word
za każdym razem, gdy próbuję uruchomić source ~/.inputrc
, pojawia się następujący błąd:
\ e [1; 5C: słowo do przodu: Nie znaleziono polecenia. \ e [1; 5D: słowo wstecz: polecenie nie znalezione. \ e [5C: słowo do przodu: Nie znaleziono polecenia. \ e [5D: słowo wstecz: polecenie nie znalezione. \ e \ e [C: słowo do przodu: Nie znaleziono polecenia. \ e \ e [D: słowo wstecz: polecenie nie znalezione.
Nie działa również, gdy otwieram nowy terminal, nie otrzymuję błędu, ale moje kombinacje klawiszy ctrl również nie działają w nowym terminalu. Sam utworzyłem ten plik, ponieważ nie mam uprawnień roota do zmiany / etc / inputrc. Czy ktokolwiek może mi pomóc? Dzięki.
EDYCJA: Próbowałem również pliku ze spacją po znaku dwukropka (:). To nie działa Próbowałem również uczynić go wykonywalnym (chmod + x ~ / .inputrc), ale nie działało.
EDYCJA: Zdałem sobie sprawę, że ta procedura dotyczy tylko „bash” i uruchamiam „tcsh”. W przypadku „csh” użyj .bindings
pliku zamiast .inputrc
pliku i użyj bindkey
składni.
bind
polecenie?$include /etc/inputrc
?.inputrc
Plik nie jest plikiem być pozyskiwane. Powinno to zostać wzięte pod uwagę automatycznie przezbash
inne oprogramowanie korzystające z biblioteki readline. Jeśli to nie zadziała, dodaj spację za dwukropkiem, np(Zawsze widziałem spację w tym pliku konfiguracyjnym).
źródło
.inputrc
nie jest skryptem powłoki; toreadline
plik konfiguracyjny.Kluczowe powiązania i
~/.inputrc
opublikowany plik są dlabash
. Docsh
(lubtcsh
) użyj pliku~/.bindings
i użyj następującej składni.Zrozumiałem to po pewnym googlowaniu.
źródło
source ~/.bindings
do mojego~/.cshrc
pliku naprawiło to.