Vi系テキストエディタの台頭:LSPとRustが牽引する新たなイノベーションの波

BigGo Editorial Team
Vi系テキストエディタの台頭:LSPとRustが牽引する新たなイノベーションの波

テキストエディタの世界は、この10年間で新しいVi系エディタが次々と登場し、目覚ましい復興を遂げています。最近発表された「 ad 」エディタに象徴されるように、この傾向はモーダル編集の効率性を維持しながら、従来の編集概念を現代化しようとする動きを反映しています。

注目すべき最近の Vi 系エディタ:

  • Kakoune
  • Helix
  • Vis
  • Ki
  • Ad

イノベーションを推進する主要機能:

  • LSP 統合
  • Tree-sitter パーシング
  • モーダル編集の改良
  • 最新のプログラミング言語サポート
  • 強化されたキーバインディングシステム

LSPによる革新

Language Server Protocol( LSP )は、テキストエディタ開発において大きな転換点となりました。コミュニティでの議論が示すように、LSPは現代のプログラミング言語のサポートに関する複雑さを抽象化することで、新しいエディタプロジェクトの参入障壁を大幅に下げました。この開発の民主化は、構文解析のための tree-sitter のようなツールと相まって、新しいエディタの作成を開発者にとってより実現可能な取り組みにしました。

「私の持論ですが、これは LSP のおかげだと考えています。現代のプログラミング言語とプラクティスをサポートする複雑さという、新しいエディタプロジェクトの主要な障壁を取り除いたからです。その複雑さの大部分を言語サーバーに委託し(残りの大部分を tree-sitter に任せる)ことで、新しいエディタの開発がサイドプロジェクトとして実現可能になったのです。」

Rustの影響

これらの新しいエディタの多くが Rust で開発されており、開発者コミュニティにおける広範なトレンドを示唆しています。 Helix 、 Ki 、そして最近の「 ad 」などのエディタの登場は、複雑なテキスト操作ツールの構築において、 Rust の安全性保証とパフォーマンス特性が魅力的な選択肢となっていることを示しています。

Viコンセプトの進化

これらの新しいエディタは Vi のモーダル編集アプローチからインスピレーションを得ていますが、単なるクローンではありません。多くは、従来の Vi のキーバインディングやコンセプトに関する長年の課題に取り組もうとしています。例えば、 Kakoune は Vi のバインディングの一貫性を改善したと評価され、「 ad 」は Vi のモーダル編集と Acme の拡張性アプローチの組み合わせを目指しています。

キーバインディングの議論

コミュニティでは、キーバインディングの規則をめぐって興味深い議論が展開されています。従来の Vi では「y」(yank)や「p」(put)などのニーモニックを使用していましたが、「x」(cut)や「c」(copy)といった現代的な規則を採用すべきだという意見もあります。この議論は、伝統と現代的な使いやすさの期待のバランスをとる課題を浮き彫りにしています。

これらの新しいエディタの普及は、単なる技術革新以上のものを表しています。それは、Vi系エディタを人気にした効率性を維持しながら、ツールを改善し現代化しようとするコミュニティの積極的な取り組みを反映しています。開発ツールが進化し続ける中で、テキスト編集においてさらに創造的なアプローチが登場することが予想されます。

参考:ad :: an adaptable text editor