Autojump: zsh 中的自动完成功能(使用 oh-my-zsh)不起作用

创建于 2015-02-18  ·  20评论  ·  资料来源: wting/autojump

对不起,如果我遗漏了一些明显的东西,但希望你能告诉我那是什么。

我在zsh (版本 5.0.7)和oh-my-zsh的设置中安装了autojumpbrew ,但似乎无法使用选项卡自动完成,而不是我只是获取当前目录的文件和文件夹。

我已将[[ -s $(brew --prefix)/etc/profile.d/autojump.sh ]] && . $(brew --prefix)/etc/profile.d/autojump.sh行添加到.zshrc并尝试启用 $#$ oh-my-zsh $#$ 附带的autojump插件(我应该吗?)。 无论如何,我无法让标签完成工作。 其他一切正常。

我错过了什么? 谢谢!

所有20条评论

对我来说也是如此。 自动跳转中的 TABbing 没有做任何事情......

自动跳转中的选项卡仍然没有做任何事情。

+1,我也只是获取当前目录的文件和文件夹。 为什么 ??? 我用 brew 安装了自动跳转,但它不起作用

在 mac 中,它不起作用; 但在ubuntu中没关系

我对这个问题的解决方法是 -
1)先在bash中执行zshrc,然后换SHELL,比如说——
$~/.zshrc
$ZSH

如果您已按照此处给出的安装步骤进行操作 - https://github.com/robbyrussell/oh-my-zsh/blob/master/README.markdown

PS:它适用于我的mac

FWIW,我也在 Mac 上(使用 zsh)。 前段时间有这个问题,但对我来说已经修复了一段时间。

我有同样的问题:

image

同样在这里。 任何更新?

使用 oh-my-zsh,自动跳转完成工作。
没有 oh-my-zsh,补全是行不通的。

我通过自制软件安装了自动跳转。 我确定
[ -f /usr/local/etc/profile.d/autojump.sh ] && . /usr/local/etc/profile.d/autojump.sh
在我的 ~/.zshrc

自动跳转 v22.5.3
zsh 5.7.1 (x86_64-apple-darwin19.0)

我想我在阅读Move to zsh时找到了解决方案
没有 on-my-zsh,我需要运行
autoload -Uz compinit && compinit
我还在 ~/.oh-my-zsh/oh-my-zsh.sh 中找到了类似的命令
autoload -U compaudit compinit
我想关键是compinit

(如果我的解决方案也适合你,请给我一个大拇指。😃)

@boyoungzheng你的解决方案对我有用,除了它在输入的文本之后添加了烦人的双下划线(“__”):

所以:
$ j tmp<tab><tab>

变成:

$ j tmp__

tmp__1__/bla/tmp-something
tmp__2__/bla/another-tmp
...

也有一些相同的建议,这似乎是一个错误。
但对我来说已经足够了:)

@boyoungzheng你的解决方案对我有用,除了它在输入的文本之后添加了烦人的双下划线(“__”):

所以:
$ j tmp<tab><tab>

变成:

$ j tmp__

tmp__1__/bla/tmp-something
tmp__2__/bla/another-tmp
...

也有一些相同的建议,这似乎是一个错误。
但对我来说已经足够了:)

你设法解决这个问题吗? 我有同样的问题。 自动完成工作,但它只显示两个下划线。

@MauritsDescamps不,我还没有设法解决它。

有人找到解决此问题的方法吗? 我也被毛里茨的问题困住了。

显然,这是一个功能

ZSH 选项卡完成修复。

ZSH 行为现在与 Bash 行为匹配。 但是,它需要加载 compinit 模块。 将以下行添加到 ~/.zshrc:

自动加载-U compinit; 组合

要使用类型:

j

将显示一个显示顶部数据库条目的菜单。 键入任何数字,然后完成输入。

@shaungrady有趣。 好的,我运行了它并收到了一些关于不安全目录的初步警告。 这很容易通过运行compaudit并修复列出的目录的权限来解决。

该文件中的标记不正确,因此我不得不阅读 README 的 RAW 格式以了解它在说什么。 它说输入j后跟space后跟 2 tab s,然后输入您要跳转到的数字,但这只会弹出两个下划线。 但是,我可以执行j xTABTAB以扩展为x__1_foo x__2_bar并输入2以跳转到bar

如果这是最好的,它的功能很好,但在我看来还是有点不对劲。 谢谢。

嗨,我添加了 de plugin autojump un .zshrc 文件,并且可以正常工作。
MacOS Catalina V10.15.7
自动跳转 v22.5.3

plugins=(git autojump)

嗨,我添加了 de plugin autojump un .zshrc 文件,并且可以正常工作。
MacOS Catalina V10.15.7
自动跳转 v22.5.3

plugins=(git autojump)

并将source $ZSH/oh-my-zsh.sh行从同一文件末尾的.zshrc移动。

我真的认为@shaunggrady通过添加autoload -U compinit; compinit来完成工作来解决这个问题。 ( man zshcontrib )。 仅当您使用 oh-my-zsh 时才需要plugins=(autojump)东西,但该插件只是一个提供自动跳转配置文件脚本的脚本(autojump.plugin.zsh)。

如果您不使用 oh-my-zsh,就像我不使用一样,您仍然需要获取脚本(根据操作系统和/或您安装它的方式,脚本将位于不同的位置,例如,对我来说) MacOS 使用 Homebrew 安装 autojump,它在 /usr/local/etc/profile.d/autojump.sh 中)。

总之,无论您使用 oh-my-zsh 还是常规 zsh 的步骤是:
1) 在 .zshrc 中,获取 autojump 配置文件脚本(或者如果使用 oh-my-zsh,只需让 plugins=(autojump) 为您获取它。
2) 在 .zshrc 中,通过添加autoload -U compinit; compinit -y来完成工作
3)通过输入j foo[tab][tab]开始完成事情,当菜单弹出时,输入目录号码并输入。

@rkulla我确实在 Ubuntu 18.04 oh-my-zsh 上遇到了同样的问题。

我确实按照建议在我的 zshrc 中添加了autoload -U compinit; compinit -y并且我现在可以完成选项卡! 谢谢 !

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

xuhdev picture xuhdev  ·  3评论

shanyutou picture shanyutou  ·  3评论

davux picture davux  ·  9评论

pgrm picture pgrm  ·  4评论

srid picture srid  ·  14评论