[英]How To Run Scheme in Mac Emacs? - “process scheme exited abnormally with code 1 / 126”
[英]How to run scheme with Emacs?
我按照本教程成功安装了Emacs,STk,Quack。
问题是如何加载我的程序,就像我在Racket中一样?
在Racket中,我可以在上方窗口中编辑我的代码,键入一些代码,保存并运行。 然后下面的窗口将自动加载我刚写的代码。 然后我可以玩它。
我试过Mx run-scheme。 它只会让我进入类型mit方案。 然后它说不存在这样的文件或目录。 然后我尝试了F5(该网站的作者写了一个.emacs文件让我按F5)。 然后STk打开了。 我可以在STk中加载我的方案文件。 但它会让我回到麻省理工学院计划与edwin。
我想在Racket(Write / REPL)中使用相同的东西。 但关键运动更具灵活性。 在Racket中你没有Cf Cn Ca ......等等。
谁能教我怎么做?
我只是在我的Macbook上设置它。 既然你没有指定你所使用的系统,我希望你能使用一些Unix风格......我真的不熟悉STk,但这可能有助于你解决你遇到的任何问题,这听起来真的很棒类似于我遇到的问题。
如果您安装了一个Scheme实现(我正在使用MIT Scheme,编辑添加它也适用于Racket,使用mzscheme)它可能带有一个名为“scheme”的符号链接 - 我认为这就是Emacs所寻求的。
如果没有(MIT Scheme似乎不在OS X上),您可以编辑您的Emacs配置,在Emacs类型Mx customize-group
然后键入scheme
。 向下滚动一下,找到Scheme program name
字段。 将其更改为Scheme实现命令,如mit-scheme
或mzscheme
。 您也可以在PATH中创建指向正确二进制文件的符号链接:
sudo ln -s /Applications/mit-scheme.app/Contents/Resources/mit-scheme
/usr/local/bin/scheme
对于MIT Scheme,您还需要设置MITSCHEME-LIBRARY-PATH变量,因此将其添加到.emacs
。
(setenv "MITSCHEME_LIBRARY_PATH"
"/Applications/mit-scheme.app/Contents/Resources")
然后你应该能够用Mx run-scheme
启动一个劣质的Scheme缓冲区。 并使用Cx Ce
将代码传递给REPL,它会在点之前计算表达式。
如果这不起作用(它不适合我),您可能需要确保Emacs用于执行shell命令的路径包括scheme
symlink或包含实现的二进制文件的任何目录。 通过一些实验,我通过将其添加到我的.emacs
文件来修复此问题:
对于参考,我用来设置它的另一个SO问题:
GNU的64位下载现在将.app命名为“MIT:GNU Scheme.app”。 我试过@ spacemanaki的指示,但我一直得到:
bash-3.2$ export MITSCHEME_LIBRARY_PATH=/Applications/MIT:GNU\ Scheme.app/Contents/Resources
bash-3.2$ scheme
scheme: can't find a readable default for option --band.
searched for file all.com in these directories:
/Applications/MIT
/Applications/MIT:GNU Scheme.app/Contents/Resources/GNU Scheme.app/Contents/Resources
最后我意识到分号充当了路径分隔符。 所以只需确保重命名:
mv MIT:GNU\ Scheme.app/ mit-scheme.app
然后上面的说明将正常工作 - 虽然您可能必须使用Finder进行重命名,因为当我在shell上执行它时,我的Resources文件夹消失了。
如果您使用的是Mac,我建议使用Homebrew
来安装带有简单命令brew install mit-scheme
。 找到你的~/.emacs file
,如果它不存在然后创建一个,将其附加到文件的末尾:
(setq scheme-program-name "your/mit-scheme/path")
使用which mit-scheme
命令查找安装mit方案的位置。 以我的MacOS X为例:
(seq scheme-program-name "/usr/local/bin/mit-scheme")
保存并退出。 然后重新启动你的Emacs并键入M+x
,你就在这里。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.