emahiro/b.log

日々の勉強の記録とか育児の記録とか。

次世代ターミナル「Warp」を試したらとても便利だった

Overview

最近 Warp というターミナルエミュレーターを使い始めてみて、これがとても便利だったのでその紹介エントリです。

ちなみにこのターミナルエミュレーターを知ったのは以下のツイートです。

Warp とは

21 世紀のターミナルというなかなか大胆なキャッチフレーズを使っているターミナルエミュレーターです。

www.warp.dev

なお、個人利用であれば現時点では「無料」です。

www.warp.dev

GitHub で keyset や theme も公開されていますし、Document も公開されているので基本的な使い方に迷うことはありません。
Wezterm というターミナルエミュレーターも試したことがありますが、最近のターミナルエミュレーター系のツールはドキュメントがちゃんと揃えてあっていいですね。

github.com

docs.warp.dev

便利だったポイント

まだ使い始めたばかりですべてわかってるわけではないですが以下の3つの点は非常に便利です。

  • Fig を使っていたときのような引数の Suggestion があること(特にブランチ移動したいときに git branch + tab で local のブランチを補完してくれるのは役に立ちます。)
  • コマンドの実行結果の区画をそのまま Clipboard にコピーできること。あるコマンドの実行結果部分を Drag & Drop しなくて良くなります。
  • 生成AI系機能。
    • Warp AI という機能があって、今からどんなコマンドを実行したいのか、ということを説明するとそれを実行するためにコマンドを教えてくれます。ChatGPT がターミナルに組み込まれているようなものです。また、実行したコマンドがちょっと間違っていた( git を typo して gti と叩いてしまう、みたいなやつ)場合に、「このコマンドを叩きたかった?」ということを Suggestion してくれます。

追加でこれは個人の使い方に依存する部分ですが、VSCode とのインテグレーションがあります。
詳しくは以下の動画を見てほしいのですが、例えば Go のテストコマンドを実行したときに、失敗したり、エラーが発生したファイル+行数の表示がスタックトレース等に表示されたときに、予め VSCode と連携しておくと、そのファイル名をクリックするだけで VSCode を立ち上げて(すでに立ち上がっている場合には VSCode のウィンドウがアクティブになり)、該当のファイルが Open されます。これは iTerm でも Wezterm デモできなかったことで、VSCode 組み込みのターミナルのみで実現できたことでした。
独立したターミナルエミュレーターからこのアクションが実行されるというのは、普段 VSCode を利用しているユーザーとしては非常に嬉しい機能です。

www.warp.dev

そもそも Warp を使い始めた理由

自分のターミナルエミュレーター遍歴は、

純正 -> iTerm2 -> iTerm2+Fig -> Wezterm

というものなのですが、iTerm の起動が遅くなり、最近話題だった Rust 製のターミナルエミュレーターとしてドキュメントも充実していた Wezterm を使い始めており一定満足していたのですが、Fig を使っていた頃の自動でコマンドを保管してくれる UX の再現を諦めていたので、それを再現したいと思っていたところ、Warp だと iTerm2+Fig を使っていたときに近いものが得られました。

ただ、Fig を使っているとただでさえ重たい iTerm が更に重たくなったことと、Fig のような追加ツールを入れるのが後々のPC設定のポータビリティ性を考えると面倒くさいなと思ったので外してました。(それでも基本的なコマンドしかいつも使わないので困ることはなかったのですが。)

また、各種シェルスクリプトのコマンドの option 等々を覚えるのが苦手だったのもあり、Warp に実装されてる「やりたいことを説明するとコマンドを生成して提案してくれる、いわゆる生成系的な振る舞い」が思いの外便利ということにも気づきました。引数の option とか毎回ググってますからね。。。
生成系AI、本当にエンジニアリングの作業効率に寄与しすぎててすごいです(語彙力)

まとめ

まだ使い始めたばかりですが、特段凝った設定なしにかなり自分のやりたいことができますし、何よりブラウザでググらずとも良い、という体験が一層自分のターミナル体験を良くしてくれている実感があります。
使いながら色々探してみたいと思います。