Emacs中Haskell模式下主提示符的函数名称自动补全

4
我正在使用emacs编写.haskell文件,并通过 'load file' (C-c C-l) 加载它。
为了测试函数,我切换到Main Prompt Window (C-x o),在那里我需要输入完整的函数名称。我相信一定有一种方法可以通过自动补全获取函数名称,但我不知道如何做,也找不到相关信息。
请指导。

2
当然,你尝试过 Meta-/,但它没有找到你想要的东西吗? - Jedai
你说的“什么都没用”是什么意思?它至少应该提供一些补全选项。它是完全没有反应还是你对建议不满意? - Jedai
Jedai:您的建议是正确的。我现在以正确的方式实施了它。它完全运行正常。非常感谢。 - Optimight
2个回答

1

这个答案是在问题的评论中由Jedai提供的。

当您在主提示窗口中需要使用函数“doubleMe”时,只需输入前2-3个字母,如“dou”,然后按下Meta-/(元键或Alt键和斜杠键一起);您将找到自动完成的函数名称。在这种情况下 - “doubleMe”。

如果您在缓冲区和周围有多个以“dou”开头的函数名称或其他单词,则继续按Meta-/,直到找到所需的名称。

请注意,此功能适用于所有窗口。


这些函数名是唯一的,还是缓冲区中和周围的每个单词都是?我认为后者是可能的。 - aartist
aartist:它是缓冲区中的每个单词和周围的单词。如果我们能够实现仅在.hs代码缓冲区中获取每个单词,或更好地说,仅获取同一缓冲区中的函数名称和导入的函数,将最适合此目的。 - Optimight

0

是的。我使用imenu.el

对于C语言,有许多可能性。

预计imenu应该适用于所有可能的语言。


alinsoar:如何在emacs中附加/安装或从哪里获取imenu.el? - Optimight
已经查看了建议的链接,但目前对我来说似乎很困难。担心如果我不能正确地按照建议的步骤操作,可能会干扰我的当前系统。 - Optimight
试试这个: (define-key global-map [(control shift mouse-3)] 'imenu) (setq imenu-sort-function (quote imenu--sort-by-name) imenu-max-items 250 ) - alinsoar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接