wsl2 / ubuntu 安装和配置 Emacs + mit-scheme
2024-02-21 21:02:11
主要是看 SICP 书的时候配下环境
1 首先安装 Emacs 和 mit-scheme
第一条命令可以直接安装最新开发版的 Emacs, 目前是 GNU Emacs 30.0.50
1 | sudo snap install emacs --edge --classic |
2 配置 Emacs
2.1 一些提示
先在这说几个可能有用的快捷键
Ctrl + x + f
打开文件Ctrl + x + k
关闭/丢弃当前区域的缓冲区, 不严谨的说相当于关闭那个窗口Ctrl + x
+o
切换编辑窗口Ctrl + x + s
保存当前缓冲区/文件Alt + x
+cua-mode
相当于激活复制粘贴模式, 也就是说可以从外部粘贴板复制和粘贴内容用Ctrl + c
和Ctrl + v
系列快捷键Alt + x
+eval-buffer
重新载入当前缓冲区, 更改配置文件后可以用这个重新加载Ctrl + x + c
退出- 可以在
Ctrl + x
或者Alt + x
后按空格或者 Tab 获得提示/联想
2.2 配置本体
- 这里我就直接用 Emacs 当编辑器, 首先用
emacs
进入 Emacs
虽然是安装在 wsl 里的, 但是现在 wsl 支持在 windows 里打开 linux GUI, 然后进入 Emacs - 按
Ctrl + h
再输入v
和user-init-file
在下面的回显区就会出现配置文件路径, 通常为~/.emacs
- 然后按
Ctrl + x + f
输入~/.emacs
作为文件路径在下面的命令区, 如果没有就创建 - 在文件里添加包管理地址
1
2
3
4
5
6;; add the melpa package
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
(package-refresh-contents) - 用重启 Emacs 或者
Alt + x
+eval-buffer
重载配置文件 - 然后用
Alt + x
+package-install
+ 回车 +geiser
安装 geiser 用于 REPL, 也就是类似即使反馈代码的效果 - 安装完后重新用第2到3步打开配置文件
- 往文件里添加 mit-scheme 兼容可以放到文件末尾, geiser-mit-binary 的地址是你前面 apt 安装的地址, 也可以用
1
2
3(use-package geiser-mit :ensure t)
(setq geiser-mit-binary "/usr/bin/scheme")
(setq geiser-active-implementations '(mit))which mit-scheme
来看地址
到目前为止基础的都配置完了
2.3 [可选] 配置主题
- 在 这里 找到个主题
- 用
Alt + x
+package-install
+ 回车 +<主题名>
, 比如zenburn-theme
或者vs-dark-theme
- 用前面的方法打开配置文件
- 在文件里加入
(load-theme '<主题> t)
, 比如以 vs dark theme 为例子:(load-theme 'vs-dark t)
, 要去掉最后的 theme 后缀 - 重启 Emacs 或者重载缓冲区(
Alt + x
+eval-buffer
)来查看效果
3 Hello world
- 用
Alt + x + f
打开任意一个 scm / 或者不是 scm 文件, 比如~/sicp/test.scm
- 输入 “Hello world”
- 用
Alt + x
+run-geiser
激活 geiser - 把光标移回到你文件(有”hello world”)的那个窗口, 比如用
Ctrl + x
+o
或者鼠标点那个窗口 - 将光标移动到 “Hello world” 的后面, 用上下左右箭头/鼠标/或者 (
Ctrl + b
/Ctrl + f
之类的) - 用
Ctrl + Alt + x
跑光标这一行 - 在最下面的命令窗口就会有结果
4 参考
Emacs 配置: https://github.com/bluemonk/modern-emacs
Emacs 使用习惯: https://www.masteringemacs.org/article/beginners-guide-to-emacs
Hello world: https://medium.com/@joshfeltonm/setting-up-emacs-for-sicp-from-scratch-daa6473885c5
内置 Emacs 文档: Ctrl + h
+ t