OSX上的Docker shell完成iTerm2 oh-my-zsh

时间:2017-08-04 15:02:47

标签: docker iterm2 oh-my-zsh

我想在这个堆栈上完成Docker shell的完成(OSX iTerm2 oh-my-zsh)

我遵循了本指南 - > https://docs.docker.com/compose/completion/

首先我执行了这个

$ mkdir -p ~/.zsh/completion
$ curl -L https://raw.githubusercontent.com/docker/compose/master/contrib/completion/zsh/_docker-compose > ~/.zsh/completion/_docker-compose

然后我几乎在最后~/.zshrc个文件

添加了这两行
fpath=(~/.zsh/completion $fpath)
autoload -Uz compinit && compinit -i

然后在终端我运行

source ~/.zshrc
exec $SHELL -l

但是当我按tab时,它会建议路径上的文件和文件夹

2 个答案:

答案 0 :(得分:26)

您设置docker-compose的完成时间不是docker。如果您还想添加docker完成,请运行以下命令并重新加载shell。

curl -L https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/zsh/_docker > ~/.zsh/completion/_docker 

其他解决方案(更新):

docker插件添加到.zshrc的插件列表中:

  1. 打开〜/ .zshrc
  2. docker添加到插件列表中,如下所示: plugins=(docker ...)

答案 1 :(得分:1)

运行以下命令,确保您拥有oh-my-zsh的最新版本:upgrade_oh_my_zsh

另外,在尝试所有其他答案后,it can't hurt to run rm ~/.zcompdump*

为我修复了。