エディタは思考のように動くべき——Rust製ターミナルエディタ「txt」
Txt: A fast, keyboard-driven terminal text editor for engineers
ターミナルで使うエディタは、モーダル操作の学習やプラグイン設定に手間がかかるか、機能が貧弱かのどちらかだった。開発者のErik Hellman氏が作った「txt」は、開いた瞬間からキー操作が予測可能で、設定不要。tree-sitterによるシンタックスハイライトやコード折りたたみ、LSP、Git連携、マルチカーソル、キーボードマクロまで備え、IDEの代替ではなく「ちょっと編集したい」場面に応える。Rust製でHomebrewやcurlからインストールできる。
編集は思考のように感じられるべきだ。エディタは即座に開き、キーストロークは予測可能で発見しやすく、カーソルは期待した場所に正確に着地する。
HNでの議論
34- zero_shift
Claudeを使ってこれを開発したことを批判するつもりはない。正直、消費者としての自分にとっては、ソフトウェアが高品質であれば中立なことだ。
ただ一つ聞きたいのはこれだ:自分で生成できるのに、なぜ君のソフトウェアを使う必要があるんだ?
比較的低コストのトークンで、CursorとFable 5.1を使って、高品質な依存関係に限定すれば、自分用のまともなテキストエディタを生成できる。
つまりこれがOSS開発の本当のジレンマなんだよな:開発者向けのツールを作ることに、今さら意味はあるのか?
- _ix
キーボード駆動の機能を強調しているくせに、デモのgifではポインタ駆動のワークフローを見せている。不思議な選択だよね?
- __fst__
Vimを学ぶ面倒を経験してからは、もう他のものは使えない。
そして、
「ターミナルでほとんどの時間を過ごすからtxtを作った。ちょっとした編集のために別のツールに切り替えるのは、いつも避けたい摩擦に感じられた。ターミナルで動くエディタは、モーダルパラダイムに基づいた急峻な学習曲線があるか、本気で使うにはあまりに制限されているかのどちらかだ。」
というユースケースに対しては、必要なVimのコマンドとショートカットは文字通りほんの一握りだ。
- sgarland
> ターミナルで動くエディタは、モーダルパラダイムに基づいた急峻な学習曲線があるか、本気で使うにはあまりに制限されているかのどちらかだ。
> txtはメインのIDEを置き換えようとしているわけではない。ただ何かを編集したいときに手に取るエディタだ
この二つは矛盾している。ただ何かを編集したいだけで、[n]vi[m]やemacsを知らないなら、nanoを使えばいい。行番号、コード折りたたみ、シンタックスハイライトなどが欲しいなら、もっと強力なエディタを学ぶ時間を取るべきだろう。
正直、viの絶対的な基本を学ぶのはそれほど難しくないし、15分費やすべきだ。なぜなら、どこにでもほぼ確実に使えるからだ。「ただ何かを編集する」のに必要なのは、:wqとiくらいだ。
- rckt
スタートアップがアイデアを試すためにAIツールに頼るのは理解できる。でも個人や趣味のプロジェクト? 違和感がある。ここは速く進む場所じゃない。時間をかけて、プロセスを楽しんで、学んだり作ったりしよう。