【问题标题】:Cannot locate Agda mode binary when running Emacs GUI on OSX在 OSX 上运行 Emacs GUI 时找不到 Agda 模式二进制文件
【发布时间】:2020-07-07 15:41:44
【问题描述】:

Emacs(来自 https://emacsformacosx.com/)和 Agda(通过自制软件)都可以优雅地安装。但是,在运行 agda-mode setup 后启动 Emacs 时,我收到以下错误:

Warning (initialization): An error occurred while loading ‘/Users/user/.emacs’:

File is missing: Cannot open load file, No such file or directory, /Users/user/zsh:1: command not found: agda-mode

Emacs 的终端版本正确加载 Agda-mode,我尝试 exec-path-from-shell -library 没有成功。

我的 .emacs 有以下内容:

(package-initialize)
(load-file
 (let ((coding-system-for-read 'utf-8))
   (shell-command-to-string "agda-mode locate")))
(when (memq window-system '(mac ns x))
  (exec-path-from-shell-initialize))

有没有人有同样的问题/知道如何解决它或它来自哪里?提前致谢!

【问题讨论】:

  • 您的.emacs 的相关部分看起来如何?
  • 全文是(package-initialize) (load-file (let ((coding-system-for-read 'utf-8)) (shell-command-to-string "agda-mode locate"))) (when (memq window-system '(mac ns x)) (exec-path-from-shell-initialize))
  • 请原谅我的格式化。找不到强制换行的方法。
  • 注意,您可以随时编辑原始问题。我现在已经添加了配置。
  • 我相信这是一个关于 GUI Emacs 的问题,它有一个不同的 PATH 副本,其中缺少 adga-mode。当您在终端和 GUI Emacs 中打印 PATH 时,您是否尝试过比较它的外观?您提到您尝试过 exec-path-from-shell 并且没有用。它会改变 PATH 的值吗?

标签: emacs agda


【解决方案1】:

在 MacOS Catalina 和 GNU emacs 上遇到了同样的问题。原来是像@viam0Zah 建议的路径问题。这是为我解决的问题:

在终端中,运行echo $PATH 并与agda-mode locate 进行比较以找出找到agda-mode 所需的路径。对我来说,是/Users/aransil/.cabal/bin

在 GNU emacs 中,使用 (shell-command-to-string "echo $PATH") 来验证路径变量是否不同并且不包含 /Users/aransil/.cabal/bin

回到终端,编辑~/.zshenv,添加export PATH=/Users/aransil/.cabal/bin:$PATH这一行

重启 GNU emacs

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-09
    • 2011-12-21
    • 2016-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多