高速多機能なターミナルエミュレータ「Ghostty 1.0」正式リリース、ミッチェル・ハシモト氏が開発。今後はWebAssembly化による対応プラットフォーム拡大も
HashiCorpの創業者の一人であるミッチェル・ハシモト氏は、個人のプロジェクトとして開発してきたターミナルエミュレータ「Ghostty」の正式リリースとなるバージョン1.0を公開しました(本記事公開時点でバージョン1.0.1が最新バージョン)。
合わせてオープンソースとしてGitHubでソースコードも公開されました。
https://t.co/39Xj39wheA pic.twitter.com/PH0qejFB4z
— Mitchell Hashimoto (@mitchellh) December 26, 2024
ハシモト氏は2023年12月にHashiCorpを退職していますが、以前から個人のプロジェクトとしてターミナルエミュレータの開発をしていることをX/Twitterなどで発信していました。今回それが正式版となったわけです。
参考:ミッチェル・ハシモト氏の個人開発によるターミナルエミュレータ「Ghostty 1.0」、12月に正式リリース予定。オープンソースとして公開へ
Ghostty:高速で多機能なターミナルエミュレータ
GhosttyはmacとLinuxに対応した、高速で機能豊富、それぞれのOSネイティブなUIを備えたターミナルエミュレーターです。
ハシモト氏はGhosttyを、標準に完全に準拠したターミナルエミュレータにすることを目指したとしており、既存のすべてのシェルやソフトウェアとの互換性を維持しながら、最新のターミナルエミュレータにおけるイノベーションをすべてサポートすると説明しています。
高速性では、Ghosttyの大半がZig言語で記述されており、テキストの入出力、エスケープシーケンスの処理、レンダリング、入力のレイテンシなどで高い性能を実現するとのこと。日本語テキストのような複雑なフォントが入り交じるファイルをcatコマンドで表示させる場合でも非常に高速に表示されるとしています。
機能面では、他のどの端末エミュレータよりも多くのxtermエスケープシーケンスをサポートしているだけでなく、スタイル付きアンダーライン、Kitty キーボードプロトコル、グラフィックプロトコル、ライト/ダーク モード通知、ハイパーリンクなど、最新のターミナル仕様のほとんどすべてをサポートしているとのこと。これによりNeovimやZellijなどのターミナルアプリケーションでより多くの機能が使えるとしています。
ネイティブUIとしては、macOSではGUIがSwiftで記述され、AppKitとSwiftUIを使用。Quick Look、フォースタッチ、セキュア入力API、システムのダークテーマ、ライトテーマの切り替え、再起動時の組み込みウィンドウ状態回復などを含むネイティブなUIをサポート。LinuxではGUIはZigで記述され、GTK4 C APIを使用しています。
ライブラリ化とWebAssembly化も視野に
GhosttyではUI部分とターミナルのコア機能の実装が分けられており、コア部分は将来的に「libghostty」としてさまざまなアプリケーションにターミナルエミュレータ機能を簡単に組み込めるライブラリとして提供される方針も明らかにされています。
さらにこのlibghosttyはmacOSとLinuxだけでなく、WebAssembly化によるサポートプラットフォームの拡大も目論んでいると説明されています。
あわせて読みたい
2025年に注目すべき11のIT戦略テーマ、調査会社ITRが発表「ITR注目トレンド2025」
≪前の記事
PublickeyのIT業界予想2025。AIはプロンプトからエージェントへ、ソブリンクラウドに注目、RDBはスケーラブルが基本になるなど