除了Emacs之外,Lisp编程是否有任何优秀的编辑器?

时间:2021-07-14 00:42:18

I'm looking for an alternative, since I find emacs difficult to use. I'd rather use an editor that supports all the usual shortcuts I'm used to, such as arrow keys to move the cursor around, CTRL+SHIFT+RightArrow to select the next word, etc.

我正在寻找替代方案,因为我发现emacs很难使用。我宁愿使用支持我习惯的所有常用快捷方式的编辑器,例如箭头键移动光标,CTRL + SHIFT + RightArrow选择下一个单词等。

Basically, I don't want to have to relearn all my familiar shortcuts just so I can use emacs.

基本上,我不想重新学习所有熟悉的快捷方式,因此我可以使用emacs。

Can anyone recommend a suitable editor?

有人可以推荐合适的编辑器吗?

Another thing - Notepad++ supports LISP syntax coloring, but it doesn't have an integrated LISP console like emacs does. Would it be fine to just have a Notepad++ window and a Command Line window open, side-by-side, and use the command-line whenever I want to run my program?

另一件事 - Notepad ++支持LISP语法着色,但它没有像emacs那样的集成LISP控制台。只需将Notepad ++窗口和命令行窗口并排打开,并且每当我想运行程序时使用命令行,这样会好吗?

16 个解决方案

#1


6  

Try LispIDE. It's kind of rudimentary but may improve things a bit for you.

试试LispIDE。这有点简陋,但可能会为你改善一些事情。

#2


17  

Firstly, the arrow keys should work just fine on Emacs. (Emacs die-hards will tell you Ctrl-f/b/p/n are preferable, but you don't have to listen to them.) If they don't work by default, something is wrong.

首先,箭头键​​在Emacs上应该可以正常工作。 (Emacs顽固分子会告诉你Ctrl-f / b / p / n是最好的,但是你不必听它们。)如果它们默认不起作用,那就错了。

Recent versions of Emacs come with cua-mode, which will make all the other common shortcuts like Ctrl-x/c/v for cut-copy-paste, shift-arrows to select, and so on work as well. If they don't work by default, type "M-x (that's Alt-x on most keyboards) cua-mode".

最新版本的Emacs带有cua-mode,它将使所有其他常见的快捷方式如Ctrl-x / c / v用于剪切复制粘贴,移位箭头选择,等工作。如果它们默认不起作用,请键入“M-x(大多数键盘上的Alt-x)cua-mode”。

In general, if you want a particular keystroke to invoke a certain function, then type M-x global-set-key [hit Return] [hit the keystroke] [type name of function], e.g. M-x global-set-key RET [hit the down arrow] next-line RET.

通常,如果你想要一个特定的击键来调用某个函数,那么输入M-x global-set-key [命中返回] [点击击键] [函数的类型名称],例如, M-x全局设置键RET [点击向下箭头]下一行RET。

Emacs was made for Lisp by Lisp programmers, and it is the best editor for Lisp simply on account of having been the standard Lisp editor for decades and having every idea for improvement been implemented.

Emacs是由Lisp程序员为Lisp编写的,它是Lisp的最佳编辑器,仅仅是因为几十年来一直是标准的Lisp编辑器并且已经实现了每一个改进的想法。

#3


8  

Use DrScheme. It has got all of the standard keybindings that you might expect. Here are my notes on using it. Yes, it is built for Scheme, but maybe it would work well for you.

使用DrScheme。它拥有您可能期望的所有标准键绑定。以下是我使用它的说明。是的,它是为Scheme而建的,但也许它适用于你。

#4


5  

It's not just emacs you want to use, it's also SLIME. SLIME will let you connect to a Lisp REPL (running the Swank back-end). You can connect to a server process and start interacting with it. Take a look at the SLIME homepage

它不仅仅是你想要使用的emacs,它也是SLIME。 SLIME将允许您连接到Lisp REPL(运行Swank后端)。您可以连接到服务器进程并开始与其进行交互。看看SLIME主页

#5


4  

The Zeus programmers editor has a configurable syntax highlighter so it should be possible to configure it for Lisp highlighting.

Zeus程序员编辑器有一个可配置的语法高亮显示器,所以应该可以配置它用于Lisp高亮显示。

Zeus even has a Emacs keyboard emulation mode and is fully scriptable, but unfortunately it is not scriptable in Lisp ;)

Zeus甚至有一个Emacs键盘仿真模式,并且完全可以编写脚本,但不幸的是它在Lisp中不能编写脚本;)

Edited: In response Luís Oliveira comments: He's looking for a Lisp IDE.

编辑:回应LuísOliveira评论:他正在寻找一个Lisp IDE。

Zeus does have project/workspace management, compiler/linker/tool support, class browsing, code completion, integrated version control, just like a lot of IDEs.

Zeus确实有项目/工作区管理,编译器/链接器/工具支持,类浏览,代码完成,集成版本控制,就像许多IDE一样。

But Zeus is more than an IDE because it provides a lot of the functionality of an IDE without being tied to any one particular language, in fact just like Emacs.

但Zeus不仅仅是一个IDE,因为它提供了IDE的许多功能而不依赖于任何一种特定语言,实际上就像Emacs一样。

#6


3  

I tried for long to find a good editor for my scheme code besides emacs, but even with emacs tringer foubles, it was still the best. jEdit was the second best, but its kind of like saying that the choices between cake, sawdust and dirt, the sawdust was second best.

除了emacs之外,我试图为我的方案代码找到一个好的编辑器,但即使使用emacs tringer foubles,它仍然是最好的。 jEdit是第二好的,但它有点像说蛋糕,锯末和泥土之间的选择,锯末是第二好的。

Emacs with paredit mode just owns for structured editing of s expressions. Add to that the highlight parens mode, and it gets even better.

具有paredit模式的Emacs只拥有s表达式的结构化编辑。再加上突出显示的parens模式,它会变得更好。

The thing about using emacs, is that the editors extensions language is lisp, so it is a great way to learn lisp.

关于使用emacs的问题是编辑器扩展语言是lisp,因此它是学习lisp的好方法。

#7


1  

Take a look at this question

看看这个问题

https://*.com/questions/22850/getting-started-with-lisp

One thing it mentions is CUSP which runs inside Eclipse.

它提到的一件事是在Eclipse内部运行的CUSP。

Also if you are doing Scheme (you don't say which Lisp you are referring to), I second the recommendation of DrScheme.

此外,如果你正在做Scheme(你没有说你指的是哪个Lisp),我继续DrScheme的推荐。

#8


1  

I suspect that nearly anyone that programs LISP will use emacs. You may be putting yourself at a disadvantage if you ever have to work with real LISP programmers.

我怀疑几乎所有编程LISP的人都会使用emacs。如果你不得不与真正的LISP程序员合作,你可能会让自己处于劣势。

Additionally, a good programmer should not be tied to any one editor. Learn to deal without Windows-based key acceleration.

另外,一个好的程序员不应该绑在任何一个编辑器上。学习没有基于Windows的密钥加速处理。

#9


1  

In addition to CUSP, which has been mentioned, there's also ABLE, a relatively simple Lisp editor with REPL integration and stuff. Personally, I don't have experience using it as I'm happy with SLIME.

除了已经提到的CUSP之外,还有ABLE,一个相对简单的Lisp编辑器,具有REPL集成和功能。就个人而言,我没有使用它的经验,因为我对SLIME很满意。

#10


1  

I'm undoubtedly a little late on this, but plain old vi(1) --- regular legacy vi --- works quite well, with paren matching and at least some basic s-exp stuff. Set up your EXRC to use

我毫无疑问在这方面有点晚了,但是普通的旧vi(1)---常规的传统vi ---工作得很好,有匹配和至少一些基本的s-exp东西。设置你的EXRC使用

:set ai lisp aw

It's not SLIME, but it's something.

这不是SLIME,但它是一种东西。

#11


1  

Some commercial Lisp systems (Allegro CL, LispWorks, Corman CL) are coming with their own editors. Typically one can choose between platform specific keybindings and Emacs-like keybindings.

一些商业Lisp系统(Allegro CL,LispWorks,Corman CL)正在推出自己的编辑器。通常,可以在平台特定的键绑定和类似Emacs的键绑定之间进行选择。

#12


0  

There are those that say there are no good editors for anything, other than emacs. I'm sure you'll find a few of them here (although I'm a vim fan).

除了emacs之外,有些人说没有好的编辑器。我相信你会在这里找到一些(虽然我是一个vim粉丝)。

The vim macro language is a powerful one which can let you run external programs (including the one in the current edit buffer).

vim宏语言是一个功能强大的语言,可以让你运行外部程序(包括当前编辑缓冲区中的程序)。

But, if you're used to Notepad++, you'll probably find it as hard to move to vim as you would to emacs, so maybe your proposed solution is the best one.

但是,如果你已经习惯了Notepad ++,那么你可能会觉得很难像使用emacs一样移动到vim,所以也许你提出的解决方案是最好的解决方案。

#13


0  

try McCLIM, newlisp

尝试McCLIM,newlisp

http://www.cliki.net/IDE

#14


0  

Another thing - Notepad++ supports LISP syntax coloring, but it doesn't have an integrated LISP console like emacs does. Would it be fine to just have a Notepad++ window and a Command Line window open, side-by-side, and use the command-line whenever I want to run my program?

另一件事 - Notepad ++支持LISP语法着色,但它没有像emacs那样的集成LISP控制台。只需将Notepad ++窗口和命令行窗口并排打开,并且每当我想运行程序时使用命令行,这样会好吗?

Yes! Take advantage of ASD though and just reload the system after making changes.

是!尽管利用了ASD,只需在进行更改后重新加载系统。

Don't restart your image every time.

不要每次都重新启动图像。

Do try Eclipse/Cusp or Limp if you want REPL integration, though.

如果你想要REPL集成,请尝试Eclipse / Cusp或Limp。

#15


0  

If you have a Mac, I would recommend Aquamacs, which is a beginner-friendly version of GNU-emacs, and therefore has all the power of emacs, while still offering "standard" copy-paste, save and other features, including normal file dialogs and windows.

如果您有Mac,我会推荐Aquamacs,它是GNU-emacs的初学者友好版本,因此具有emacs的所有功能,同时仍提供“标准”复制粘贴,保存和其他功能,包括普通文件对话框和窗口。

#16


0  

Emacs is not as weird and unfriendly as it once was. Depending on what platform you prefer, there are two modern, updated Emacs implementations with more familiar user interfaces.

Emacs并不像以前那样奇怪和不友好。根据您喜欢的平台,有两种现代的,更新的Emacs实现,具有更熟悉的用户界面。

If you are a Mac OS X user, the more polished is Aquamacs:

如果您是Mac OS X用户,那么Aquamacs就更加精致:

If you prefer Linux or Windows, then there is Xah Lee's ErgoEmacs:

如果您更喜欢Linux或Windows,那么就有Xah Lee的ErgoEmacs:

Both are FOSS and free to download.

两者都是FOSS,可以免费下载。

#1


6  

Try LispIDE. It's kind of rudimentary but may improve things a bit for you.

试试LispIDE。这有点简陋,但可能会为你改善一些事情。

#2


17  

Firstly, the arrow keys should work just fine on Emacs. (Emacs die-hards will tell you Ctrl-f/b/p/n are preferable, but you don't have to listen to them.) If they don't work by default, something is wrong.

首先,箭头键​​在Emacs上应该可以正常工作。 (Emacs顽固分子会告诉你Ctrl-f / b / p / n是最好的,但是你不必听它们。)如果它们默认不起作用,那就错了。

Recent versions of Emacs come with cua-mode, which will make all the other common shortcuts like Ctrl-x/c/v for cut-copy-paste, shift-arrows to select, and so on work as well. If they don't work by default, type "M-x (that's Alt-x on most keyboards) cua-mode".

最新版本的Emacs带有cua-mode,它将使所有其他常见的快捷方式如Ctrl-x / c / v用于剪切复制粘贴,移位箭头选择,等工作。如果它们默认不起作用,请键入“M-x(大多数键盘上的Alt-x)cua-mode”。

In general, if you want a particular keystroke to invoke a certain function, then type M-x global-set-key [hit Return] [hit the keystroke] [type name of function], e.g. M-x global-set-key RET [hit the down arrow] next-line RET.

通常,如果你想要一个特定的击键来调用某个函数,那么输入M-x global-set-key [命中返回] [点击击键] [函数的类型名称],例如, M-x全局设置键RET [点击向下箭头]下一行RET。

Emacs was made for Lisp by Lisp programmers, and it is the best editor for Lisp simply on account of having been the standard Lisp editor for decades and having every idea for improvement been implemented.

Emacs是由Lisp程序员为Lisp编写的,它是Lisp的最佳编辑器,仅仅是因为几十年来一直是标准的Lisp编辑器并且已经实现了每一个改进的想法。

#3


8  

Use DrScheme. It has got all of the standard keybindings that you might expect. Here are my notes on using it. Yes, it is built for Scheme, but maybe it would work well for you.

使用DrScheme。它拥有您可能期望的所有标准键绑定。以下是我使用它的说明。是的,它是为Scheme而建的,但也许它适用于你。

#4


5  

It's not just emacs you want to use, it's also SLIME. SLIME will let you connect to a Lisp REPL (running the Swank back-end). You can connect to a server process and start interacting with it. Take a look at the SLIME homepage

它不仅仅是你想要使用的emacs,它也是SLIME。 SLIME将允许您连接到Lisp REPL(运行Swank后端)。您可以连接到服务器进程并开始与其进行交互。看看SLIME主页

#5


4  

The Zeus programmers editor has a configurable syntax highlighter so it should be possible to configure it for Lisp highlighting.

Zeus程序员编辑器有一个可配置的语法高亮显示器,所以应该可以配置它用于Lisp高亮显示。

Zeus even has a Emacs keyboard emulation mode and is fully scriptable, but unfortunately it is not scriptable in Lisp ;)

Zeus甚至有一个Emacs键盘仿真模式,并且完全可以编写脚本,但不幸的是它在Lisp中不能编写脚本;)

Edited: In response Luís Oliveira comments: He's looking for a Lisp IDE.

编辑:回应LuísOliveira评论:他正在寻找一个Lisp IDE。

Zeus does have project/workspace management, compiler/linker/tool support, class browsing, code completion, integrated version control, just like a lot of IDEs.

Zeus确实有项目/工作区管理,编译器/链接器/工具支持,类浏览,代码完成,集成版本控制,就像许多IDE一样。

But Zeus is more than an IDE because it provides a lot of the functionality of an IDE without being tied to any one particular language, in fact just like Emacs.

但Zeus不仅仅是一个IDE,因为它提供了IDE的许多功能而不依赖于任何一种特定语言,实际上就像Emacs一样。

#6


3  

I tried for long to find a good editor for my scheme code besides emacs, but even with emacs tringer foubles, it was still the best. jEdit was the second best, but its kind of like saying that the choices between cake, sawdust and dirt, the sawdust was second best.

除了emacs之外,我试图为我的方案代码找到一个好的编辑器,但即使使用emacs tringer foubles,它仍然是最好的。 jEdit是第二好的,但它有点像说蛋糕,锯末和泥土之间的选择,锯末是第二好的。

Emacs with paredit mode just owns for structured editing of s expressions. Add to that the highlight parens mode, and it gets even better.

具有paredit模式的Emacs只拥有s表达式的结构化编辑。再加上突出显示的parens模式,它会变得更好。

The thing about using emacs, is that the editors extensions language is lisp, so it is a great way to learn lisp.

关于使用emacs的问题是编辑器扩展语言是lisp,因此它是学习lisp的好方法。

#7


1  

Take a look at this question

看看这个问题

https://*.com/questions/22850/getting-started-with-lisp

One thing it mentions is CUSP which runs inside Eclipse.

它提到的一件事是在Eclipse内部运行的CUSP。

Also if you are doing Scheme (you don't say which Lisp you are referring to), I second the recommendation of DrScheme.

此外,如果你正在做Scheme(你没有说你指的是哪个Lisp),我继续DrScheme的推荐。

#8


1  

I suspect that nearly anyone that programs LISP will use emacs. You may be putting yourself at a disadvantage if you ever have to work with real LISP programmers.

我怀疑几乎所有编程LISP的人都会使用emacs。如果你不得不与真正的LISP程序员合作,你可能会让自己处于劣势。

Additionally, a good programmer should not be tied to any one editor. Learn to deal without Windows-based key acceleration.

另外,一个好的程序员不应该绑在任何一个编辑器上。学习没有基于Windows的密钥加速处理。

#9


1  

In addition to CUSP, which has been mentioned, there's also ABLE, a relatively simple Lisp editor with REPL integration and stuff. Personally, I don't have experience using it as I'm happy with SLIME.

除了已经提到的CUSP之外,还有ABLE,一个相对简单的Lisp编辑器,具有REPL集成和功能。就个人而言,我没有使用它的经验,因为我对SLIME很满意。

#10


1  

I'm undoubtedly a little late on this, but plain old vi(1) --- regular legacy vi --- works quite well, with paren matching and at least some basic s-exp stuff. Set up your EXRC to use

我毫无疑问在这方面有点晚了,但是普通的旧vi(1)---常规的传统vi ---工作得很好,有匹配和至少一些基本的s-exp东西。设置你的EXRC使用

:set ai lisp aw

It's not SLIME, but it's something.

这不是SLIME,但它是一种东西。

#11


1  

Some commercial Lisp systems (Allegro CL, LispWorks, Corman CL) are coming with their own editors. Typically one can choose between platform specific keybindings and Emacs-like keybindings.

一些商业Lisp系统(Allegro CL,LispWorks,Corman CL)正在推出自己的编辑器。通常,可以在平台特定的键绑定和类似Emacs的键绑定之间进行选择。

#12


0  

There are those that say there are no good editors for anything, other than emacs. I'm sure you'll find a few of them here (although I'm a vim fan).

除了emacs之外,有些人说没有好的编辑器。我相信你会在这里找到一些(虽然我是一个vim粉丝)。

The vim macro language is a powerful one which can let you run external programs (including the one in the current edit buffer).

vim宏语言是一个功能强大的语言,可以让你运行外部程序(包括当前编辑缓冲区中的程序)。

But, if you're used to Notepad++, you'll probably find it as hard to move to vim as you would to emacs, so maybe your proposed solution is the best one.

但是,如果你已经习惯了Notepad ++,那么你可能会觉得很难像使用emacs一样移动到vim,所以也许你提出的解决方案是最好的解决方案。

#13


0  

try McCLIM, newlisp

尝试McCLIM,newlisp

http://www.cliki.net/IDE

#14


0  

Another thing - Notepad++ supports LISP syntax coloring, but it doesn't have an integrated LISP console like emacs does. Would it be fine to just have a Notepad++ window and a Command Line window open, side-by-side, and use the command-line whenever I want to run my program?

另一件事 - Notepad ++支持LISP语法着色,但它没有像emacs那样的集成LISP控制台。只需将Notepad ++窗口和命令行窗口并排打开,并且每当我想运行程序时使用命令行,这样会好吗?

Yes! Take advantage of ASD though and just reload the system after making changes.

是!尽管利用了ASD,只需在进行更改后重新加载系统。

Don't restart your image every time.

不要每次都重新启动图像。

Do try Eclipse/Cusp or Limp if you want REPL integration, though.

如果你想要REPL集成,请尝试Eclipse / Cusp或Limp。

#15


0  

If you have a Mac, I would recommend Aquamacs, which is a beginner-friendly version of GNU-emacs, and therefore has all the power of emacs, while still offering "standard" copy-paste, save and other features, including normal file dialogs and windows.

如果您有Mac,我会推荐Aquamacs,它是GNU-emacs的初学者友好版本,因此具有emacs的所有功能,同时仍提供“标准”复制粘贴,保存和其他功能,包括普通文件对话框和窗口。

#16


0  

Emacs is not as weird and unfriendly as it once was. Depending on what platform you prefer, there are two modern, updated Emacs implementations with more familiar user interfaces.

Emacs并不像以前那样奇怪和不友好。根据您喜欢的平台,有两种现代的,更新的Emacs实现,具有更熟悉的用户界面。

If you are a Mac OS X user, the more polished is Aquamacs:

如果您是Mac OS X用户,那么Aquamacs就更加精致:

If you prefer Linux or Windows, then there is Xah Lee's ErgoEmacs:

如果您更喜欢Linux或Windows,那么就有Xah Lee的ErgoEmacs:

Both are FOSS and free to download.

两者都是FOSS,可以免费下载。