这些shell转义字符是什么?

这些shell转义字符是什么?,shell,emacs,coffeescript,Shell,Emacs,Coffeescript,我正在Emacs内部(在ArchLinux下)试用咖啡脚本repl,我看到提示符周围有以下转义字符: [1Gcoffee> [0K[9G 这些不应该是颜色,因为我已经为comint模式启用了ansi颜色。有人认识这些吗 注:有趣的是,我的Emacs+Cygwin设置中没有这个问题 我不知道它们是从哪里来的(显然与shell提示符有关,但很难说得更多) 我把它们读作: ESC[1G-移动到第1列(绝对光标字符) ESC[0K-向右擦除 ESC[9G-移至第9列 这看起来像是shell试

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

[1Gcoffee> [0K[9G
这些不应该是颜色,因为我已经为comint模式启用了ansi颜色。有人认识这些吗


注:有趣的是,我的Emacs+Cygwin设置中没有这个问题

我不知道它们是从哪里来的(显然与shell提示符有关,但很难说得更多)

我把它们读作:

  • ESC
    [1G
    -移动到第1列(绝对光标字符)
  • ESC
    [0K
    -向右擦除
  • ESC
    [9G
    -移至第9列
这看起来像是shell试图确保提示符位于空行的最左边。不确定您有什么shell,但在启用
prompt\u SP
选项时会执行类似操作。不过,我认为它没有使用上述序列


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

我遇到了相同的问题,并且能够通过添加

export NODE_NO_READLINE=1
到我的
.bashrc
文件


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

谢谢,我会看看手头是否有这些信息可以找到罪犯。顺便说一句,我正在使用bash。很高兴能解释这些代码的含义,但是OP有没有找到一个实际的解决方案?我自己也遇到了同样的问题。谢谢你的回答(还有这个问题)!我也遇到了同样的问题,一次搜索把我带到了这里。我可能从来没有猜到Node,因为,不是我。据我所知,根本原因是Emacs的终端模拟仅限于vt100,或者至少缺少一些扩展。我只是问了这个问题,以扩展它的支持