【问题标题】:What are these shell escape characters?这些外壳转义字符是什么?
【发布时间】:2011-07-07 02:02:26
【问题描述】:

我正在 Emacs 中(在 ArchLinux 下)试用咖啡脚本 repl,我看到提示符周围有这些转义字符:

[1Gcoffee> [0K[9G

这些不应该是颜色,因为我已经启用了ansi-color-for-comint-mode。那么有人认识这些吗?

P.S.:有趣的是我的 Emacs+Cygwin 设置下没有这个问题!

【问题讨论】:

标签: shell emacs coffeescript


【解决方案1】:

我不知道它们来自哪里(显然与您的 shell 提示有关,但很难说更多)。

我把它们读成:

  • ESC[1G - 移动到第 1 列(绝对光标字符)
  • ESC[0K - 向右擦除
  • ESC[9G - 移至第 9 列

这看起来像是 shell 试图确保提示位于空行的最左侧。不确定你有什么外壳,但zsh 在启用PROMPT_SP 选项时会做类似的事情。不过,我不认为它使用上述序列。

很多,很多,控制序列可以在here找到。请注意,序列“ESC[”被解释为“控制序列引入器”(CSI),并在该页面上显示。

【讨论】:

  • 谢谢,我会看看我是否能找到手头的这些信息的罪魁祸首。顺便说一句,我正在使用 bash。
  • 很高兴解释这些代码的含义,但是 OP 是否找到了实际的解决方案?我自己也遇到了同样的问题。
【解决方案2】:

我有同样的问题,并能够通过添加解决它

export NODE_NO_READLINE=1

到我的.bashrc 文件。

因此,这些字符似乎来自 CoffeeScript REPL 对 Readline 的使用。也许您在 Cygwin 中没有问题的原因是那里没有 Readline。

【讨论】:

  • 感谢您的回答(和问题)!我刚刚遇到了同样的问题,搜索让我来到了这里。我可能永远猜不到 Node,因为 Ubuntu built CoffeeScript,不是我。
猜你喜欢
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多