2011-06-22 13 views
10

Nie mogę tego rozgryźć, rozumiem cdspell shopt -s, ale nie mogę się dowiedzieć, co robi shopt -s dirspell.Czym zajmuje się shopt -s dirspell?

Bash Instrukcja mówi:

dirspell

Jeśli ustawione, bash usiłuje korektę pisowni w nazwach katalogów podczas uzupełniania słów, jeśli nazwa katalogu początkowo dostarczany nie istnieje.

Próbowałem kilka razy na kilku katalogach, ale to nie jest zachowanie.

Używam bash 4.2.10 (2) na i386-jabłko-darwin10.7.0

Odpowiedz

8

Z change-log

x. Istnieje nowa opcja powłoki: `dirspell '. Po włączeniu, kod zakończenia nazwy pliku wykonuje korekcję ortograficzną dla nazw katalogów podczas uzupełniania .

Spróbujmy:

$ ls 
spam/ 

$ cat spam/test 
hello world 

bez dirspell

$ cat span/test [tab] 
# nothing happens 

z dirspell

$ shopt -s dirspell 
$ cat span/test [tab] 
#line is replaced by 
$ cat /home/user/tmp/shopt/spam/test 
+1

Rekwizyty wskazujące, że dirspell działa z drugiego poziomu plików/katalogów, co właściwie ma sens, ale kiedy tabomplete, plik drugiego poziomu lub katalog zostaje zakończony spacją, a wynikiem jest brak takiego pliku lub katalog, który sprawia, że ​​ten sklep jest dla mnie niepraktyczny, bezużyteczny, sensacyjny? @Frederik – Spartan

+0

Tak, ja też nie otrzymuję zamiennika linii. Zamiast tego, działanie przycisku kończy się, ale potem literówka zostaje wysłana do polecenia, więc sama komenda kończy się niepowodzeniem. – singpolyma

+0

Nie widzę nic, co się stanie, gdy kliknę przycisk "dirspell". –

3

Po ustawieniu opcji powłoki direxpand i dirspell, a następnie kończy się działanie tab-completion.

+0

'Direxpand' jest dostępny od [4.3-alpha] (http://wiki.bash-hackers.org/internals/shell_options#direxpand). – bishop

Powiązane problemy