2017-02-06 28 views
0

当R是在支持颜色的终端交互运行,可以使用为了把颜色在提示ANSI转义序列,如马车ANSI转义序列提示

options(prompt = "\033[0;31mThis is red\033[0m> ") 

enter image description here

不幸的是,出现了一些问题,因为对于长命令行来说,续行会覆盖提示符而不是写入下一行。 enter image description here 使用多种颜色时,问题会变得更糟,因为不知何故每个转义序列都会在命令行中占用一些空间“”,直到提示结束可能会覆盖开头。在我的配置出现这种情况与例如

options(prompt = paste("\033[0;31m With \033[0;32m multiple", 
        "\033[0;33m colors \033[0;34m this", 
        "\033[0;35m gets \033[0;36m really", 
        "\033[0;37m wrong! \033[0m")) 

enter image description here

为什么会这样呢?有没有解决方法?

PS:这个相当旧的文章似乎与http://r.789695.n4.nabble.com/Xterm-escape-sequences-in-Prompt-td906375.html

+0

要清楚的是,这是当你的打字引起一个新的线,而不是当你打破一个长的线,并得到延续提示,通常是“+”是啊?屏幕截图可能会有所帮助(并且在此鼓励,与R-help不同!) – Spacedman

+0

@Spacedman正好,这是当我输入一个长行。我添加了一些截图。 –

回答