fzf-tab插件cd补全不显示隐藏目录的问题求助
解决fzf-tab补全cd时不显示隐藏目录的问题
你之前修改预览命令里的ls -a或者换用exa/eza都没用,核心原因是:你配置的fzf-preview只控制预览窗口的内容,和补全候选列表是否显示隐藏目录完全无关。
fzf-tab默认会继承zsh本身的补全规则,而zsh的cd命令补全默认是不包含隐藏目录的。要解决这个问题,得从补全候选的生成规则入手,有两种常用方案:
方案一:全局开启隐藏目录补全
如果希望所有命令的补全都包含隐藏文件/目录,在.zshrc中添加:
setopt globdots
这个zsh选项会让通配符匹配包含隐藏项,同时也会同步影响补全候选列表。
方案二:仅针对cd的fzf-tab补全开启隐藏目录
如果不想影响其他命令的补全逻辑,只给cd的fzf-tab补全指定包含隐藏目录的候选生成命令:
用ls的话:
zstyle ':fzf-tab:complete:cd:*' command 'ls -a --color=always'
用eza的话:
zstyle ':fzf-tab:complete:cd:*' command 'eza -a --color=always'
简单说,之前你改的是“预览时显示什么”,但问题出在“哪些目录会被作为补全候选列出来”,所以得调整候选生成的配置才行。
内容的提问来源于stack exchange,提问作者user1151816
相关产品推荐
相关产品推荐

