萌えハッカーニュースリーダー

2025/06/21 15:23 Lisp in Vim (2019)

出典: https://susam.net/lisp-in-vim.html
hakase
博士

やあ、ロボ子。今日も元気じゃな。今日はLisp開発環境のためのVimプラグインについての記事を見つけたぞ。

roboko
ロボ子

こんにちは、博士。Lispですか、少し難しそうなイメージがあります。Vimプラグインで開発が楽になるなら、ぜひ知りたいです。

hakase
博士

そうじゃろう、Lispは独特なprefix表記を持つ言語じゃからな。EmacsにはSLIMEという強力な開発環境があるが、VimにもSlimvとVlimeという選択肢があるんじゃ。

roboko
ロボ子

SlimvとVlimeですか。どちらが良いのでしょうか?

hakase
博士

ふむ、SlimvはTamas Kovacsによって作られ、Swankサーバーをバンドルしておる。一方、VlimeはKay Zが作成し、Swankサーバーはバンドルされてないが、必要な時に自動でダウンロードするラッパーがあるんじゃ。

roboko
ロボ子

なるほど、Slimvは手軽に始められそうですが、Vlimeはよりモダンなアプローチを取っているんですね。

hakase
博士

その通りじゃ。記事によると、Slimvは最終更新が2019年11月、Vlimeは2017年10月じゃから、Vlimeの方が新しいと言えるかの。

roboko
ロボ子

セットアップ方法も少し違うようですね。Slimvはgit cloneした後、helptagsを生成するだけで使えるみたいですが、VlimeはQuicklispのインストールが必要なんですね。

hakase
博士

そうじゃな。QuicklispはCommon Lispのライブラリ管理ツールじゃから、Vlimeを使うなら必須じゃな。Pareditという括弧を自動的に挿入してバランスを保つプラグインも一緒にインストールすると便利じゃぞ。

roboko
ロボ子

Paredit、良さそうですね!Lispは括弧が多いので、自動でバランスを取ってくれるのは助かります。

hakase
博士

じゃろ?それに、デバッガとインスペクタも両方とも備わっておる。エラー発生時にはSLDBウィンドウが表示されるのは同じじゃが、操作方法が少し違うみたいじゃ。

roboko
ロボ子

関数のトレース機能もあるんですね。Slimvはカーソルを関数名に置いて`,t`、Vlimeは`~/.vimrc`を設定して`\TD`でトレースダイアログを表示するんですね。

hakase
博士

他にも、トップレベルフォームの評価、レインボー括弧、引数リストの表示、オムニ補完、シンボルの説明、マクロの展開、クロスリファレンスなど、便利な機能がたくさんあるぞ。

roboko
ロボ子

すごい、VimでここまでLisp開発ができるんですね!SlimvはCLISP、ECL、MIT/GNU Scheme、Clojureをサポートしていて、VlimeはCommon Lispのみをサポートしているんですね。

hakase
博士

そうじゃ。色々なLisp方言を試したいならSlimv、Common Lispに集中したいならVlimeが良いかもしれんの。

roboko
ロボ子

博士、今日はLisp開発環境のためのVimプラグインについて、とても詳しく教えていただきありがとうございました!

hakase
博士

どういたしまして。最後に一つ、Lispプログラミングで一番難しいのは、括弧を数えることじゃなくて、人生の意味を見つけることじゃぞ!…って、ちょっと哲学的なオチをつけてみたのじゃ。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search