Как автозаполнение проигнорировать конкретное завершение

У меня есть автозаполнение, работающее для bash. Когда я набираю часть имени программы, а затем TAB, я получаю полную команду. Работает, как ожидалось, никаких жалоб.

Однако в моей настройке у меня есть псевдоним, называемый flexo (который регистрирует меня на машине с тем же именем). Когда я fle TAB, я получаю только flex , потому что это совершенно правильная программа на машине. Как я могу дать указание полностью игнорировать это конкретное завершение? Другими словами, я хочу, чтобы fle TAB завершил flexo и полностью игнорировал flex . Благодарю.

One Solution collect form web for “Как автозаполнение проигнорировать конкретное завершение”

Monkeying с алгоритмом для вкладок завершен, чтобы разорвать пару предметов из пула, сложнее, чем вы себе представляете. Это действительно можно сделать, но это непросто, эффективно использовать или рекомендовать.

Вместо этого, @jasonwryan был на правильном пути, что вы должны придумать что-то еще для своего имени команды. Однако вместо того, чтобы пытаться остаться одним словом, имя сервера в качестве имени команды, я рекомендую вам переключать модели на многословную модель, такую ​​как остальная часть Unix. Заполнение табуляции для имен команд сильно отличается от завершения табуляции для аргументов, последнее довольно просто.

Установите короткий простой псевдоним типа 's' или любой другой псевдоним соединения, но не включайте имя хоста. Затем настройте настраиваемую процедуру завершения для этой команды, которая ТОЛЬКО автозаполняет имена хостов, такие как:

 alias s=ssh complete -F _known_hosts_real s 

Вы также можете создать для этого настраиваемую функцию:

 alias s=ssh _my_hosts() { type compopt &>/dev/null && compopt -o nospace COMPREPLY=( $( compgen -S = -W 'flexo mexo dexo' -- "$cur") ) } complete -F _my_hosts s 
  • Есть ли способ использовать выражения регулярных выражений для автоматического заполнения имен файлов в bash?
  • zsh - полностью расширяет двоичный путь на вкладке <tab>
  • Угадайте полное имя файла
  • zsh-completion: Завершение двух частей аргумента, разделенных двоеточием
  • Закладка autocompletion и история в tcsh
  • Запустить vi на последней строке
  • Как добавить шаблон к заполнению bash (для распаковки)?
  • Автозаполнение имени файла в командной строке bash
  • Могу ли я изменить, как работает автозаполнение zsh?
  • Как я могу программно получить доступ к завершению zsh?
  • ZSH и завершение файлов с символами новой строки
  • Interesting Posts

    wifi не работает на новой машине debian

    zsh завершение: меню и однозначный префикс с одной вкладкой?

    доступное облачное пространство для дублирования резервного копирования?

    Заблуждение GNU / Linux

    Периодически получать использование ЦП для одного процесса

    Помогла ли моя команда $ mv '* .mobi' соединить мои файлы?

    Попытка сохранить вывод команды файла в переменную, но на выходе указано «нет такого файла существует»?

    Виртуальный интерфейс не отображается в ifconfig?

    vncserver -compatiblekbd не работает с непризнанной опцией

    Сервисный скрипт вызывает другой скрипт с переменными

    Как открыть все файлы в каталоге, используя терминал, в emacs?

    Не удается войти на сервер с SSH из-за скрипта в файле /etc/profile.d, выходящего с статусом выхода 1

    выключение сервера ubuntu через 2 дня в полночь

    Как преобразовать файл MKV в H.264 / AVC с разрешением 640×360 с использованием FFMPEG?

    Как изменить стиль / тему QtCurve без KDE с помощью редактирования файла конфигурации?

    Linux и Unix - лучшая ОС в мире.