如何从回滚缓冲区中省略 zsh 完成?

如何从回滚缓冲区中省略 zsh 完成?

我有一个带有自动完成功能的 zsh 配置(自动功能) 和选项no_always_last_prompt,它将在补全下方重新打印提示和当前命令行缓冲区。

有没有办法在编辑命令行时不将补全包含在回滚缓冲区中并将提示保留在屏幕底部?

我想:

  • 让它在 Linux 控制台中工作,但我可以使用 tmux 或dvtm,所以如果我可以在另一个窗格中显示完成情况,那是可以接受的;
  • “清除”回滚缓冲区中的完成,可能来自precmd钩子函数、表单完成小部件等accept-line
  • 修改clear-screen小部件以打印$LINES空行,然后zle .reset-prompt && zle -R(我也会尝试替换/usr/bin/clear

我正在考虑使用转义序列自动删除所需的行数以摆脱打印的完成,并以某种方式滚动或重新打印底部的提示。请注意,我想保留以前的命令输出行。它们应该在完工的上方可见。

答案1

auto-fu7年没有更新了。我什至无法让它与我当前的 Zsh 安装一起工作。

相关内容