当我打开
ghcii.sh
(Glasgow Haskell Compiler Interactive)在Git Bash中,普通制表符、退格键和箭头键无法按预期工作。
例如,如果我键入
:lo
+
选项卡
,我希望它能完成声明
:load
相反,光标向右跳转(我猜是跳转到下一个制表位)。
那么,如果我使用
退格
要返回并“手动”填写命令,会发生以下情况:
Prelude> :load PrettyJSON.hs
<interactive>:2:1:
Not in scope: `ad'
Perhaps you meant one of these:
`and' (imported from Prelude), `id' (imported from Prelude)
<interactive>:2:4: Not in scope: `PrettyJSON.hs'
这是我
有好运的
有时,我甚至不能
退格
一路返回,但却被困在
:洛
(或我试图发出的任何其他命令)。我还能打
进来
不过,还是要再试一次。
箭头键不会调用命令历史记录。如果我按下
▲
,光标向上移动,但我希望它在命令历史记录中循环。
这个问题似乎与GitBash有关,因为GHCI在同一台计算机上的PowerShell中正常工作。在我运行GitBash早期版本(Git版本1.9.5.msysgit.1)的其他机器上,我没有这个问题,所以它似乎与这个特定版本(git2.5.1.windows.1)有关。
我的操作系统是Windows 10 64位。起初,我认为这个问题与64位GitBash有关,因为这是我第一次在Windows上看到64位Git Bash,但我也尝试过安装32位Git Bash,它表现出完全相同的行为。
是否可以使GHCI在这种环境中正确运行?