Кипящая оболочка MSYS - сменная?
Мне нужна служебная оболочка для MSYS. Это моя текущая дилемма:
По умолчанию rxvt.exe имеет полосу прокрутки и копирует и вставляет, но не передает управляющие символы или клавиши со стрелками в запущенную программу в оболочке (например, интерпретаторы/отладчики). Это настоящий шип при использовании интерпретатора Haskell ghci.
В другой оболочке sh.exe обрабатываются управляющие символы (или, по крайней мере, некоторые из них), но не имеет полосы прокрутки или копирования и вставки.
rxvt также имеет (относительно) больше проблем с выходной буферизацией
Каковы мои варианты? Требуется ли замена оболочки MSys? Все, что я хочу, - это разумная среда для работы с Haskell (ghc), С++ (gcc) и основной цепочкой инструментов (make и что нет). Я готов скомпилировать оболочку, если она не связана с сумасшедшими махинациями.
Ответы
Ответ 1
Если вы используете лучший эмулятор терминала, у меня был успех с http://sourceforge.net/projects/console/
Это замена стандартного окна команд Windows. Вы можете установить MSYS или Cygwin или все, что хотите, поскольку оболочка поддерживает его.
Ответ 2
Отметьте http://code.google.com/p/mintty/. Как насчет этого? Я считаю это абсолютно полезным. Или puttycyg (более старая попытка)?
Ответ 3
Из оболочки msys:
mingw-get install mintty
mintty
Ответ 4
Вы вводите в заблуждение "оболочку" и "эмулятор терминала". sh.exe
- первый; rxvt является последним. (помните, что под Windows вы можете обойтись без эмулятора терминала, потому что Windows создает один ( "консольное окно" ) для любой консольной программы (например, sh.exe), если она еще не запущена внутри нее)
Ответ 5
Используйте PowerShell вместо старого cmd. Затем запустите sh, как это
C:\msys64\usr\bin\sh.exe --login -i
Я тестировал Winows 8.1 с MSYS2 и платформой Haskell 2014.2.0.0. С GHCi проблем нет. Все клавиши со стрелками и другие клавиши работают должным образом.
Кроме того, я не мог заставить Console2 работать на Windows8 должным образом, как было предложено в других ответах.
Ответ 6
Этот вопрос немного устарел; mintty
теперь включен по умолчанию в MSYS2. Как ни странно, мне не удалось получить доступ к истории команд в GHCi - нажатие на нее переместило бы курсор и поместило бы \ESC
коды во входной буфер - и это было исправлено для меня, удалив mintty
(pacman -R mintty
from оболочка MSYS2).
Ответ 7
Я не использовал материал msys, но этого должно быть достаточно, чтобы использовать что-то другое, кроме rxvt, и запускать sh.exe в нем. Теперь, если вы используете контрольные символы, вам может потребоваться, чтобы все, что вы используете, поддерживает то, что вам нужно (например, эмуляция vt100).
Один маршрут может состоять в использовании cygwin. Обычно я запускаю cygwin с без корневого X-сервера и запускаю xterm на нем. Пока это было очень хорошо, и у меня не было много проблем. Я знаю клавиши со стрелками, и такая работа просто отлично под ней.
Ответ 8
Сделайте себе одолжение и используйте подходящий Cygwin вместо незакрепленной вилки старой версии Cygwin, которая является msys.