windows 配置 Scheme + 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 编程环境的更多相关文章
- MinGW安装图文教程以及如何配置C语音编程环境
MinGW安装图文教程以及如何配置C语音编程环境 转载自:http://www.jb51.net/softjc/192017.html MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序 ...
- Windows配置Delve的测试环境
引言 自己最近在玩Go,在开发一些项目的时候需要调试,由于之前都是在GoLand上写的,但是这个IDE启动太慢并且不轻便.并且自己之前很多项目都是在Vscode中编写的,所以特意想在Vscode中配置 ...
- 记录一次配置unix网络编程环境的过程和遇到的问题
记录一次搭建unix网络编程环境过程中遇到的问题和总结 计算机环境虚拟机 linuxmint-18-xfce-64bit 1.打开unix网络编程.iso 把目录下的文件复制到某一目录,修改权限,可命 ...
- Windows配置本地Hadoop运行环境
很多人喜欢用Windows本地开发Hadoop程序,这里是一个在Windows下配置Hadoop的教程. 首先去官网下载hadoop,这里需要下载一个工具winutils,这个工具是编译hadoop用 ...
- 在windows下搭建汇编编程环境
汇编语言程序搭建masm+debug 下载链接 dosbox:链接:https://pan.baidu.com/s/1TgkfU-d5w6Nz9TOYro1pYw 密码:mp83 masm:链接:ht ...
- Linux下新手怎样将VIM配置成C++编程环境(能够STL自己主动补全)
~ 弄拉老半天,最终弄的几乎相同啦,果然程序猿还是须要有点折腾精神啊. 首先你要安装vim,命令:sudo apt-get install vim vim它仅仅是一个编辑器,它不是IDE(比方code ...
- 【转】Scheme 编程环境的设置
Scheme 编程环境的设置 介绍了这么久的 Scheme,却没有讲过如何配置一个高效的 Scheme 的编程环境.有些人开始学习 Scheme 的时候感觉无从下手,所以今天讲一下它的配置. Sche ...
- VMWARE + CENTOS在windows下配置cocos2d-x android开发环境
VMWARE + CENTOS在windows配置cocos2d-x android开发环境 之前使用cygwin在windows开发android,后来使用了c++11特性,在cygwin中更新工具 ...
- MapReduce编程(一) Intellij Idea配置MapReduce编程环境
介绍怎样在Intellij Idea中通过创建mavenproject配置MapReduce的编程环境. 一.软件环境 我使用的软件版本号例如以下: Intellij Idea 2017.1 Mave ...
随机推荐
- selenium结合docker构建分布式测试环境
selenium是目前web和app自动化测试的主要框架.对于web自动化测试而言,由于selenium2.0以后socker服务器由本地浏览器自己启动且直接通过浏览器原生API操作页面,故越来越多的 ...
- 优雅地解决Ajax接口参数来自另一个接口的问题
最近闲赋在家,终于有时间回顾我在工作中遇到的一些东西,由于经验不足,有些方面做的不是很好.在上家公司曾经遇到一个小问题,就是Ajax的接口中有参数是从另一个接口后台传来的.当时我的做法是将需要参数的接 ...
- Asp.net Authorization 学习
其实使用新的Identity以来一直有一个疑惑,之前的角色管理 在新的Identity中怎么管理的.[AspNetUserClaims] 在新的授权管理中又占什么位置 第一,根据角色授权,刚刚注册的用 ...
- 你想要的都在这里,ASP.NET Core MVC四种枚举绑定方式
前言 本节我们来讲讲在ASP.NET Core MVC又为我们提供了哪些方便,之前我们探讨过在ASP.NET MVC中下拉框绑定方式,这节我们来再来重点看看枚举绑定的方式,充分实现你所能想到的场景,满 ...
- [ext4]07 磁盘布局 - 块/inode分配策略
Ext4系统从设计上就认为数据局部性是文件系统的文件系统的一个理想品质. 在机械硬盘上,相关联的数据存放在相近的blocks上,可以使得在访问数据时减少磁头驱动器的移动距离,从而加快IO访问. 在SS ...
- 蓝桥杯-循环节长度-java
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...
- hdu2819二分图匹配
Given an N*N matrix with each entry equal to 0 or 1. You can swap any two rows or any two columns. C ...
- 从性能角度看react组件拆分的重要性
React是一个UI层面的库,它采用虚拟DOM技术减少Javascript与真正DOM的交互,提升了前端性能:采用单向数据流机制,父组件通过props将数据传递给子组件,这样让数据流向一目了然.一旦组 ...
- SectionIndexer 利用系统的控件,制作比较美观的侧栏索引控件
如上图所示,右侧的索引是系统提供的,具体使用方法,请搜索: SectionIndexer 相关的资料进行开发.
- 计算机的启动和Linux的启动
计算机的启动和Linux的启动 一 计算机的启动 计算机的启动过程分为四个阶段,分别是:BIOS.MBR.启动管理程序.加载操作系统内核.操作系统启动. 1.1 BIOS 计算机加电后,第一件 ...