エディタは思考のように動くべき——Rust製ターミナルエディタ「txt」
Txt: A fast, keyboard-driven terminal text editor for engineers
ターミナルで使うエディタは、モーダル操作の学習やプラグイン設定に手間がかかるか、機能が貧弱かのどちらかだった。開発者のErik Hellman氏が作った「txt」は、開いた瞬間からキー操作が予測可能で、設定不要。tree-sitterによるシンタックスハイライトやコード折りたたみ、LSP、Git連携、マルチカーソル、キーボードマクロまで備え、IDEの代替ではなく「ちょっと編集したい」場面に応える。Rust製でHomebrewやcurlからインストールできる。
編集は思考のように感じられるべきだ。エディタは即座に開き、キーストロークは予測可能で発見しやすく、カーソルは期待した場所に正確に着地する。
HNでの議論
27- eviks
> GUIエディタは逆の問題だ——強力だけど、設定ファイルを編集したりタイポを直したりするのにマウスに手を伸ばすとフローが途切れる。
マウスに手を伸ばす必要なんてないだろ、アプリを起動したり切り替えたりタイプしたり、全部キーボードだけでできるって知らないのか?
それに、売りが完全にアンチマウスなのに、なんでデモではマウスを使ってるんだ?
- sgarland
> ターミナル上で動くエディタは、モーダルパラダイムを軸にした急な学習曲線を持つか、あるいは本気で使うには制限が多すぎるかのどちらかだ。
> txtはメインのIDEを置き換えようとしているわけではない。ちょっと何かを編集したいときに手に取るエディタだ
この2つは矛盾している。ちょっと何かを編集したいだけで、[n]vi[m]もemacsも知らないなら、nanoを使えばいい。行番号やコード折りたたみ、シンタックスハイライトなどが欲しいなら、もっと強力なエディタを学ぶ時間を取るべきだということになる。
正直なところ、viは最低限の基本を覚えるのはそんなに難しくないし、15分くらいかけて覚えるべきだ。なぜなら、ほぼどこにでも確実に存在するからだ。:wqとiさえあれば、「ちょっと何かを編集する」には事足りる。
- _ix
キーボード駆動の機能を強調しているくせに、デモのgifではポインタ駆動のワークフローを見せている。面白い選択だよな?