Scheme 编程环境的设置

http://www.yinwang.org/blog-cn/2013/04/11/scheme-setup/

sudo apt-get insatll racket

;;paredit-mode

(autoload 'paredit-mode "paredit"

"Minor mode for pseudo-structurally editing Lisp code."

t)

;;;;;;;;;;;;

;; Scheme

;;;;;;;;;;;;

(require 'cmuscheme)

(setq scheme-program-name "racket") ;; 如果用 Petite 就改成 "petite"

;; bypass the interactive question and start the default interpreter

(defun scheme-proc ()

"Return the current Scheme process, starting one if necessary."

(unless (and scheme-buffer

(get-buffer scheme-buffer)

(comint-check-proc scheme-buffer))

(save-window-excursion

(run-scheme scheme-program-name)))

(or (scheme-get-process)

(error "No current process. See variable `scheme-buffer'")))

(defun scheme-split-window ()

(cond

((= (count-windows))

(delete-other-windows)

(split-window-vertically (floor (* 0.68 (window-height))))

(other-window )

(switch-to-buffer "*scheme*")

(other-window ))

((not (find "*scheme*"

(mapcar (lambda (w) (buffer-name (window-buffer w)))

(window-list))

:test 'equal))

(other-window )

(switch-to-buffer "*scheme*")

(other-window -))))

(defun scheme-send-last-sexp-split-window ()

(interactive)

(scheme-split-window)

(scheme-send-last-sexp))

(defun scheme-send-definition-split-window ()

(interactive)

(scheme-split-window)

(scheme-send-definition))

(add-hook 'scheme-mode-hook

(lambda ()

(paredit-mode )

(define-key scheme-mode-map (kbd "") 'scheme-send-last-sexp-split-window)

(define-key scheme-mode-map (kbd "") 'scheme-send-definition-split-window)))

(require 'parenface)

(set-face-foreground 'paren-face "DimGray")

【转】Scheme 编程环境的设置

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

Emacs下scheme编程环境的设置

Scheme编程环境搭建 1.1 安装Chez Scheme git clone https://github.com/cisco/ChezScheme.git cd ChezScheme ./con ...

安装Emacs并设置racket环境

最近在阅读sicp这本书,书中的代码是使用scheme实现的.之前阅读的时候是使用Dr.Racket来完成写练习的,可我觉得与其这样,不如一步到位,使用emacs+lisp解释器来的比较快. 安装em ...

linux下ruby使用tcl/tk编程环境设置

正常情况下最新的ruby都是不带tcl/tk选项编译的,所以我们在运行tcl/tk代码时都会发生找不到tk库的错误.解决办法很简单只要以tcl/tk选项编译ruby即可. 这里以ubuntu 15.0 ...

win7中java编程工具安装 java环境变量设置

一.下载java 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html ...

【转】手把手教你把Vim改装成一个IDE编程环境(图文)

手把手教你把Vim改装成一个IDE编程环境(图文) By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage ...

Vim配置及说明——IDE编程环境

Vim配置及说明——IDE编程环境 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 9. ...

IDE编程环境

Vim配置及说明——IDE编程环境 目录 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 ...

Ubuntu下编程环境GNU安装

ubuntu下C编程   环境搭建 其实,linux下写C也是很容易的.IDE的话用 eclipse 集成 CDT 模块就行了.当然这属于重量级的了,就如同VC++之于windows一样.那有没有像T ...

随机推荐

C#设备处理类操作

C#对于处理window操作系统下的设备有天然的优势,对于大多数设备读写等操作来说基本上够了,这里只讨论通过普通的大多数的设备的操作.涉及到两大类SerialPort类,Socket的一些操作.不一定 ...

5分钟学习maven(根据英文文档整理)

英文原地址:http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html 一.前提 需要懂得如何在计算机上安装软件 ...

(五)JS学习笔记 - JQuery缓存机制

历史背景 开发中常常因为方便,把状态标志都写到dom节点中,也就是HTMLElement,缺点: 循环引用 直接暴露数据,安全性? 增加一堆的自定义属性标签,对浏览器来说是没意义的 取数据的时候要对H ...

图的割点 桥 双连通(byvoid)

[点连通度与边连通度] 在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合.一个图的点连通度的定义为,最小割点集 ...

DEV GridControl 小结(持续添加)

一.属性: 1.Views OptionsBehavior=>Editable:False  列表不可编辑 OptionsSelection=>EnableAppearanceFocuse ...

解决adb push时出现的"Read-only file system"问题

面试之路(28)-反转链表(reverse ListNode)

反转链表: java类 public class ListNode{ int key; ListNode next; } 思路分析: 需要三个指针,current,prev和next. current ...

【LeetCode每天一题】Maximum Subarray(最大子数组)

Given an integer array nums, find the contiguous subarray (containing at least one number) which has ...

Spring、MyBatis和SpringMVC整合的jar包下载

spring mvc的jar包下载:http://repo.springsource.org/libs-release-local/org/springframework/spring/我下载的5.0 ...

Android -- 加载大图片的方法

在android中要加载一张大图片到内存中如果通过如下方式进行: Bitmap bitmap= BitmapFactory.decodeFile("/sdcard/a.jpg"); ...