プログラムというものを書き始めて以来、なかなか手に合うテキストエディタがなくてずっと悶々としていました。 MS-DOSの時代の VZ Editor から始まって、およそみなさんが目にしたテキストエディタは、僕も一度は触っているはずです。 今では VSCode や Zed などの統合開発環境(IDE)+AIというアプリケーションがハバをきかせていますね。 でも、使いたいのはテキストエディタなんです。思うままにショートカットキーを割り当てて、ソースコードを編集するためのツールです。 これが、なかなかしっくりくるようなエディタがなかったんですよ。今までは。
時代は変わって、今やAIがコーディングをしてくれる世の中になりました。 そこで、AIに自分仕様のエディタを書いてくれるようお願いして生まれたのが fern です。 せっかくAIにお願いするのであれば… と、最近気になっている Rust でコーディングしてもらうことにしました。 Rust には eframe::egui というエディタの基本部分となる部品(crate)がすでにあるので、これを元に機能を付け足していくような形で開発を進めました。
VSCode や Zed などのような統合開発環境ではありません。 編集コマンドも少ないですし、なんだか妙な動きをするコマンドもあります。 それでも、これまで触ってきたどのテキストエディタよりも僕の手にはしっくりきています。
ショートカットキーの割り当てはなるべく自由に変更できるようにしたかったのですが、egui で割り当てられているキーはそのまま使っていたりします。 UI周りも最初の設計ミスでちょっとブサイクなところもあるので、 また気が向いたときには、コードの整理も兼ねて再設計&再開発したいと思っています。