Завершение zsh - список файлов определенного типа MIME

Я пишу скрипт автозаполнения для приложения просмотра изображений. Есть ли способ указать, чтобы перечислить только файлы в каталоге, которые имеют определенный MIME? То есть все виды пантомимы image,

Что я делаю сейчас:

_arguments -C \ ... # Handle flags '*:images:_files -g "{*.jpg,*.png}"'

Расширение этого для всех типов изображений будет немного грязным.

1 ответ

Это найдет все изображения в текущем каталоге:

file --mime-type * | awk '$2 ~ /application\//{ sub(":$","", $1); print $1 }'

но обнаружение mimetype довольно дорого, поэтому поместить его в функцию завершения будет довольно вяло (особенно если вы запускаете его в большом каталоге).

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