Docker 选项卡/命令完成未显示所有命令

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

我的 macOS 上安装了 oh-my-zsh 并启用了 docker zsh 插件的用户 A 在我进行 Tab 补全时看到了这一点:

 $ docker i<tab>
image    -- Manage images
images   -- List images
import   -- Import the contents from a tarball to create a filesystem image
info     -- Display system-wide information
init     -- Creates Docker-related starter files for your project (Docker Inc., v0.1.0-beta.4)
inspect  -- Return low-level information on Docker objects

我也在同一台机器上使用 oh-my-zsh 设置用户 B,但是当我这样做

docker i<tab>
时,它会导致
docker inspect
,而不是上面的很好的完成。其他选项均未显示。与
docker p<tab>
相同,仅显示
ps
prune
的选项,但没有其他以字母
p
开头的子命令,如
pause
pull
port
等。我也不知道看不到像用户 A 那样的子命令描述。用户 B 只能看到没有描述的命令。

两台机器都运行相同版本的 zsh。

什么可以解释为什么用户 B 与用户 A 的 docker 补全工作方式如此不同?

docker oh-my-zsh tab-completion
2个回答
1
投票

好吧,看起来用户 A 拥有旧版本的 oh-my-zsh docker 插件,而用户 B 拥有较新版本。我认为新版本可能有错误。


0
投票

你是对的,这是因为 Docker 插件更新了。长话短说,将以下行添加到您的

.zshrc
:

zstyle ':omz:plugins:docker' legacy-completion yes

(如插件的 README 中所述)

您可以在此处找到详细信息:完成功能在 Docker 版本 24.0.2 中无法正常工作。等待 Docker 团队的修复。之后,您可以从配置中删除此设置。

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