【问题标题】:How do I set up haskell-mode to generate tags?如何设置 haskell-mode 来生成标签?
【发布时间】:2012-10-24 14:43:55
【问题描述】:

我正在尝试为 haskell 设置 emacs。我用 el-get 下载了 haskell-mode 并且某些部分正在工作(如缩进、启动 ghci 等),但我无法让 tags-generation 工作。

Hasktags 已安装,并且 (load "~/.emacs.d/el-get/haskell-mode/haskell-site-file") 已添加到我的初始化文件中。

hasktags 是否需要在某个目录中? (我将目录添加到PATH,没有成功。)

haskell-process-generate-tags 函数不适用于M-x。当我手动将(load "~/.emacs.d/el-get/haskell-mode/haskell-process.el") 添加到初始化文件时,该功能可用,但未生成任何 TAGS 文件。

(PS:我用的是emacs 24.1和linux)

【问题讨论】:

    标签: haskell emacs haskell-mode


    【解决方案1】:

    hasktags应该在PATH中,但是你确定Emacs中的PATH和shell中的PATH是一样的吗?我刚试过,haskell-process-generate-tags 为我工作没有问题。尝试使用 Emacs 设置 PATH

    (setenv "PATH" (concat (getenv "PATH") ":directory_with_hasktags"))
    

    您还可以将C-x C-s 绑定到haskell-mode-save-buffer,如examples/init.el 中所述 - 在这种情况下,您可以将haskell-tags-on-save 变量设置为t,并且每次保存haskell 时都会调用hasktags文件。

    【讨论】:

    • 谢谢!更改 emacs PATH 解决了它。还有一件事:您是否还必须将(load "~/.emacs.d/el-get/haskell-mode/haskell-process.el") 添加到您的初始化文件中?没有它,它仍然无法工作。
    • 是的,我需要显式加载它——这个文件没有自动加载这个函数。
    • 顺便说一句,haskell-process 的加载已通过添加 provide 在新版本中得到修复...
    • 你到底在路径中添加了什么?我从hackage.haskell 下载了这个包并打开它只是为了看到一些 Haskell 文件。不知道如何将这些添加到我的 PATH 中。
    【解决方案2】:

    haskell-process-generate-tags 自 2016 年 3 月 14 日起已过时。

    请改用haskell-mode-generate-tags

    如何自己找出答案:

    M-x describe-function
    Describe function: haskell-process-generate-tags
    ....
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-11
      • 1970-01-01
      • 1970-01-01
      • 2016-09-07
      • 2011-06-20
      • 1970-01-01
      • 2017-01-31
      相关资源
      最近更新 更多