【问题标题】:Are there any good editors for Lisp programming, other than Emacs? [closed]除了 Emacs 之外,还有其他适合 Lisp 编程的编辑器吗? [关闭]
【发布时间】:2008-11-12 03:13:44
【问题描述】:

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

基本上,我不想为了使用 emacs 而重新学习所有熟悉的快捷方式。

谁能推荐合适的编辑器?

另一件事 - Notepad++ 支持 LISP 语法着色,但它没有像 emacs 那样的集成 LISP 控制台。是否可以同时打开一个 Notepad++ 窗口和一个命令行窗口,并在我想运行我的程序时使用命令行?

【问题讨论】:

  • 也许一个更有趣的问题是“你为什么要首先使用 Emacs?”如果您确实决定使用它,您可以配置键盘命令以按照您的意愿工作。
  • 我怀疑,因为它很大程度上基于 LISP,所以它对语言结构(语法着色等)了解很多。

标签: emacs text editor lisp notepad++


【解决方案1】:

首先,方向键在 Emacs 上应该可以正常工作。 (Emacs 的顽固分子会告诉你 Ctrl-f/b/p/n 更可取,但你不必听他们的。)如果默认情况下它们不起作用,则说明有问题。

Emacs 的最新版本带有 cua-mode,这将使所有其他常用快捷键(如用于剪切复制粘贴的 Ctrl-x/c/v、用于选择的 shift-arrows 等)也能正常工作。如果默认情况下它们不起作用,请输入“M-x(大多数键盘上的 Alt-x)cua-mode”。

一般来说,如果你想要一个特定的按键来调用某个函数,然后输入 M-x global-set-key [hit Return] [hit the keystroke] [type name of function],例如M-x global-set-key RET [点击向下箭头] 下一行 RET。

Emacs 是由 Lisp 程序员为 Lisp 开发的,它是 Lisp 最好的编辑器,仅仅因为几十年来一直是标准的 Lisp 编辑器,并且每个改进的想法都得到了实施。

【讨论】:

    【解决方案2】:

    使用DrScheme。它具有您可能期望的所有标准键绑定。 Here 是我使用它的笔记。是的,它是为 Scheme 构建的,但也许它对你很有效。

    【讨论】:

      【解决方案3】:

      试试LispIDE。这有点初级,但可能会对您有所改善。

      【讨论】:

      • 太棒了!比使用 Emacs IMO 好得多。
      • 我更喜欢 Notepad++ 和 Sublime,因为它支持自动缩进。
      【解决方案4】:

      您想要使用的不仅仅是 emacs,它也是 SLIME。 SLIME 会让你连接到 Lisp REPL(运行 Swank 后端)。您可以连接到服务器进程并开始与之交互。 Take a look at the SLIME homepage

      【讨论】:

        【解决方案5】:

        Zeus 程序员编辑器有一个可配置的语法高亮显示,因此应该可以将其配置为 Lisp 高亮显示。

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

        已编辑: 作为回应 Luís Oliveira cmets:他正在寻找 Lisp IDE。

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

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

        【讨论】:

        • OP 不是在寻找语法高亮,这很容易。他正在寻找一个 Lisp IDE。
        • 他还说“Notepad++ 支持 LISP 语法着色,但它没有像 emacs 那样的集成 LISP 控制台。”叫什么名字?
        • 没有连接到 REPL 的 Lisp IDE 有点没有意义。
        【解决方案6】:

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

        具有 paredit 模式的 Emacs 只是 拥有 用于 s 表达式的结构化编辑。再加上高亮括号模式,它会变得更好。

        使用 emacs 的一点是,编辑器扩展语言是 lisp,所以它是学习 lisp 的好方法。

        【讨论】:

          【解决方案7】:

          看看这个问题

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

          它提到的一件事是CUSP,它在 Eclipse 中运行。

          另外,如果你在做Scheme(你没有说你指的是哪个Lisp),我支持DrScheme的推荐。

          【讨论】:

          • 非常相似。大多数人说 LISP 时指的是 Scheme。
          • Scheme 是一种 Lisp 方言,强调函数式编程。
          • Scheme 是一种 Lisp 方言。它非常适合函数式编程,但它与方法无关。
          • 即使 Logo 也是 Lisp,但没有人在 Emacs 中编辑 Logo...
          【解决方案8】:

          我怀疑几乎所有编写 LISP 程序的人都会使用 emacs。如果你不得不与真正的 LISP 程序员一起工作,你可能会让自己处于不利地位。

          此外,优秀的程序员不应该被任何一个编辑器束缚。学会在没有基于 Windows 的密钥加速的情况下进行处理。

          【讨论】:

          • 不,现在绝对不是“几乎没有人”将 Emacs 用于 Common Lisp。在与“真正的 Lisp 程序员”[为了现代性而改变外壳] 合作时,既不会让自己处于劣势,正如我作为与 Emacs 用户一起工作的 Vim Lisper 的亲身经历所言。
          【解决方案9】:

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

          【讨论】:

            【解决方案10】:

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

            :set ai lisp aw
            

            这不是 SLIME,而是某种东西。

            【讨论】:

            • 是的,你也可以使用 vim :set sm
            【解决方案11】:

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

            【讨论】:

              【解决方案12】:

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

              【讨论】:

                【解决方案13】:

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

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

                但是,如果您习惯了 Notepad++,您可能会发现迁移到 vim 和迁移到 emacs 一样困难,所以您提出的解决方案可能是最好的解决方案。

                【讨论】:

                  【解决方案14】:

                  试试 McCLIM,newlisp

                  http://www.cliki.net/IDE

                  【讨论】:

                    【解决方案15】:

                    另一件事 - Notepad++ 支持 LISP 语法着色,但它没有 有一个集成的 LISP 控制台,例如 emacs 可以。可以吗 有一个 Notepad++ 窗口和一个命令 行窗口打开,并排,并且 随时使用命令行 运行我的程序?

                    是的!不过,利用 ASD 并在进行更改后重新加载系统。

                    不要每次都重启你的图片。

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

                    【讨论】:

                      【解决方案16】:

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

                      如果你是 Mac OS X 用户,更精致的是Aquamacs

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

                      两者都是 FOSS 并且免费下载。

                      【讨论】:

                        猜你喜欢
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2019-12-20
                        • 2012-06-04
                        • 2015-12-08
                        • 1970-01-01
                        • 2023-02-09
                        • 2019-12-07
                        相关资源
                        最近更新 更多