首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >向ZSH添加自动完成脚本似乎不起作用

向ZSH添加自动完成脚本似乎不起作用
EN

Stack Overflow用户
提问于 2021-02-08 15:02:20
回答 1查看 125关注 0票数 0

我有一个Git存储库,omni

~/omni上签出了omni

~/omni/completions/_omni上有一个完成脚本。

我通过~/.zprofile设置了fpath=( ~/omni/completions $fpath ),所以补全脚本应该会被提取出来,但并没有。这一点已经得到了简单的证明:

代码语言:javascript
运行
复制
$ for dir in "$fpath[@]"; do if [ -f "$dir/_omni" ]; then echo $dir; fi; done
/Users/myusername/omni/completions

我还运行了compinit -i来初始化完成,但是脚本没有被拾取。

代码语言:javascript
运行
复制
$ compinit -i

$ which _omni
_omni not found

但是,如果我重新初始化完成,一切都会正常工作

代码语言:javascript
运行
复制
$ which _omni
_omni not found

$ compinit -i

$ which _omni
_omni not found

$ compinit -u

$ which _omni
_omni () {
    # undefined
    builtin autoload -XUz
}

现在可以选择完成脚本了。

我需要做什么才能在shell启动、compinit -i运行时自动拾取完成脚本?

EN

回答 1

Stack Overflow用户

发布于 2021-02-08 15:08:36

这似乎与权限有关,因为所有文件(及其父目录)都被标记为777。

代码语言:javascript
运行
复制
chmod -R go-rwx ~/omni

似乎已经解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66097160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档