如何在 GHCi 中插入反引号?
How can I insert a backtick in GHCi?
我正在 Windows 上的 GHCi 中试用 Haskell。在我接下来的教程中,函数名称用反引号括起来:x `mod` 7
。但是,我在GHCi中无法输入字符。
反引号字符的 ASCII 值为 096,但 GHCI 不允许 Alt + number 插入任何字符。 Copying/pasting 也不行。我该怎么办?
如果您的键盘没有反引号,我不知道如何向 ghci 发送反引号。但这个小技术问题不应该阻止您尝试 Haskell!
您可以使用 f a b
而不是 a `f` b
在没有反引号的 Haskell 中编程。在您的示例中,mod x 7
.
您可以将键盘布局设置为美式键盘布局以进行编程。虽然在物理键盘上找到带有错误标签的键需要一些练习,但让 [
、]
、{
和 }
更容易访问会很方便,在你的情况下,根本没有反引号。
您可以从剪贴板粘贴反引号。 (从命令window的设置中激活"quick-edit mode"和"paste mode",然后用鼠标右键粘贴)。
也许在命令 window 周围使用包装器有帮助?我有时使用 Console2,有时在 Emacs 中使用 M-x shell
。
也许 WinGHCi 有帮助?它至少支持复制和粘贴。
请参阅 Ørjan Johansen 的回答,了解如何向 ghci 添加自定义键绑定。
祝你好运 Haskell!
@Toxaris 在他的回答中给出了几个建议,但在评论中他还提到了配置 GHCi 版本的 readline 的可能性(称为 haskeline
). And indead it allows custom keybindings。所以我决定测试一下。
文档说将自定义项放在 ~/.haskeline
中,这不是 Windows 路径,但它可能会转换为任何目录 System.Directory.getHomeDirectory
中的 .haskeline
returns。 (vim
也可以直接在 Windows 上编辑那个路径,但我后来才知道。)所以我在 C:\Users\Ørjan\.haskeline
中添加了以下内容:
bind: meta-' `
现在我可以通过按 alt-'
在 GHCi 中获得 `
!
我正在 Windows 上的 GHCi 中试用 Haskell。在我接下来的教程中,函数名称用反引号括起来:x `mod` 7
。但是,我在GHCi中无法输入字符。
反引号字符的 ASCII 值为 096,但 GHCI 不允许 Alt + number 插入任何字符。 Copying/pasting 也不行。我该怎么办?
如果您的键盘没有反引号,我不知道如何向 ghci 发送反引号。但这个小技术问题不应该阻止您尝试 Haskell!
您可以使用
f a b
而不是a `f` b
在没有反引号的 Haskell 中编程。在您的示例中,mod x 7
.您可以将键盘布局设置为美式键盘布局以进行编程。虽然在物理键盘上找到带有错误标签的键需要一些练习,但让
[
、]
、{
和}
更容易访问会很方便,在你的情况下,根本没有反引号。您可以从剪贴板粘贴反引号。 (从命令window的设置中激活"quick-edit mode"和"paste mode",然后用鼠标右键粘贴)。
也许在命令 window 周围使用包装器有帮助?我有时使用 Console2,有时在 Emacs 中使用
M-x shell
。也许 WinGHCi 有帮助?它至少支持复制和粘贴。
请参阅 Ørjan Johansen 的回答,了解如何向 ghci 添加自定义键绑定。
祝你好运 Haskell!
@Toxaris 在他的回答中给出了几个建议,但在评论中他还提到了配置 GHCi 版本的 readline 的可能性(称为 haskeline
). And indead it allows custom keybindings。所以我决定测试一下。
文档说将自定义项放在 ~/.haskeline
中,这不是 Windows 路径,但它可能会转换为任何目录 System.Directory.getHomeDirectory
中的 .haskeline
returns。 (vim
也可以直接在 Windows 上编辑那个路径,但我后来才知道。)所以我在 C:\Users\Ørjan\.haskeline
中添加了以下内容:
bind: meta-' `
现在我可以通过按 alt-'
在 GHCi 中获得 `
!