Zsh
zsh 補全:只提供特定的文件副檔名來補全
目前,我在我的
.zshrc
:zstyle ':completion::complete:mpv:*' menu yes select
除了使用菜單
mpv
完成之外,我還想將提供的完成限制為僅提供具有指定文件副檔名的文件,即mp4
,mp3
, …我怎樣才能將它整合到我現有的規則中?
最簡單的方法是使用
ignored-patterns
設置:zstyle ':completion::complete:mpv:*' ignored-patterns '^(*.(mp4|mp3))'
**但是,**這也會忽略不以or結尾的目錄。
.mp3``.mp4
如果您仍然希望目錄正常完成,那麼您必須使用稍微複雜的
file-patterns
設置:zstyle ':completion::complete:mpv:*' file-patterns ' *(D-/):local-directories:"local directory" *.(mp3|mp4)(D-^/):media-files:"media file" '
有關 and 的解釋
(D-/)
,(D-^/)
請參閱Zsh 手冊中關於 glob qualifiers 的部分。