Console2 和 ConEmu - 奇怪的命令提示符
Posted
技术标签:
【中文标题】Console2 和 ConEmu - 奇怪的命令提示符【英文标题】:Console2 and ConEmu - weird command prompt 【发布时间】:2012-10-02 15:34:44 【问题描述】:非常感谢您的帮助。
我是 Windows 7 中 Cygwin 和 Mintty 的快乐用户。但我总是想看看还有哪些其他选择。于是我下载了 Console2 和 ConEmu。
第一步始终是运行 bash。那很简单。只需输入“bash”... 第二步,自定义外观。这是不可能的!
正如您在下面的屏幕截图中看到的那样,似乎不支持 ANSI 颜色,我可以预期 Console2 中的颜色,但 ConEmu 中不支持。 控制台的顺序是(从上到下):Mintty (Cygwin)、Console2 和 ConEmu。
那么有什么想法吗?
我在 2 个月前下载了 Console,我认为颜色还可以。我不知道为什么现在它具有 powershell 外观。
实际上,几周前我尝试了 Powershell,并稍微调整了颜色。会不会造成其他终端的混乱?
幸运的是,Mintty 很好。
谢谢!
更新:
看起来问题实际上出在我的自定义命令提示符中!
它在 Mintty 中运行良好,但 Console2 和 ConEmu 不喜欢它。
# Custom Shell
# Green 113
# Red 173
# Blue 81
# Yellow 186
# Light Green 194
# Light Blue 195
function EXT_COLOR () echo -ne "\e[38;5;$1m";
function CLOSE_COLOR () echo -ne '\e[m';
PS1=' `EXT_COLOR 81`\]\u@\h`CLOSE_COLOR`\] `EXT_COLOR 195`\]$PWD >`CLOSE_COLOR`\]`EXT_COLOR 173`\]$(__git_ps1 " (%s)")`CLOSE_COLOR`\]\n '
export LS_COLORS='di=38;5;108:fi=00:*svn-commit.tmp=31:ln=38;5;116:ex=38;5;186'
echo -e "\e[38;5;194m$(date +%A\ %d\ %B\ %Y\ -\ %H:%M)\e[m"
【问题讨论】:
【参考方案1】:至于ConEmu
以 root 进程(又名 shell)运行 bash,为什么您尝试在不带参数的 cmd 中使用它?正确的语法是sh.exe --login -i
。
如果您想要特殊的调色板(例如棕色背景)- 设置调色板(颜色页面)
您的屏幕截图质量低劣,文字不可读。但似乎 bash 不使用 ANSI 颜色(为什么?afaik 它直接将颜色写入控制台)。因此,您需要挖掘您的 bash 设置,以启用提示颜色。参考bash手册或者你的设置,可能是TERM
变量必须定义——不知道。
最后,ConEmu 支持 ANSI 转义序列,但是
-
ConEmuHk.dll 必须在进程中注入(使用 Ansi),因此 bash 必须是根进程或选项“Inject ConEmuHk”必须为 On。
选项“Ansi X3.64”也必须打开。
我在 2 个月前下载了 Console,我认为颜色还可以。一世 不知道为什么现在它具有 powershell 外观。
Afaik,Console2 将其调色板存储在 xml 文件中。它只是在 Console2 中运行的所有控制台应用程序的一个调色板。
ConEmu 可以根据您的喜好进行配置。有主调色板(颜色页面),可以为任何控制台应用程序选择自己的调色板,在 ConEmu(应用程序不同页面)中运行。
实际上我几周前尝试过 Powershell 并调整了颜色 一点。会不会造成其他终端的混乱?
好像您已经在 Console2 中设置了 Powershell 调色板(手动)。
【讨论】:
我建议以bash
运行bash,而不是sh
。以sh
运行将启用 POSIX 兼容模式,读取不同的配置文件(/etc/profile、~/.profile)并且不读取您的 rcfile。 (参见man bash
,调用部分)。以上是关于Console2 和 ConEmu - 奇怪的命令提示符的主要内容,如果未能解决你的问题,请参考以下文章
带有ZSH的WSL Bash集成在ConEmu中 - Open Here Issue