【问题标题】:ZSH on 10.9: widgets can only be called when ZLE is active10.9 上的 ZSH:小部件只能在 ZLE 处于活动状态时调用
【发布时间】:2013-12-03 17:11:31
【问题描述】:

我是 ZSH 的新手,并且一直在使用 oh-my-zsh 在 OSX 10.9 上朗读 ZSH。我一直在尝试利用历史插件,但我明白了,“只有在 ZLE 处于活动状态时才能调用小部件。”当调用任何与历史相关的命令时。我一直在寻找一种方法来规避这种情况,但一直未能找到解决方案。

【问题讨论】:

  • 在 shell 中运行 zmodload 并检查是否列出了 zsh/zle。如果不是,您需要在 oh-my-zsh 插件之前加载它。您可以在~/.zshrc 之前 source oh-my-zsh 行中执行此操作:zmodload zsh/zle
  • zmodload 的结果显示 zle 已加载,但我仍然收到相同的错误,“只有在 ZLE 处于活动状态时才能调用小部件。”我还能怎么激活麦芽酒?

标签: zsh zsh-zle


【解决方案1】:

它是bug 中的oh-my-zsh。要修复它,请将其放入您的 .zshrc:

TRAPWINCH() {
  zle && { zle reset-prompt; zle -R }
}

解释:

没有选项也没有参数,只会设置返回状态。 如果 ZLE 当前处于活动状态并且可以调用小部件,则为零 使用此内置命令,否则使用非零。请注意,即使 返回非零状态,zle 可能仍然是活动的 完成系统;这不允许直接调用 ZLE 小部件。

【讨论】:

  • 我已将您的代码添加到我的 .zshrc 文件中,并获取了它,但我仍然收到一条错误消息,提示“zle:只有在 ZLE 处于活动状态时才能调用小部件”。 zmodload 显示 zle 已加载。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-27
  • 1970-01-01
  • 2020-07-04
  • 2022-01-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多