схема запуска от Emacs - PullRequest
       26

схема запуска от Emacs

13 голосов
/ 07 марта 2012

Я новичок в LISP.

Я пытаюсь вызвать интерпретатор схемы из Emacs (версия 23 работает на Windows). Я загрузил библиотеку xscheme, сообщив emacs M-x load-library, а затем введя xscheme в приглашении в минибуфере. Библиотека загрузилась, и я набрал команду M-x run-scheme. (Я понимаю, что вся эта загрузка может быть сделана из .emacs при запуске, но на данный момент меня это не касается).

Пока все хорошо - буфер *scheme* создан, и теперь я надеюсь, что смогу поговорить с интерпретатором схемы.

Однако, когда я пытаюсь что-то оценить в этом буфере *scheme* (например, (define shoe-size 14)), я получаю это сообщение Output file descriptor of scheme is closed в минибуфере.

Кто-нибудь знает, как это исправить в emacs?

(Кроме того, как установить основной режим как REPL в буфере *scheme*?)

Спасибо.

Ответы [ 4 ]

16 голосов
/ 07 марта 2012

Попробуйте установить в переменной scheme-program-name путь к интерпретатору схемы. Основной режим буфера схемы, вероятно, просто comint, и вы ничего не сможете с этим поделать, если не переключитесь на что-то более способное, например Geiser - то, что я бы порекомендовал вам сделать.

9 голосов
/ 07 марта 2012

Добавьте эту строку в ваш .emacs файл:

(setq scheme-program-name "gsi")

(замените "gsi" на имя вашего интерпретатора Scheme.)

Затем вы можете запустить интерпретатор с помощью M-x run-scheme.Вы можете оценить фрагменты кода, используя C-x C-e (для оценки пола перед точкой) или C-M-x для оценки пола, в котором вы сейчас находитесь.Вы также можете загрузить файл с помощью C-c C-l.

5 голосов
/ 01 декабря 2012

Начну с того, что я очень плохо знаком с программированием, схемой и SICP, но я пытаюсь пройти курс и посмотреть лекции, которые находятся в сети.
Я бегу emacs в Ubuntu 12.10 , и я действительно хотел, чтобы схема MIT работала в emacs вместо того, чтобы полагаться на Эдвина.
Приведенные выше советы не сработали, но вот пошаговые инструкции, которые сработали:

  1. Установите emacs 24 из Центра программного обеспечения Ubuntu (найдите «emacs» и установите его!)
  2. Откройте терминал ( ALT + CTRL + t )
  3. Перейдите в домашний каталог (cd ~)
  4. Откройте скрытый файл .emacs в gedit (gedit .emacs)
  5. В первой строке файла введите именно то, что следует после двоеточия: (требуется 'xscheme)
  6. Сохраните изменения в .emacs
  7. Вот и все!!!

Теперь вы можете открывать .scm файлы в emacs и использовать такие команды, как C-x C-e.

* направления любезно предоставлены http://alexott.net/en/writings/emacs-devenv/EmacsScheme.html#sec14

0 голосов
/ 02 февраля 2015

Я предполагаю, что это просто известная проблема Я до сих пор не знаю, как с этим разобраться (это из моих текущих навыков), но у меня есть макрос, который, вероятно, помогает: сразу после написания s-exp Вы можете сделать Cc-Cz (он вызывает гейзер REPL), затем C-spc, C-M-b, M-w, C-x-o, C-y и RET.

Есть вариация (такая же, размещенная сразу после написания s-exp): C-spc, C-M-b, M-w, C-c Cz, C-y и RET

...