当前位置:  开发笔记 > 编程语言 > 正文

使用Vim进行Lisp开发

如何解决《使用Vim进行Lisp开发》经验,为你挑选了7个好方法。

我一直在使用Lisp一段时间,但我开始更加认真地在Lisp中做一些"真正的"工作.我是一个巨大的Vim粉丝,并且想知道如何使用Vim作为我的Lisp开发编辑器来提高效率.插件,工作流程建议等都是受欢迎的.

请不要说"使用emacs",因为我已经加入了Vim,我真的很喜欢它作为一名编辑.



1> Mikael Janss..:

Limp旨在成为Vim的全功能Common Lisp IDE.它默认为SBCL,但可以通过在文件/usr/local/limp/latest/bin/lisp.sh中将"sbcl"替换为您喜欢的lisp来更改以支持大多数其他实现

在最近讨论Lisp时,通常假设是Common Lisp,这是ANSI X3J13标准化的语言(参见HyperSpec,以及一本优秀教科书的Practical Common Lisp),其实现包括GNU Clisp,SBCL,CMUCL,AllegroCL等等.其他.

回到Limp.还有其他更轻量级的解决方案,或尝试做其他事情,但我相信提供的环境可以为您提供支架匹配,突出显示,文档查找等功能,即尽可能使其成为交钥匙解决方案.

在Limp存储库中,您将找到SlimVim项目的一些先前工作,即ECL(Embeddable Common Lisp)接口,与更高版本(7.1)合并; Simon还制作了7.2补丁,但尚未合并.ECL接口记录在if_ecl.txt中.

短期工作是说与7.2合并并向vim_dev提交补丁以将其合并到官方Vim树中.

这导致了我们的长期计划:直接在Vim中使用Lisp将使得开始在SWANK前端(在Lisp中运行的SLIME的一部分,slime.el是在其中运行的部分)很方便.编辑 - 前端).

介于两者之间,很可能所有的Limp都将使用ECL接口在Common Lisp中重写,使得Limp更易于维护(VimScript不是我最喜欢的),并且用户更容易定制.

在官方网站的跛行下降不时,但正如指出的那样,下载在Vim.org应该总是工作,和支持团体跛行devel的和跛行用户与谷歌网上论坛托管.如果您觉得需要回答问题,或者甚至想参与开发,请不要犹豫加入.大多数讨论都发生在limp-devel列表中.如果你进入IRC,我在irc.freenode.net的#limp中就是'tic'.

祝好运!


我糊涂了."答案"似乎是一些选项的建议,例如使用Limp,但根本没有解释如何实现这一点.我认为问题是,如何将Vim与SBCL一起使用/无论如何.这并没有真正回答这个问题,所以我对所有的赞成都感到有些困惑.您是否介意了解如何实际设置此环境并开始使用?
这项工作的现状如何?你还对使用它感兴趣吗?

2> osdf..:

您可能会给slimv休息.


一直在使用slimv; 它很棒.在空间中没有别的比较.

3> Luís Oliveir..:

这是Xach的一个很酷的图表,总结了当前的情况.

图解释说,几乎没有VIM用户也是Lisp程序员,也可以破解它使它成为一个很好的Lisp IDE ...糟糕的替代文字:)


那太傻了.您不需要C来自定义Vim.Vim可以用自己的语言开箱即用,大多数构建版本也支持Ruby和Python脚本.
绿色和蓝色应该相交.
那么,想要将VIM用于Common Lisp的VIM用户是所有VIM用户的核心?也许我在这里遗漏了一些东西......

4> Brian..:

用于EMACS的SLIME是LISP编程的绝佳工具.最好的部分是将编辑器中编写的代码直接发送到实时LISP会话.你可以使用这里的提示从Vim中获得类似的行为:

http://technotales.wordpress.com/2007/10/03/like-slime-for-vim/

我调整了自己的脚本,以便我可以发送到SBCL或Clojure会话.它使您的工作效率更高,并利用REPL.

":set lisp"启动Vim的lisp缩进模式.但它不适用于像Clojure这样的一些方言.对于Clojure,请使用VimClojure.

有些人也喜欢LIMP.



5> Ben Hoffstei..:

查看Limp插件:

http://www.vim.org/scripts/script.php?script_id=2219



6> graywh..:

:设置lisp

Vim有一种模式可以帮助您通过Lisp标准缩进代码.

另外,我修改了lispwords以改变vim如何缩进我的代码.

:setl lw- = if(在〜/ .vim/ftplugin/lisp.vim中)



7> Leslie P. Po..:

Vim附加组件:彩虹括号,Lisp语法

SBCL附加组件:rlwrap,sb-aclrepl

工作流程:具有多个终端窗口的Ion3(或其他一些平铺的WM).

在Vim中编辑Lisp

切换到Lisp窗口(当然使用键盘)

使用Cr调用该行以重新加载有问题的ASDF系统,以便您的更改生效.

使用X Window复制/粘贴来获取小片段/更改.

大量使用DESCRIBE,TRACE和APROPOS.

重复.

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有