Почему не работает завершение Bash для 'cc' и 'c ++'?

Пытаясь скомпилировать файл C / C ++ с помощью команд cc / c++, я обнаружил, что я больше не могу использовать клавишу Tab для завершения bash. [ 114]

Я мог бы сделать то же самое до 12.10. Кроме того, при компиляции с gcc и g++, bash-complete работает нормально.

5
задан 13 September 2013 в 19:03

2 ответа

Я нашел очень простой и легкий способ сделать это:

открыть файл .bashrc

$ gedit ~/.bashrc

и добавить следующие строки:

complete -f cc
complete -f c++
0
ответ дан 13 September 2013 в 19:03

То, что вы видите, это ошибка в завершении bash .

К счастью, есть обходной путь: вы можете открыть /usr/share/bash-completion/completions/cc, найти следующее:

complete -F _gcc gcc g++ g77 gcj gpc &&
{
    cc  --version 2>/dev/null | grep -q GCC && complete -F _gcc cc  || :
    c++ --version 2>/dev/null | grep -q GCC && complete -F _gcc c++ || :
}

и заменить его следующим:

complete -F _gcc gcc g++ g77 gcj gpc cc c++
0
ответ дан 13 September 2013 в 19:03

Другие вопросы по тегам:

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