Console2 и ConEmu - странная командная строка
Заранее большое спасибо за помощь.
Я счастливый пользователь Cygwin и Mintty в Windows 7. Но мне всегда нравится видеть, какие есть другие варианты. Поэтому я скачал Console2 и ConEmu.
Первым шагом всегда является запуск bash. Это было просто. Просто наберите 'bash'... Второй шаг, настройте внешний вид. Это было невозможно!
Как вы можете видеть на следующем снимке экрана, похоже, что цвета ANSI не поддерживаются, что я могу ожидать от Console2, но не от ConEmu. Порядок консолей (сверху вниз): Mintty (Cygwin), Console2 и ConEmu.
Так что есть идеи, что происходит?
Я скачал Console2 несколько месяцев назад, и я думаю, что цвета работали нормально. Я понятия не имею, почему теперь он имеет внешний вид PowerShell.
Я действительно попробовал Powershell несколько недель назад и немного подправил цвета. Может ли это вызвать беспорядок в других терминалах?
К счастью для меня, Минтти - это хорошо.
Спасибо!
ОБНОВИТЬ:
Похоже, проблема на самом деле в моей пользовательской командной строке!
Он прекрасно работает в 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
- запустить bash как корневой процесс (он же как оболочка), почему вы пытаетесь использовать его из cmd без аргументов?? правильный синтаксис
sh.exe --login -i
, - если вам нужна особая палитра (например, коричневый фон) - настройте палитру (страница "Цвета")
Ваш скриншот низкого качества, текст не читается. Но похоже, что bash не использует цвета ANSI (для чего? Afaik пишет цвета прямо в консоль). Итак, вам нужно покопаться в настройках bash, чтобы включить окраску подсказки. Обратитесь к руководствам Bash или ваши настройки, может быть TERM
переменная должна быть определена - не знаю.
Наконец, ConEmu поддерживает escape-последовательности ANSI, но
- ConEmuHk.dll должен быть внедрен в процесс (который использует Ansi), поэтому bash должен быть корневым процессом, или опция "Inject ConEmuHk" должна быть включена.
- Опция "Ansi X3.64" тоже должна быть включена.
Я скачал Console2 несколько месяцев назад, и я думаю, что цвета работали нормально. Я понятия не имею, почему теперь он имеет внешний вид PowerShell.
Afaik, Console2 хранит свою палитру в XML-файле. И это только одна палитра для всех консольных приложений, запущенных в Console2.
ConEmu может быть настроен на ваш вкус. Существует основная палитра (страница "Цвета"), и можно выбрать собственные палитры для любого консольного приложения, запущенного в ConEmu (отдельная страница приложения).
Я действительно попробовал Powershell несколько недель назад и немного подправил цвета. Может ли это вызвать беспорядок в других терминалах?
Похоже, вы установили палитру Powershell в Console2 (вручную).