配置zsh补全菜单:循环切换时暂不更新命令行直至选中选项
解决Zsh补全菜单循环时的命令行实时更新问题
最简单的方案是通过zstyle配置关闭补全菜单的预览自动更新,让命令行仅在你明确选中选项(按ENTER、SPACE等)时才更新。
直接在你的~/.zshrc中添加以下配置:
zstyle ':completion:*' menu select=0 zstyle ':completion:*' no-insert true
参数说明
menu select=0:启用补全菜单的选择模式,但不会自动将当前高亮的选项插入命令行no-insert true:明确禁止在循环高亮菜单选项时自动插入内容到命令行
添加后重启zsh或者执行source ~/.zshrc生效,之后用TAB/SHIFT-TAB循环菜单时,命令行不会实时变化,只有当你按ENTER、SPACE或者其他绑定的选中快捷键时,才会把选中的选项填入命令行。
如果需要更精细的控制,比如仅针对特定命令生效,可以调整zstyle的匹配模式,比如只对git命令生效:
zstyle ':completion:*:git:*' menu select=0 zstyle ':completion:*:git:*' no-insert true
内容的提问来源于stack exchange,提问作者XDR
相关产品推荐
相关产品推荐

