Базовые автодополнения регистрируют функцию-обработчик, которая получает текущее слово и возвращает возможные варианты.
Пример кода показывает функции _generate_foo_completions, _complete_foo_bash и _complete_foo_zsh для подключения автодополнения в Bash и Zsh.
Для отображения описаний в Zsh используются compadd с параллельными массивами вариантов и описаний, а в Bash описания по умолчанию отбрасываются.
Чтобы показать описания в Bash, при нескольких совпадениях сохраняют описание в вариантах, но при единственном совпадении обрезают его при вставке.
Для показа описания при единственном совпадении добавляют фиктивный вариант, чтобы сделать автодополнение неоднозначным и вывести описание.
Get notified when new stories are published for "Hacker News 🇷🇺 Русский"