Mac Terminal Auto Complete
Od jakiegoś czasu Szukałem łatki do tego. Zwykle na terminalu Unix / Linux po naciśnięciu klawisza tab zostanie on automatycznie uzupełniony, dopóki nie będzie kilku opcji, a następnie wyświetli listę opcji poniżej do wyboru. Na przykład:
cd he
helpFolder/ helpMe/ heIsThere/
cd help
Teraz z terminalem Mac wymusza naciśnięcie go dwa razy, aby zobaczyć opcje i zastanawiałem się, czy można zmienić to ustawienie na jedno naciśnięcie tab?
4 answers
Włóż to do swojego ~/.inputrc
:
set show-all-if-ambiguous on
Musisz ponownie uruchomić powłokę (na przykład otwierając nowe okno terminala lub wpisując exec /bin/bash
).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-06-20 19:52:38
- wpisz w Terminalu
nano ~/.inputrc
-
Wklej następujący tekst w osobnych wierszach
set completion-ignore-case on set show-all-if-ambiguous on TAB: menu-complete
- Naciśnij Control + O, aby zapisać zmiany do .inputrc, po którym następuje control+X, aby zamknąć
- Otwórz nowe okno lub kartę terminala lub wpisz "login", aby otworzyć nową sesję z obowiązującymi regułami
- Wpisz i naciśnij klawisz tab
Src: http://osxdaily.com/2012/08/02/improve-tab-completion-in-mac-os-x-terminal/
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-29 19:29:00
To, co chcesz zmienić, to konfiguracja powłoki Bash. Moja wersja OS jest 10.11.6 i używam mvim, tutaj tylko vim lub vi, jeśli~/.inputrc nie istnieje, następnie należy utworzyć nowy.
- w typie terminala
vim /.inputrc
. Zmienna completion-ignore-case I show-all-if-niejednoznaczna muszą być włączone, odbywa się to poprzez wklejenie tych ustawień w dwóch liniach,
set completion-ignore-case on
iset show-all-if-ambiguous on
-
Dodaj
TAB: menu-complete
i napisz i zakończ Vima. :wq - Zamknij Terminal running, Command + Q.
- Uruchom Terminal ponownie i zweryfikuj wynik.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-19 03:57:28
Dodaję nową odpowiedź, ponieważ w moim przypadku dodanie linii set show-all-if-ambiguous on
nie wystarczyło.
Musiałem też usunąć linię: TAB: menu-complete
.
Mój kompletny plik ~/.inputrc
jest następujący:
set completion-ignore-case on
set show-all-if-ambiguous on
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-13 09:17:55