zsh 不区分大小写的完成匹配不起作用

问题描述 投票:0回答:1

问题

我最近对我的终端开发工具做了一些更改。一切都按预期工作,除了不区分大小写的匹配完成,在此之前它将匹配不区分大小写和来自任何方向的完成。


设置

  • 操作系统:Pop!_OS 22.04 LTS
  • 外壳:zsh
  • 终端:Wezterm
  • 提示:星舰
  • 插件管理器:zinit

代码

与完成相关的

.zshrc
配置文件示例。

# zsh plugins
zinit light zsh-users/zsh-syntax-highlighting
zinit light zsh-users/zsh-autosuggestions
zinit light zsh-users/zsh-completions
zinit light Aloxaf/fzf-tab

# Load zsh-completions
autoload -U compinit && compinit

# Completion styling
zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
autoload -Uz compinit && compinit
setopt MENU_COMPLETE
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
zstyle ':completion:*' meno no

我已经看到了一些与此相关的其他问题,并浏览了 zsh 文档,但仍然没有解决它...如果有人有一些提示,说明配置文件或其他任何内容有任何错误,我将不胜感激。 😄

shell terminal command-line-interface zsh
1个回答
0
投票

我尝试使用您在

.zshrc
文件中的配置进行测试,经过一些调试后,我发现问题是由于您的匹配器列表表达式造成的。这是我对您的配置的更正

autoload -Uz compinit && compinit
zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'

setopt MENU_COMPLETE
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
zstyle ':completion:*' meno no

希望这对您有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.