Потому что синтаксис предполагает имена проектов, а не пути к ним. Поскольку в модели каждому проекту соответствует директория в ~/projects, их имена невозбранно выдираются ls'ом. Подставление произвольной директории туда — неверно по идеологическим причинам.
Ну и хотелось показать возможность подставления произвольных данных =)
ну, в нем автокоплит многое (в том числе большую часть описанного в статьях) умеет из коробки без дополнительных изощрений. + еще очень много всяких крутых штук, которые к башу прикручивать замучаешься, но это уже оффтоп
в shells стоит сделать выжимку из этих двух статей — будет самое то.
А «linux для всех» — не совсем то, «домашним» пользователям нафиг не нужен комплишн.
При написании автодополнения я столкнулся с такой проблемой:
Некоторые агументы могут иметь двоеточие в середине, например у меня есть второй аргумент «foo:bar».
Когда я ввожу «fo», аргумент дополняется до «foo:» и при последующем нажатии на tab дополнение не проиходит так как COMP_CWORD равно не двум, а трём. То есть двоеточие выступает как разделитель.
Можно ли как-то обойти эту пробелму?
Извиняюсь за вопрос не в тему. А можно ли сделать что-то вроде алиаса аргумента команды в bash?
Например, в команде «du -h --max-depth 0 /home» заменить аргумент "--max-depth" на фряшный "-d"?
Заранее, спасибо!
Использование bash completion в командной строке, собственных скриптах и приложениях. Часть 2