在Window平台中搭建Lisp学习环境(Notepad++篇)

  • 0

在Window平台中搭建Lisp学习环境(Notepad++篇)

Category:安装设置 Tags : 

原作:庆森,修改:陆志广

原文:http://www.cnblogs.com/clisp/p/clisp-intall-on-windows-with-notepad-plus-plus.html

以上内容在原作者基础上略微修改,如有不妥之处请联系我

(QQ群390632710)共同学习进步。

在开始阅读本文之前,笔者先谈谈本文的目的吧。如果说你是刚刚了解到Lisp语言,没有折腾过linux的朋友,然后又已经看过Lisp相关的书籍,好想实践下书籍中的代码,那么本文适合你。相信有很朋友都跟我一样无论是工作、学习还是娱乐都习惯在Window平台上。不然折腾emacs的使用,很有可能到最后会把你学习lisp的兴趣也折腾没有了。

在这里我用的是ccl(ANSI Common Lisp 语言的实现)。目前官方有提供下载。安装也非常简单,这里就不列出步骤了。以下是目录支持系统。

安装完之后如下:

现在也可以直接在里面运行LISP语句了,来试试吧!

接下来安装Notepad++(文本编辑器),没有安装的朋友点击这里。官网可能不好进,大家可以直接百度。安装完之后我们还要给Notepad++安装NppExec插件(如果已经安装了的,请忽略这步)

大家先把中文的改成英文的,不然后面的NppExec插件可能会装不上,建议以管理员权限运行软件安装,中间如果失败可尝试重启系统,我的是Windows10 64位都可以安装好的。

找到菜单栏中的Plugins(插件)->Plugin Manager(插件管理)->Show Plugin Manager

找到NppExec这个插件,然后点击Install。安装完之后记得要重启Notepad++。

在下一步设置前,我们要先把编译器程序设置成全局变量才行。

右键电脑,属性,高级系统设置,环境变量,系统变量,Path,编辑,新建,输入程序运行目录,如:C:\lispbox-2018\ccl即可。

设置好后运行CMD,输入程序名,测试是否可以用。右键开始,运行,CMD

现在来配置Notepad++编译lisp,如上图找到Plugins->NppExec->Execute。

通过-l选项我们可以把源文件(*.lisp)或者编译后的文件(*.fas)加载到clisp环境中。

对于练习Lisp的语法我感觉-l选项就够了,所以我们配置的命令就是

NPP_SAVE

wx86cl64 -l $(FULL_CURRENT_PATH)

第一行命令的功能是执行前先保存下文件,因为运行的是保存的文件,有时忘记保存会得到不是想要的结果,手动保存点又有点费事,所以加这个命令很实用。这是后来更新了下内容,图片就不更新了。第二行才是加载我们的文件执行的代码。

下面点击Save可以保存下来,名字叫什么好呢?随你们喜欢吧。我就把它命名为:CCL LOAD。

点保存后界面下方就会出现运行框了,会看到界面已经改变了。

最后我们把CLISP LOAD功能加到Macros(宏)菜单中就可以方便的执行我们写的脚本了。

 

也差不多了,下面就来展示成果吧。

这是改回中文界面后的,大家要确保出现这个之后再改回语言。

点下CLISP LOAD,激动时刻来了。

点后会出现这个

(quit),输入这个点Send就可以运行了。如果在lisp文件的最后加上(quit)退出命令,就不会再出现上面的弹窗。

(defun say()
(format t “Helloooooooooooooooooooooooooooooo”))
(say)
(quit)

这里定义了一个say函数,打印欢迎信息。最后可以使用(quit)或者(exit)可以退出CCL模式。如果不加退出命令,每次重新运行都会弹窗口提示。

Lisp在Notepad++的语法高亮,这样设置下就可以了。

注:我按原文章测试过CLISP,还有SBCL,都不可用,原因是$(FULL_CURRENT_PATH)调用后的变量值是C:\lispbox-2018\ccl这种单反斜线,LOAD加载需要\\双反斜线或者/单斜线才行,大家根据需要测试修改。另外要注意的是,文件名不能有空格,特别注意新建的默认文件名是有空格的,这样编译会出错。需要另存为没有空格的,如果还出错请改下路径名和文件名也不要有中文名,或者检下函数是否有中文标点符号。好了,结束,有不足的地方欢迎指点,共同学习。

如果不喜欢这种整个文件执行的方式,想要只执行一个函数,可以参考下我写的另一个vs code ccl lisp配置的文章。

http://mip.i3geek.com

Leave a Reply

搜索

分类目录

公 告

本网站学习论坛:

www.zhlisp.com

lisp中文学习源码:

https://github.com/zhlisp/

欢迎大家来到本站,请积极评论发言;

加QQ群学习交流。