Иногда я хочу имя файла вместо того, что zsh предполагает для меня. Например, у меня есть файл PNG без надлежащего .png
суффикс, который заставляет zsh думать, что это не изображение и не перечислит его, когда я ввожу Tab
завершать аргументы display
.
Я задаюсь вопросом, существует ли сочетание клавиш, которое завершается для имени файла везде, где контекст, как ^XC
для _correct_filename
, или как настроить zsh, чтобы сделать вещь?
Вы можете добавить привязку клавиш, чтобы делать то, что вы хотите:
zle -C complete complete-word complete-files
bindkey '^X\t' complete
complete-files () { compadd - $PREFIX* }
Изменить: Добавлено $ PREFIX
Вы можете добавить эти строки в ваш файл ~ / .zshrc
.
При нажатии Ctrl - x Tab на каждом этапе вместо Tab в списке завершения отображаются все файлы. Вы можете выбрать другую комбинацию клавиш, которая вам подходит.
Или, чтобы дополнения ImageMagick всегда включали все файлы, попробуйте отредактировать (сначала сделайте резервную копию) файл / usr / share / zsh / functions / Completion / Unix / _imagemagick
(или аналогичный) и измените его чтобы закомментировать существующую строку, которая начинается с _files
, и добавить показанную новую:
if (( $# )); then
# _files "$@" -g "*.(#i)(${~formats//:/|})(-.)"
_files "$@"
return
fi