软件下载列表:

  • 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)

windows 配置 Scheme + Emacs 编程环境的更多相关文章

  1. MinGW安装图文教程以及如何配置C语音编程环境

    MinGW安装图文教程以及如何配置C语音编程环境 转载自:http://www.jb51.net/softjc/192017.html MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序 ...

  2. Windows配置Delve的测试环境

    引言 自己最近在玩Go,在开发一些项目的时候需要调试,由于之前都是在GoLand上写的,但是这个IDE启动太慢并且不轻便.并且自己之前很多项目都是在Vscode中编写的,所以特意想在Vscode中配置 ...

  3. 记录一次配置unix网络编程环境的过程和遇到的问题

    记录一次搭建unix网络编程环境过程中遇到的问题和总结 计算机环境虚拟机 linuxmint-18-xfce-64bit 1.打开unix网络编程.iso 把目录下的文件复制到某一目录,修改权限,可命 ...

  4. Windows配置本地Hadoop运行环境

    很多人喜欢用Windows本地开发Hadoop程序,这里是一个在Windows下配置Hadoop的教程. 首先去官网下载hadoop,这里需要下载一个工具winutils,这个工具是编译hadoop用 ...

  5. 在windows下搭建汇编编程环境

    汇编语言程序搭建masm+debug 下载链接 dosbox:链接:https://pan.baidu.com/s/1TgkfU-d5w6Nz9TOYro1pYw 密码:mp83 masm:链接:ht ...

  6. Linux下新手怎样将VIM配置成C++编程环境(能够STL自己主动补全)

    ~ 弄拉老半天,最终弄的几乎相同啦,果然程序猿还是须要有点折腾精神啊. 首先你要安装vim,命令:sudo apt-get install vim vim它仅仅是一个编辑器,它不是IDE(比方code ...

  7. 【转】Scheme 编程环境的设置

    Scheme 编程环境的设置 介绍了这么久的 Scheme,却没有讲过如何配置一个高效的 Scheme 的编程环境.有些人开始学习 Scheme 的时候感觉无从下手,所以今天讲一下它的配置. Sche ...

  8. VMWARE + CENTOS在windows下配置cocos2d-x android开发环境

    VMWARE + CENTOS在windows配置cocos2d-x android开发环境 之前使用cygwin在windows开发android,后来使用了c++11特性,在cygwin中更新工具 ...

  9. MapReduce编程(一) Intellij Idea配置MapReduce编程环境

    介绍怎样在Intellij Idea中通过创建mavenproject配置MapReduce的编程环境. 一.软件环境 我使用的软件版本号例如以下: Intellij Idea 2017.1 Mave ...

随机推荐

  1. HTML解析器BeautifulSoup

    BeautifulSoup是Python的一个库,可解析用urllib2抓取下来的HTML 1.Beautiful Soup 安装 可以利用 pip 来安装,在Python程序中导入 pip inst ...

  2. 感觉不止被Q了一下,还不知道被谁套了一个虚弱

    最近身体出现了一些问题,导致博客无法正常更新,只能是看身体状态更新了,相信用不了半个月就会满血复活的,请谅解 Joker在这里提醒大家  身体是革命的本钱,不要透支,不要过度消耗

  3. iOS获取设备型号和App版本号等信息(OC+Swift)

    iOS获取设备型号和App版本号等信息(OC+Swift) 字数1687 阅读382 评论3 喜欢10 好久没有写过博客了,因为中间工作比较忙,然后有些个人事情所以耽误了.但是之前写的博客还一直有人来 ...

  4. JS中的循环嵌套 BOM函数

    [嵌套循环特点]                           外层循环转一次,内层循环转一圈              外层循环控制行数,内层循环控制每行元素个数             [做 ...

  5. [效率]Source insight标题栏中路径显示完整路径的方法

    使用Source insight的时候,默认是不显示文件的全路径的,这一点有那么一段时间让我很纠结,因为很多函数都是基于硬件架构的,一个函数有很多时间.查看文件的全路径是非常有必要,可以通过以下实现: ...

  6. 数据转换d2d.js

    d2d.js what? d2d是data2data的简写,用来转换为符合需求的data. why? 我们在开发中定义好了的接口字段,后端工程可能因某些原因修改了字段, 或者我们用的插件或组件用到的数 ...

  7. TP5学习基础二:目录结构、URL路由、数据操作

    一.安装1.使用git或者composer(composer update)进行实时更新,区别在于git不会清空核心框架目录而composer会清空.2.使用官网打包好的TP压缩包(解压即可用)-&g ...

  8. Linux 定时任务详解

    原文地址:http://edu.codepub.com/2011/0104/28518.php   crond分为系统级定时和用户级定时,系统级定时主要编辑/etc/crontab,用户级定时主要利用 ...

  9. ④JavaScript格式化时间戳

    这部分代码是按照网上的教程写的,忘记在哪里看到了

  10. 刚由pc端做移动端的感受

    最近新调到一个项目,由原来的pc端,调到移动端,一切都是那么的不一样,在得知即将调到移动端的时候,听说我们的技术要用到vue,Aladdin,还有es6,有点懵... 我做了以下准备工作: 1,买了本 ...