Emacs 中的问题 运行 Chicken Scheme
Trouble running Chicken Scheme in Emacs
最近通过Racket接触到Scheme,现在想用Chicken Scheme。除了 Racket,Emacs 似乎是我在 Scheme 中进行开发的唯一选择,所以我启动了我不太擅长的 Emacs。
我之前使用 this 教程为 SBCL 设置了 emacs,但我对 Emacs 一点经验都没有。 (注:我在windows)
我做了什么:
我像上面的教程一样建立了一个类unix的文件结构,我在Z中安装了Chicken-Scheme:\home\myname\bin\chicken-iup
我尝试按照 this page 上的说明进行操作,但实际上并没有太多。它说我需要 quack 但没有解释太多,我只是从站点下载 quack.el 并将其放在我的 site-lisp 文件夹中
我将以下行添加到我的 .emacs 文件夹
(setq 方案-程序名"csi -:c")
(需要'庸医')
在之前链接的页面上,有这个快照,这就是我想要得到的
你可以看到在顶部有一个打开的文件可以写入文本,在底部有 REPL,但是,当我打开 emacs 并执行 M-x 运行-scheme 时,我无法得到那个
我有两个选择,M-x 运行-scheme 然后 "chicken" 给我 Chicken 介绍屏幕但立即显示 "process finished"
另一方面,M-x 运行-scheme csi 只是给我一个空白缓冲区,似乎没有 REPL
运行 csi.exe 直接在 windows 中打开一个带有介绍文本和 repl 的控制台 window,但我想像第一个快照一样在 emacs 中使用它, 这不起作用
我也尝试过 chicken-slime SWANK 后端,但无法正常工作,搜索 google 没有太大帮助
那么,有人知道我需要做什么才能在 emacs 中使用 Chicken Scheme 进行开发吗
(或者,如果在 DrRacket 之外还有其他用于开发的 Scheme 环境,我很想知道,除了 DrRacket 或 Emacs,我没有找到太多信息)
提前致谢
很奇怪 M-x run-scheme
提示您使用 Scheme 解释器。
通常,(setq scheme-program-name "csi -:c")
应该定义与 run-scheme
一起使用的 Scheme 程序。但也许 Quack 覆盖了 run-scheme
,这意味着它不会使用 scheme-program-name
(它在 "built-in support" 之下,实际上标准 Scheme 模式将使用它)。我不是 Quack 的粉丝,但您可以尝试输入 "csi -:c" 而不是普通的 "csi"。正如手册所说,
The -:c is to force interactive mode, which is required on some platforms (most notably Windows).
因为 Emacs 不能像在 *nix 上那样在 Windows 上伪造控制台,CHICKEN 认为它正在从 stdin 上的管道读取,所以它不会显示提示。
就像我说的,我不是嘎嘎的粉丝;据我所知,除了 "fancy lambda" 和一个大的帮助菜单(但我从不使用 Emacs 中的菜单)之外,它没有添加任何东西。我宁愿先从 .emacs
中删除 (require 'quack)
(保留 (setq scheme-program-name)
),然后重新启动 Emacs,然后键入 M-x run-scheme
看看会发生什么。
最近通过Racket接触到Scheme,现在想用Chicken Scheme。除了 Racket,Emacs 似乎是我在 Scheme 中进行开发的唯一选择,所以我启动了我不太擅长的 Emacs。
我之前使用 this 教程为 SBCL 设置了 emacs,但我对 Emacs 一点经验都没有。 (注:我在windows)
我做了什么:
我像上面的教程一样建立了一个类unix的文件结构,我在Z中安装了Chicken-Scheme:\home\myname\bin\chicken-iup
我尝试按照 this page 上的说明进行操作,但实际上并没有太多。它说我需要 quack 但没有解释太多,我只是从站点下载 quack.el 并将其放在我的 site-lisp 文件夹中
我将以下行添加到我的 .emacs 文件夹
(setq 方案-程序名"csi -:c") (需要'庸医')
在之前链接的页面上,有这个快照,这就是我想要得到的
你可以看到在顶部有一个打开的文件可以写入文本,在底部有 REPL,但是,当我打开 emacs 并执行 M-x 运行-scheme 时,我无法得到那个
我有两个选择,M-x 运行-scheme 然后 "chicken" 给我 Chicken 介绍屏幕但立即显示 "process finished"
另一方面,M-x 运行-scheme csi 只是给我一个空白缓冲区,似乎没有 REPL
运行 csi.exe 直接在 windows 中打开一个带有介绍文本和 repl 的控制台 window,但我想像第一个快照一样在 emacs 中使用它, 这不起作用
我也尝试过 chicken-slime SWANK 后端,但无法正常工作,搜索 google 没有太大帮助
那么,有人知道我需要做什么才能在 emacs 中使用 Chicken Scheme 进行开发吗
(或者,如果在 DrRacket 之外还有其他用于开发的 Scheme 环境,我很想知道,除了 DrRacket 或 Emacs,我没有找到太多信息)
提前致谢
很奇怪 M-x run-scheme
提示您使用 Scheme 解释器。
通常,(setq scheme-program-name "csi -:c")
应该定义与 run-scheme
一起使用的 Scheme 程序。但也许 Quack 覆盖了 run-scheme
,这意味着它不会使用 scheme-program-name
(它在 "built-in support" 之下,实际上标准 Scheme 模式将使用它)。我不是 Quack 的粉丝,但您可以尝试输入 "csi -:c" 而不是普通的 "csi"。正如手册所说,
The -:c is to force interactive mode, which is required on some platforms (most notably Windows).
因为 Emacs 不能像在 *nix 上那样在 Windows 上伪造控制台,CHICKEN 认为它正在从 stdin 上的管道读取,所以它不会显示提示。
就像我说的,我不是嘎嘎的粉丝;据我所知,除了 "fancy lambda" 和一个大的帮助菜单(但我从不使用 Emacs 中的菜单)之外,它没有添加任何东西。我宁愿先从 .emacs
中删除 (require 'quack)
(保留 (setq scheme-program-name)
),然后重新启动 Emacs,然后键入 M-x run-scheme
看看会发生什么。