我正在寻找替代方案,因为我发现 emacs 很难使用。我宁愿使用支持所有常用快捷键的编辑器,例如箭头键移动光标,CTRL+SHIFT+RightArrow 选择下一个单词等。
基本上,我不想为了使用 emacs 而重新学习所有熟悉的快捷方式。
谁能推荐一个合适的编辑器?
另一件事 - Notepad++ 支持 LISP 语法着色,但它没有像 emacs 那样的集成 LISP 控制台。是否可以并排打开一个 Notepad++ 窗口和一个命令行窗口,并在我想运行我的程序时使用命令行?
首先,箭头键在 Emacs 上应该可以正常工作。(Emacs 顽固分子会告诉您 Ctrl-f/b/p/n 更可取,但您不必听他们的。)如果默认情况下它们不起作用,则说明有问题。
最新版本的 Emacs 带有 cua-mode,这将使所有其他常用快捷键(如用于剪切复制粘贴的 Ctrl-x/c/v、用于选择的 shift-arrows 等)也能正常工作。如果默认情况下它们不起作用,请键入“Mx(大多数键盘上的 Alt-x)cua-mode”。
一般来说,如果你想让一个特定的按键调用某个函数,然后输入 Mx global-set-key [hit Return] [hit the keystroke] [type name of function],例如 Mx global-set-key RET [hit the向下箭头] 下一行 RET。
Emacs 是由 Lisp 程序员为 Lisp 制作的,它是 Lisp 最好的编辑器,仅仅因为几十年来一直是标准的 Lisp 编辑器并且实现了每一个改进的想法。
试试LispIDE。这有点初级,但可能会对你有所改善。
您想要使用的不仅仅是 emacs,它也是 SLIME。SLIME 会让你连接到 Lisp REPL(运行 Swank 后端)。您可以连接到服务器进程并开始与之交互。看看 SLIME 主页
除了 emacs 之外,我试图为我的方案代码找到一个好的编辑器,但即使使用 emacs triger foubles,它仍然是最好的。jEdit 是第二好的,但有点像是说蛋糕、锯末和泥土之间的选择,锯末是第二好的。
具有 paredit 模式的 Emacs 只拥有s 表达式的结构化编辑。再加上高亮括号模式,它会变得更好。
使用 emacs 的一点是,编辑器扩展语言是 lisp,所以它是学习 lisp 的好方法。
看看这个问题
https://stackoverflow.com/questions/22850/getting-started-with-lisp
它提到的一件事是在 Eclipse 中运行的CUSP 。
另外,如果你在做 Scheme(你没有说你指的是哪个 Lisp),我支持 DrScheme 的推荐。
我怀疑几乎所有编写 LISP 程序的人都会使用 emacs。如果你不得不与真正的 LISP 程序员一起工作,你可能会让自己处于不利地位。
此外,优秀的程序员不应该被任何一个编辑器束缚。学会在没有基于 Windows 的密钥加速的情况下进行处理。
毫无疑问,我在这方面有点晚了,但是普通的旧 vi(1) --- 常规的遗留 vi --- 工作得很好,有括号匹配和至少一些基本的 s-exp 东西。设置您的 EXRC 以使用
:set ai lisp aw
它不是 SLIME,而是某种东西。
一些商业化的 Lisp 系统(Allegro CL、LispWorks、Corman CL)都带有自己的编辑器。通常可以在特定于平台的键绑定和类似 Emacs 的键绑定之间进行选择。
如果您有 Mac,我会推荐 Aquamacs,它是 GNU-emacs 的初学者友好版本,因此具有 emacs 的所有功能,同时仍提供“标准”复制粘贴、保存和其他功能,包括普通文件对话框和窗口。
有些人说除了 emacs 之外没有什么好的编辑器。我相信你会在这里找到其中的一些(尽管我是 vim 的粉丝)。
vim 宏语言是一种功能强大的宏语言,它可以让您运行外部程序(包括当前编辑缓冲区中的程序)。
但是,如果您习惯使用 Notepad++,您可能会发现迁移到 vim 和迁移到 emacs 一样困难,因此您提出的解决方案可能是最好的解决方案。
试试 McCLIM,newlisp
另一件事 - Notepad++ 支持 LISP 语法着色,但它没有像 emacs 那样的集成 LISP 控制台。是否可以并排打开一个 Notepad++ 窗口和一个命令行窗口,并在我想运行我的程序时使用命令行?
是的!不过,利用 ASD 并在进行更改后重新加载系统。
不要每次都重新启动您的图像。
不过,如果您想要 REPL 集成,请尝试使用 Eclipse/Cusp 或 Limp。