【发布时间】:2015-11-28 22:40:13
【问题描述】:
当我在 Git Bash 中打开 ghcii.sh (Glasgow Haskell Compiler Interactive) 时,正常的制表符、退格键和箭头键无法按预期工作。
例如,如果我键入:lo + Tab,我希望它完成对:load 的语句。相反,光标会向右跳(我猜是跳到下一个制表位)。
然后,如果我使用 Backspace 返回并“手动”填写命令,就会发生这种情况:
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'
这是我幸运的时候。有时,我什至无法完全返回 Backspace ,而是卡在:lo (或我试图发出的任何其他命令)右侧的某个地方。不过,我仍然可以按 Enter 再试一次。
箭头键不会调用命令历史记录。如果我按下 ▲,光标会向上移动,但我希望它会循环浏览我的命令历史记录。
这个问题似乎与 Git Bash 有关,因为 GHCI 在同一台机器上的 PowerShell 中正常工作。在我运行早期版本的 Git Bash(git 版本 1.9.5.msysgit.1)的其他机器上,我没有这个问题,所以它似乎与这个特定版本有关(git 版本 2.5.1 .windows.1)。
我的操作系统是 Windows 10 64 位。起初我以为这个问题与 64 位 Git Bash 有关,因为这是我第一次在 Windows 上看到 64 位 Git Bash,但我也尝试过安装 32 位 Git Bash,并且它表现出完全相同的行为。
是否可以让 GHCI 在这种环境下正常运行?
【问题讨论】:
标签: windows haskell ghci git-bash