这些shell转义字符是什么?

Nic*_*roi 8 emacs shell coffeescript

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

[1Gcoffee> [0K[9G
Run Code Online (Sandbox Code Playgroud)

这些不应该是我已经启用的颜色ansi-color-for-comint-mode.那么有人认识到这些吗?

PS:有趣的是我在Emacs + Cygwin设置下没有这个问题!

bro*_*all 9

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

我把它们看作:

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

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

可在此处找到许多很多控制序列.请注意,序列" "被解释为"控制序列引入器"(CSI),并显示为该页面上的序列.ESC[


Mit*_*och 8

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

export NODE_NO_READLINE=1
Run Code Online (Sandbox Code Playgroud)

到我的.bashrc档案.

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