Windows下安装Emacs+Sbcl+Slime
前言
其实网上已经有很多类似的文章了,我也是按照上面的来做。在做的过程中会遇到几个很坑的地方,我自己也是折腾了好久才弄好。所以现在写出来希望能对大家有所帮助。
正文
- 下载和安装Emacs
http://ftp.gnu.org/gnu/emacs/windows/emacs-24.3-bin-i386.zip
解压运行安装
- 下载Sbcl
http://www.sbcl.org/platform-table.html
选Windows和你的架构。如果不知道的话就选X86就行了。
- 下载Slime
https://github.com/slime/slime
如果你有github帐户就直接git clone吧。如果没有的话,点download zip然后解压。
- 安装Sbcl
双击安装包,改一下安装路径到你想安装的地方。但是这里有一个坑。
坑1:系统变量重启才会更新
这是因为在安装的过程中会给系统加一个Sbcl路径的变量。
所以一定要安装完后重启,不然就会提示
fatal error encountered in SBCL pid 10236(tid 9971200):
can't find core file at XXXXX
安装成功的标志是运行sbcl.exe会出现类似这样的界面:
- 配置Emacs
本来在Linux下配置Emacs是一件简单的事,但在Windows下就不那么容易了。因为Windows文件名命名机制这里有一个坑。
坑2:找不到Emacs的配置文件.emacs
这是因为Windows允许这样的命名规则,也是就不允许只有扩展名而没有文件名(在Windows看来是.emacs非法的,必须是XXX.emacs才是合法的。Linux则是看成一个隐藏文件而已)
所以要做的第一步是生成.emacs配置文件
原理是通过修改选项之后点保存选项会生成.emacs配置文件
方法很简单。在Emacs目录下双击runemacs.exe打开emacs
然后在菜单栏里点Options-----Show/Hide-----tool-bar
之后点Options-----Save options
这样就会在C:\Users\你的用户名\AppData\Roaming下生成一个.emacs
打开.emacs 输入以下内容以配置Slime
(setq inferior-lisp-program "sbcl路径");设置优先使用哪种Common Lisp实现 (add-to-list 'load-path "slime路径");设置Slime路径 (require 'slime) (slime-setup) (require 'slime-autoloads) (slime-setup '(slime-fancy));让slime变得更好看,比如把sbcl的*变成CL-USER>
其中路径使用/或者//分隔
这其中有一个坑需要小心
坑3:sbcl的路径一定要写到sbcl.exe 不然会提示
Specified program for new process is a directory
这个真的是深坑啊。当时我花了不少时间才折腾好
原理就是slime调用的时候不会从你填的路径找到sbcl.exe而是需要给出sbcl.exe的完整路径
我的.emacs配置是这样的
打开Emacs 按M-x(window下就是Alt+x)输入slime 之后会出现像这样的
输入"Hello Common Lisp!" 一声长叹
后记
一些常用的Slime快捷键
C-c C-k 编译当前文件 (也就是Ctrl+c后再Ctrl+k) C-c C-c 增量编译(这是我自己的理解) C-c C-z 切换到Slime C-c C-l 加载文件
当然以上快捷键都可以再.emacs里面改。
PS:我的配色是solarized 字体是Monaco
PSS:以上Vim的配色。Emacs的配色是自带的dichromacy
Windows下安装Emacs+Sbcl+Slime的更多相关文章
- windows下编辑器Emacs的安装与配置
一年成为Emacs高手(像神一样使用编辑器) http://blog.csdn.net/redguardtoo/article/details/7222501 原创作品,允许转载,转载时请务必以超 ...
- 在Windows下编译Emacs
在Windows下编译Emacs Windows下编译好的Emacs主要有两个版本,一个来自http://nqmacs.sourceforge.net/,另一个来自http://www.crasseu ...
- 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)
相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...
- Windows 下安装 MongoDB
Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...
- Coreseek Windows下安装调试
由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...
- 从零开始学 Java - Windows 下安装 Tomcat
谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...
- 从零开始学 Java - Windows 下安装 JDK
关于未来 "我要死在火星.在我死去的时候能够想着人类能有一个美好的未来--有可持续的能源,同时能够殖民其他的星球来避免人类灭绝的最坏可能." 官网下载 直接打开官网:http:// ...
- windows下安装nginx
说起开发,自己感到非常惭愧,由于公司让我给<绿电侠>项目写整体架构解决方案,才开始接触nginx这个东东,突然觉得它是一把非常好的利器. 本文主要记录在windows下安装nginx,另参 ...
- Redhat/Ubuntu/Windows下安装Docker
Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...
随机推荐
- 4Sum——LeetCode
Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = tar ...
- 话说python
前几年就职于一个大的软件公司时,开发过程中,有一个流程化的步骤要做,就是要由一个excel文档导出生成一堆sql语句.当时使用一个高手写的代码,只不过有限几行代码(应该不到100行),就完美实现此功能 ...
- HDOJ 2131 Probability
Problem Description Mickey is interested in probability recently. One day , he played a game which i ...
- Nodejs in Visual Studio Code 03.学习Express
1.开始 下载源码:https://github.com/sayar/NodeMVA Express组件:npm install express -g(全局安装) 2.ExpressRest 打开目录 ...
- 反编译工具 使用.NET JustDecompile来反编译你的程序代码
原文地址:http://www.it165.net/pro/html/201310/7383.html 前言 在项目的进行中有时会碰到需要去了解由第三方所开发的程序代码或者因为年久已经遗失原始码的程序 ...
- 如何创建WIN服务
sc create ServiceName binPath= "XXXX.exe" displayName= "中文xxxx"binpath和displayna ...
- bzoj2730 [HNOI2012]矿场搭建 (UVAlive5135 Mining Your Own Business)
2730: [HNOI2012]矿场搭建 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1147 Solved: 528[Submit][Statu ...
- KMP学习
刚才看了(连接)写的翻译,把kmp算法的工作过程讲的很不错,kmp算法的核心是next,next为什么要那么赋值?其实就是前缀和后缀的最大匹配值,用这个值在匹配失败的时候可以跳过一个不必要的匹配. ...
- Windows Live Writer Install Faied
win7安装Windows Live Writer软件时失败,并且提示错误代码0x80190194的问题 Windows Live Writer是一个很好的博客写作工具,单机就可以使用了,还可以用于同 ...
- 关于Hibemate
1.Hibernate定位 HIbernate是一款实现了ORM思想的框架 JDO TOpLink 2.HIbernate初次解释 Hibernate:冬眠,蛰伏 和持久化有关系 将内存中data持久 ...