Frage

Ich habe mit Lisp und Ausschalten für eine Weile, aber ich fange mehr ernst zu erhalten über einige „echte“ Arbeit in Lisp zu tun. Ich bin ein großer Fan Vim und frage mich, wie ich am produktivsten sein kann für Lisp Entwicklung Vim als mein Editor. Plugins, Arbeitsablauf Vorschläge, etc. sind alle willkommen.

Bitte sagen Sie nicht „Emacs“, wie ich habe gefahren bereits auf Vim und ich bin es wirklich als Redakteur zu genießen.

War es hilfreich?

Lösung

Ziel Limp ein vollwertiges Common Lisp-IDE für Vim zu sein. Der Standardwert ist SBCL, kann aber geändert werden die meisten anderen Implementierungen zu unterstützen, indem sie „sbcl“ für Ihre Lieblings Lisp, in der Datei /usr/local/limp/latest/bin/lisp.sh ersetzen

Wenn Lisp in diesen Tagen diskutieren, ist es allgemein angenommen, von ANSI X3J13 standardisiert Common Lisp, um die Sprache zu sein (siehe der HyperSpec und für ein gutes Lehrbuch rel="noreferrer">) mit Implementierungen wie GNU CLISP, SBCL, CMUCL, AllegroCL und viele andere.

Zurück zu Limp. Es gibt andere Lösungen, die leichtgewichtiger sind, oder versuchen, andere Dinge zu tun, aber ich glaube, eine Umgebung, in der Voraussetzung, dass Sie Dinge wie Klammer Anpassung gibt, Hervorhebungen, Dokumentation Lookup, dh es eine schlüsselfertige Lösung, so viel wie möglich zu machen .

einige der bisherigen Arbeit des SlimVim Projekt finden, nämlich die ECL (Fähiges Common Lisp) Schnittstelle, fusionierte mit späteren Versionen (7.1); Simon hat auch Patches 7.2 zur Verfügung noch aus zusammengefügt werden. Die ECL-Schnittstelle ist dokumentiert in if_ecl.txt .

Kurzfristige Arbeit ist mit 7.2 zu tun, dem Vereinigungs und legt einen Patch vim_dev es in der offiziellen Vim-Sammlung aufgenommen zu bekommen.

Das führt uns zu den langfristigen Pläne: wird Lisp direkt in Vim mit machen es bequem auf einem SWANK Front-End zu arbeiten beginnen (der Teil von SLIME, die in Ihrem Lisp läuft, mit slime.el der Teil ist, dass läuft im Editor -. das Frontend)

Und irgendwo dazwischen, ist es wahrscheinlich, dass alle Limp wird in Common Lisp mit der ECL-Schnittstelle neu geschrieben werden, so dass Limp leichter zu pflegen (VimScript ist nicht mein Favorit) und ist für die Benutzer einfacher zu gestalten.

Die rel="noreferrer"> geht von Zeit zu Zeit, aber wie erwähnt, die < a href = "http://www.vim.org/scripts/script.php?script_id=2219" rel = "noreferrer"> Download unter Vim.org sollte, und die Selbsthilfegruppen immer funktionieren limp-devel und limp-Benutzer mit Google Groups gehostet werden. Zögern Sie nicht beitreten, wenn Sie glauben, Sie brauchen eine Frage beantwortet, oder vielleicht sogar beitreten wollen in auf die Entwicklung. Der größte Teil der Diskussion findet auf der limp-devel Liste. Wenn Sie in die IRC sind, bin ich in #limp auf irc.freenode.net als 'tic'.

Viel Glück!

Andere Tipps

Sie geben könnte slimv eine Pause.

Hier ist ein cooler Diagramm von Xach , die die aktuelle Situation fasst.

Diagramm, das erläutert, dass es fast keine VIM-Benutzer, die auch Lisp Programmierer und können auch hacken es ihm ein gutes Lisp IDE ... lousy alt-Text zu machen :)

SLIME für Emacs ist ein wunderbares Werkzeug für Lisp-Programmierung. Der beste Teil ist, Code sendet im Editor direkt auf eine Live-Lisp-Sitzung geschrieben. Sie können ein ähnliches Verhalten von Vim erhalten die Spitzen mit hier:

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

Ich stellte mein eigenes Skript so, dass ich entweder zu einem SBCL oder Clojure Sitzung. Es macht Sie viel produktiver und nutzt die REPL.

": set Lispeln" startet die Lisp Einrückungsmodus für Vim. Aber es wird nicht mit einigen Dialekten wie Clojure arbeiten. Für Clojure verwenden VimClojure .

Einige Leute mögen LIMP auch.

: set Lisp

Vim hat einen Modus, den Sie einrücken Code von Lisp-Standards zu helfen.

Auch ich die lispwords ändern, wie vim Einzüge Code geändert werden.

: setl LW-= if (in ~ / .vim / ftplugin / lisp.vim)

  • Vim-Add-ons: Regenbogen Runde Klammern, Lisp-Syntax
  • SBCL Add-ons: rlwrap, sb-aclrepl
  • Workflow: Ion3 (oder eine andere Fliesen WM) mit mehreren Terminal-Fenster

    .
    • Bearbeiten Lisp in Vim
    • Wechseln Sie in Lisp-Fenster (die Tastatur natürlich mit)
    • Verwenden Sie die C-r die Linie erinnern an die ASDF System in Frage, damit Ihre Änderungen wirksam werden neu zu laden.
    • Verwenden Sie X-Window-copy / paste für kleine Schnipsel / Änderungen.
    • Verwenden Sie DESCRIBE, TRACE und APROPOS stark.
    • Wiederholen.

Sie Emacs mit Vim-Emulation einen Versuch geben kann, ist nicht perfekt, aber es kann ein wenig vertraut sein. Ich denke, Lisp scheint, wenn Sie so etwas wie Slime oder DrScheme tun iterative Entwicklung verwenden, werden alle anderen Editoren einfach falsch fühlen.

Hier sind wir 9 Jahre später, und jetzt haben wir Vim 8 und Neovim, sowohl die Möglichkeit bietet, asynchron mit Plugins interagieren können.

vlime ist eine ausgezeichnete, feature-rich-Plugin, das die Vorteile der neuen Asynchron-Schnittstelle nimmt zu schaffen eine schleimartige dev Umgebung für Common Lisp.

Ich weiß, Sie sagen nicht zu sagen, Emacs zu verwenden.

Mit Emacs.

Ernst, der SLIME für Emacs-Setup ist so ziemlich die Standard-Entwicklungsplattform für Lisp, und für sehr guten Grund.

Es scheint schon versucht zu haben, um eine schleimartige Integration von Lisp in Vim zu haben, aber keiner hat wirklich so weit wie nötig, um wirklich nützlich gegangen. Ich denke, ECL die Integration getan wurde, obwohl, aber nicht stromaufwärts begangen.

Sie sollten alle relevanten Links finden von Cliki Seite über Vim .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top