как мне получить zsh для * просто * перечислить материал в моем текущем каталоге во время завершения табуляции?

В zsh, когда я набираю несколько символов, он перечисляет все это (команды и, я думаю, подфайлы). Как получить zsh, чтобы просто перечислить содержимое моего текущего_каталога?

введите описание изображения здесь

На картинке выше я a_dir символ a в надежде, что он позволит мне заполнить вкладку a_dir , но он предлагает мне целый каталог команд.

Есть ли постоянная команда, которая просто позволяет мне вводить символ a ?

Установите стиль tag-order так, как показано ниже.

 zstyle :completion::complete:-command-:: tag-order local-directories - 

local-directories тегов доступны только в том случае, если autocd опция autocd . The - указывает zsh на удаление любых возможных совпадений в других tag s

Вы также можете найти стиль insert-tab ; поэтому, когда $BUFFER пуст, он все равно будет заполнять файлы в текущем каталоге.

 zstyle ':completion:*' insert-tab false 

Чтобы ответить на ваш вопрос (даже если я не уверен, что вижу его цель), и чтобы ответить на комментарии после него, существует способ завершить только по имени файла без потери нормального завершения. Вы можете связать завершение имени файла с ключом (здесь Ctrl + F ):

 zstyle ':completion:files:*' completer _files zstyle ':completion:files:*' file-patterns '*:all\ files' zstyle ':completion:files:*' hidden all zle -C files menu-complete _generic bindkey '^F' files 

Это может быть полезно, если вы установите autocd и добавив псевдонимы суффикса, например:

 alias -s pdf="zathura" alias -s jpg="sxiv -f" alias -s tex="vim" setopt autocd