Я открыл для себя Структуру и интерпретацию компьютерных программ, и это очень весело. Итак, я решил, что поделюсь, как настроить Emacs для работы с ним. Эта статья не предполагает никаких предварительных знаний о Emacs. Конечный результат: Emacs + MIT-Scheme + Geiser.
Сначала установите MIT-Scheme, диалект Лиспа, используемый в книге: brew install mit-scheme
или sudo apt install mit-scheme
.
Если вы работаете на Mac, я рекомендую скачать Emacs прямо из паутины. В противном случае просто используйте свой менеджер пакетов (обратите внимание на неперехваченное исключение для пользователей Windows).
Двумя наиболее важными клавишами в Emacs являются control и alt, обозначаемые соответственно C
и M
. Запустите Emacs, затем нажмите C-x-C-f
, затем введите ~/.emacs.d/init.el
Нам нужно будет добавить репозиторий пакетов Melpa в Emacs. Вставьте следующее в свой init.el:
Введите C-x-C-s
для сохранения, затем введите M-x
(alt-x). Это откроет минибуфер, чтобы вы могли вводить команды. Перезапустите Emacs (для удовольствия введите C-x-C-c
вместо кнопки выхода).
Популярная викторина: откройте ~/.emacs.d/init.el
резервную копию, используя правильный ярлык. Затем вы можете начать как сумасшедшую установку пакетов:
M-x
package-install
return
geiser
Geiser позволит вам заниматься REPL-управляемой разработкой, обеспечивая мгновенную обратную связь при внесении изменений в ваш код. Добавьте следующее в конец конфигурации emacs, и вы будете готовы отправиться в грандиозное приключение.
Сохраните и запустите M-x
eval-buffer
, чтобы загрузить новую конфигурацию в emacs, затем откройте файл *.scm
. После этого введите M-x
run-geiser
. Это запустит Scheme REPL (цикл чтения-оценки-печати) в новом окне Emacs, которое прикреплено к файлу схемы, над которым вы работаете. Вы узнаете много нового о REPL в SICP.
Если вы наберете «Hello World» в окне файла, а затем запустите C-M-x
, вы оцените текущую строку, в которой находитесь:
Затем замените его функцией:
Затем введите C-c-M-e
. Это оценит функцию fib, а затем переместите курсор на REPL. Если вы запустите (fib 10), результат будет 89.
И вот оно! Простая установка Emacs для SICP. Вот полный init.el
А вот шпаргалка Geiser со всеми перечисленными командами:
https://www.nongnu.org/geiser/geiser_5.html