Как bash завершить псевдоним в качестве команды

576
jalanb

У меня есть псевдоним

alias gi=git 

В отличие от git, giне может завершить на подкоманды, пути, ветви.

Как я могу сказать bash "завершить X, как если бы это был Y"?

1
https://superuser.com/questions/436314/how-can-i-get-bash-to-perform-tab-completion-for-my-aliases? JohannesM 8 лет назад 6
Ответ здесь лучше, чем на https://superuser.com/questions/436314/how-can-i-get-bash-to-perform-tab-completion-for-my-aliases. Я собираюсь добавить это и там. wisbucky 5 лет назад 1

1 ответ на вопрос

3
Six

Возможно, вы захотите добавить это в ваш .bashrc или .bash_aliases .

# load git completions _completion_loader git  # assign git's completion function _git to gi complete -o bashdefault -o default -o nospace -F _git gi 

В качестве альтернативы вы можете использовать следующее (что в значительной степени эквивалентно):

# load git completions . /usr/share/bash-completion/completions/git  # assign git's completion function _git to gi __git_complete gi _git 

Обратите внимание, что вы можете пропустить первую строку (любого из вышеупомянутых примеров), если динамические завершения не включены. Вы должны, вероятно, предположить, что он включен, хотя.

Похожие вопросы