Niektóre git
polecenia mają wiele opcji i często przydałoby się przeszukać je pod kątem tego, czego potrzebuję - szukałem tylko opcji, która kontroluje TABszerokość git-gui
, ale jest około 200 uzupełnień git config
. Oczywistym obejściem jest skopiowanie wszystkich uzupełnień do edytora i przeszukanie ich, ale wolałbym to zrobić
[something] | grep tab
Nie istnieją man
lub info
stron dla compgen
, help compgen
nawet nie wyjaśniają własne opcje, a nie ma autouzupełnianie dla compgen
(jak na ironię, że?).
PS: compgen -A
nie działa.
PPS: To nie jest pytanie git-gui
- Rozwiązanie pytania o szerokość zakładki było gdzie indziej.
PPPS: Tu nie chodzi o automatyczne uzupełnianie poleceń, tylko parametry poleceń .
bash
autocomplete
compgen
l0b0
źródło
źródło
Odpowiedzi:
Możesz użyć następującej funkcji, która używa tego samego sposobu, w jaki
sudo
automatyczne uzupełnianie generuje listę ukończeń:gdzie
_command_offset
jest zdefiniowane w bash-complete (pakiet).UWAGA: funkcja musi być uruchomiona w interaktywnej powłoce (tzn. Jeśli znajduje się w pliku, plik musi zostać pobrany zamiast po prostu uruchomić.) Lub konieczne reguły / funkcje uzupełniania nie zostaną zdefiniowane.
PS.
compgen -A
działa tylko dla wbudowanych akcji, to co powinieneś wypróbować (ale też nie działa) tocompgen -F
(lub faktyczniecompgen -o bashdefault -o default -o nospace -F _git
). Powód, dla którego to nie działa (i doc dla wbudowanych poleceń bash, w tym compgen / complete) można znaleźć w bash (1) .źródło
local COMP_LINE="$*"
)