Emacs 如何使用geiser运行racket:获取错误:Can';t exec程序:/Applications/Racketv6.0/DrRacket.app
我是Emacs的新手,有点麻烦。我希望使用Geiser从Emacs运行Emacs 如何使用geiser运行racket:获取错误:Can';t exec程序:/Applications/Racketv6.0/DrRacket.app,emacs,racket,read-eval-print-loop,geiser,Emacs,Racket,Read Eval Print Loop,Geiser,我是Emacs的新手,有点麻烦。我希望使用Geiser从Emacs运行racket。我告诉Emacs,racket的位置如下: (setq geiser-racket-binary "/Applications/Racket\ v6.0/DrRacket.app") (我是从问题中得出的:) 我首先编译保存的racket代码。但是,当我尝试点击M-x,然后点击run geiser,它会提示我执行方案。此时,我键入球拍。Emacs现在打开racket REPL缓冲区,并在该缓冲区中留下错误: 无
racket
。我告诉Emacs,racket
的位置如下:
(setq geiser-racket-binary "/Applications/Racket\ v6.0/DrRacket.app")
(我是从问题中得出的:)
我首先编译保存的racket代码。但是,当我尝试点击M-x,然后点击run geiser
,它会提示我执行方案。此时,我键入球拍
。Emacs现在打开racket REPL缓冲区,并在该缓冲区中留下错误:
无法执行程序:/Applications/Racketv6.0/DrRacket.app
如果有帮助,这里是我的.emacs
文件:
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(geiser-repl-startup-time 20000)
'(package-archives (quote (("gnu" . "elpa gnu packages website") ("melpa" . "http://melpa.milkbox.net/#/"))))
'(package-directory-list (quote ("/Applications/Emacs.app/Contents/Resources/site-lisp/elpa")))
'(python-python-command "/usr/local/bin/python3"))
(setq geiser-racket-binary "/Applications/Racket\ v6.0/DrRacket.app")
(setq-default cursor-type 'bar)
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(default ((t (:inherit nil :stipple nil :background "controlDarkShadowColor" :foreground "Green" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 120 :width normal :foundry "apple" :family "Monaco")))))
(require 'package)
(add-to-list 'package-archives
'("marmalade" .
"http://marmalade-repo.org/packages/"))
(package-initialize)
在OSX上,app从技术上讲是一个目录。实际的可执行文件位于
Content/MacOS/xxx
中(如果我的内存正常)
编辑:换言之,您应该编写如下内容:
(setq geiser-racket-binary "/Applications/Racket\ v6.0/DrRacket.app/Content/MacOS/DrRacket")
注意:我不在Mac电脑上,因此我现在无法验证详细信息。我认为您引用了错误的可执行文件 “DrRacket”是一个IDE(带有图形用户界面),用于编辑Racket代码。从
男子篮球比赛:
DrRacket是Racket编程环境
尝试将geiser racket binary
设置为racket
可执行文件(即“核心racket实现”)的位置
编辑
如果Mac安装Racket的命名方案与Linux安装中使用的命名方案类似,则应在类似于您可以找到DrRacket
(或DrRacket
)二进制文件的位置处,放置一个名为Racket
或Racket
的二进制文件:
(不是说你会在/usr/bin/
中找到二进制文件,只是想说明所有可能相关的二进制文件很有可能都位于同一目录中。)我想这意味着我想用实际的可执行文件替换“/Applications/Racket\v6.0/DrRacket.app”???“xxx”指的是“/Applications/Racket\v6.0/DrRacket.app”还是它的某个子字符串(或其他什么)?“内容”和“MacOS”是指某物还是它们本身??我为我的困惑道歉,谢谢你的回答,我认为你至少更接近于理解需要做什么。
$ locate racket
...
/usr/bin/drracket
/usr/bin/gracket
/usr/bin/gracket-text
/usr/bin/racket
...