windows 配置 Scheme + Emacs 编程环境
软件下载列表:
- Emacs
- Racket (这里使用 Racket ,更加方便,便于后面配置 Emacs)
配置
安装好 Emacs 后,在 C:\Users\用户名\AppData\Roaming\.emacs.d
文件夹中添加文件 init.el
.
(setenv "HOME" "E:/emacs-25.2/") ;; you can change this dir to the place you like (load "~/.emacs.d/init.el")
用于改变 Emacs 默认的 HOME 路径,一般设置在 Emacs 的路径下。
在HOME路径(E:/emacs-25.2/)建立文件夹 .emacs.d
,建立文件 init.el
, 设置插件安装源,
(require 'package) (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/")) (package-initialize)
Emacs 的快捷键都是绑定在 ctrl 和 alt (或称 meta )上的,例如 c-x 就是 ctrl+x,m-x 就是 alt+x 。
在 Emacs 中安装 racket-mode ,
M-x package-install
=> <Enter>
=> racket-mode
也可以键入命令M-x list-packages
=> <Enter>
后,进入到插件列表,C-s racket-mode
找到相应插件,通过鼠标点击安装。
C-s racket-mode
,搜索模式,再按一次 C-s
,寻找下一个匹配项。
一些简单的配置
;; racket-mode (require 'racket-mode) (setq racket-racket-program "C:/Program Files/Racket/racket.exe") ;; 你的 racket.exe 文件路径 (setq racket-raco-program "C:/Program Files/Racket/raco.exe") ;; 同理 (add-hook 'racket-mode-hook (lambda () (define-key racket-mode-map (kbd "C-x C-j") 'racket-run))) (setq tab-always-indent 'complete) ;; 使用tab自动补全
新建文件 test.rkt
,
#lang planet neil/sicp (define f 123) f
<F5>
运行; 输出 123
。
因为 racket 和 Scheme 语法可能有点不同,所以要声明语言,使用 SICP 中 Scheme 的语法。
当然,在学习时,racket 自带的编辑器 DrRacket 提供的交互式环境用起来也很方便。
其他
Evil插件 如果没使用过 Emacs ,可能用的很不习惯,这里可以安装插件 Evil
,就可以使用 vim 的快捷键了, 在插件列表找到 Evil
安装后在配置文件中加入 (require 'evil) (evil-mode t)
OK,Emacs的不适感消失了大半。
设置字体 (set-default-font "-outline-Consolas-normal-normal-normal-mono-19-*-*-*-c-*-iso8859-1")
设置 括号匹配 ,在插件列表里找到 flex-autopair
,安装 配置文件加入下述代码
;; autopair (require 'flex-autopair) (flex-autopair-mode 1)
括号分层高亮,插件列表里找到 highlight-parentheses
(require 'highlight-parentheses) (define-globalized-minor-mode global-highlight-parentheses-mode highlight-parentheses-mode (lambda () (highlight-parentheses-mode t))) (global-highlight-parentheses-mode t)
样式 主题 先要安装 solarized-theme
(load "~/.emacs.d/elpa/color-theme-solarized-20160626.743/color-theme-solarized.el") ;; 具体路径可能有些不同 (load-theme 'solarized t)