Ich habe buchstäblich nur dies auf meinem Macbook einrichten. Da Sie nicht angegeben haben, auf welchem System Sie arbeiten, hoffe ich, dass Sie eine Unix-Variante verwenden... Ich kenne mich mit STk nicht wirklich aus, aber das könnte Ihnen helfen, die Probleme zu lösen, die Sie haben und die sich sehr ähnlich anhören wie die Probleme, die ich hatte.
Wenn Sie eine Scheme-Implementierung installieren (ich verwende MIT Scheme, editiert, um hinzuzufügen, dass dies auch mit Racket funktioniert, indem ich mzscheme verwende), kann es sein, dass ein Symlink mit dem Namen "scheme" mitgeliefert wird - das ist es, wonach Emacs sucht, denke ich.
Wenn das nicht der Fall ist (MIT Scheme scheint das unter OS X nicht zu sein), können Sie Ihre Emacs-Konfiguration bearbeiten, indem Sie in Emacs M-x customize-group
dann tippen Sie scheme
. Scrollen Sie ein wenig nach unten und finden Sie die Scheme program name
Feld. Ändern Sie es in Ihren Scheme-Implementierungsbefehl, etwa mit-scheme
o mzscheme
. Sie können auch einfach einen Symlink in Ihrem PATH erstellen, der auf die richtige Binärdatei verweist:
sudo ln -s /Applications/mit-scheme.app/Contents/Resources/mit-scheme
/usr/local/bin/scheme
Für MIT Scheme müssen Sie auch die Variable MITSCHEME-LIBRARY-PATH setzen, also fügen Sie diese zu Ihrem .emacs
.
(setenv "MITSCHEME_LIBRARY_PATH"
"/Applications/mit-scheme.app/Contents/Resources")
Dann sollten Sie in der Lage sein, einen minderwertigen Scheme-Puffer zu starten mit M-x run-scheme
. Und übergeben Sie Code an die REPL mit C-x C-e
, die den Ausdruck vor dem Punkt auswertet.
Wenn dies nicht funktioniert (bei mir war es nicht der Fall), müssen Sie möglicherweise sicherstellen, dass der Pfad, den Emacs für die Ausführung von Shell-Befehlen verwendet, die Option scheme
Symlink oder das Verzeichnis, das die Binärdatei für Ihre Implementierung enthält. Mit einigen Experimenten habe ich dies behoben, indem ich dies zu meiner .emacs
Datei:
Emacs ignoriert meinen Pfad, wenn er einen Kompilierbefehl ausführt
Zu den Referenzen: die andere SO-Frage, die ich für die Erstellung dieses Dokuments verwendet habe:
Wie bekomme ich einen Schema-Interpreter in Emacs zum Laufen?