Mozillaが支援し、C/C++言語の置き換えを目指して開発が進められているシステムログラミング言語「Rust」。高速性を生かして、Linuxカーネル開発などへの活用も期待されています。
このRustを使って作成された開発環境「Lapce」がGitHubで公開されています。
UIはRust製のDruidで書かれ、Xi-EditorのRope Scienceによって設計され、レンダリングにはOpenGLを利用しています。
以下のような特徴を持っています。
- 超高速: RustのGPUアクセラレーションによるネイティブGUI。エディタ起動時の待ち時間がなく、キーストロークの遅れはバグとして扱われて修正される。
- リモート開発: リモートマシンにシームレスに接続し、「ローカル」な感覚で開発可能。本番サーバーと同じ環境で確認したり、リモートマシンの性能をフルに活用したりすることができる。
- シンタックスハイライト: Tree-sitterを使ったコード構文のハイライトは、正規表現に基づくハイライトよりもはるかに高速で優れている。また、組み込みのLSPサポートにより、コード補完、診断、コードアクションなどのコードインテリジェンスを提供する。
- Vim風のモーダル編集: プラグインを使わずにVimのような編集体験をするためのサポートが組み込まれている。
- WASIプラグインシステム: WASIにコンパイルできるプログラミング言語であれば、Lapceのプラグインを書くことができる。新しい言語を学ぶことなくプラグインを作成可能。
- 組み込みターミナル: Lapce内部でターミナルを起動可能。
現在まだプレα段階とのことですが、GitHubで多くのスターを集めている注目のプロジェクトです。以下使用方法を説明します。
Lapceの使用方法
macOS用の実行ファイルは公式サイトの「Download for macOS」ボタンをクリックしてダウンロードすることができます。Lapce-macos.dmgファイルをダウンロードし、中に含まれる「Lapce.app」をアプリケーションフォルダにコピーします。
もしくはHomebrewを使ってインストールすることもできます。
brew install lapce
Lapce.appを実行すると以下のような画面が表示されます。
▲メニューやアイコンは今のところあまり充実していませんが、コマンドパレットやショートカットキーを使って操作することができます。
▲F1キーを押すとコマンドパレットが表示されます。「Open Folder」で開発対象のプロジェクトフォルダを開くことができます。「Open file」でファイルを開くことができます。
試しにgit clone
したLapceのプロジェクトフォルダを開いてみます。
▲Rustで書かれたソースファイルがシンタックスハイライト付きで表示されている事がわかります。画面下のアイコンをクリックすることでメイン画面のレイアウトを変更することができます。左がファイル一覧、右上がファイル編集画面、右下がターミナルです。
▲右上の歯車アイコンをクリックし「Open Settings」を選ぶと設定画面を表示することができます。UIや編集機能、ターミナル、ターミナル、キーバインドなどの設定をカスタマイズすることができます。
Lapceの具体的な使用方法、設定方法は公式ドキュメントで確認可能です。
まとめ
LapceはRustで書かれた高速IDEです。現在のところこのタイプのIDE/エディタとしては「Visual Studio Code」が圧倒的に人気を集めていますが、Lapceがライバルとなれるか注目を集めそうです。