Overview
最近 Warp というターミナルエミュレーターを使い始めてみて、これがとても便利だったのでその紹介エントリです。
ちなみにこのターミナルエミュレーターを知ったのは以下のツイートです。
Introducing: @sequoia's latest market map!
— Charlie Curnin (@charliecurnin) 2023年3月23日
AI is rewriting what software can do. AI is also rewriting how software is made.
Maybe Copilot is just the start. What else can AI do for developers? What about devops engineers? pic.twitter.com/ZOoIsnUpBV
Warp とは
21 世紀のターミナルというなかなか大胆なキャッチフレーズを使っているターミナルエミュレーターです。
なお、個人利用であれば現時点では「無料」です。
GitHub で keyset や theme も公開されていますし、Document も公開されているので基本的な使い方に迷うことはありません。
Wezterm というターミナルエミュレーターも試したことがありますが、最近のターミナルエミュレーター系のツールはドキュメントがちゃんと揃えてあっていいですね。
便利だったポイント
まだ使い始めたばかりですべてわかってるわけではないですが以下の3つの点は非常に便利です。
- Fig を使っていたときのような引数の Suggestion があること(特にブランチ移動したいときに git branch + tab で local のブランチを補完してくれるのは役に立ちます。)
- コマンドの実行結果の区画をそのまま Clipboard にコピーできること。あるコマンドの実行結果部分を Drag & Drop しなくて良くなります。
- 生成AI系機能。
追加でこれは個人の使い方に依存する部分ですが、VSCode とのインテグレーションがあります。
詳しくは以下の動画を見てほしいのですが、例えば Go のテストコマンドを実行したときに、失敗したり、エラーが発生したファイル+行数の表示がスタックトレース等に表示されたときに、予め VSCode と連携しておくと、そのファイル名をクリックするだけで VSCode を立ち上げて(すでに立ち上がっている場合には VSCode のウィンドウがアクティブになり)、該当のファイルが Open されます。これは iTerm でも Wezterm デモできなかったことで、VSCode 組み込みのターミナルのみで実現できたことでした。
独立したターミナルエミュレーターからこのアクションが実行されるというのは、普段 VSCode を利用しているユーザーとしては非常に嬉しい機能です。
そもそも Warp を使い始めた理由
自分のターミナルエミュレーター遍歴は、
純正 -> iTerm2 -> iTerm2+Fig -> Wezterm
というものなのですが、iTerm の起動が遅くなり、最近話題だった Rust 製のターミナルエミュレーターとしてドキュメントも充実していた Wezterm を使い始めており一定満足していたのですが、Fig を使っていた頃の自動でコマンドを保管してくれる UX の再現を諦めていたので、それを再現したいと思っていたところ、Warp だと iTerm2+Fig を使っていたときに近いものが得られました。
ただ、Fig を使っているとただでさえ重たい iTerm が更に重たくなったことと、Fig のような追加ツールを入れるのが後々のPC設定のポータビリティ性を考えると面倒くさいなと思ったので外してました。(それでも基本的なコマンドしかいつも使わないので困ることはなかったのですが。)
また、各種シェルスクリプトのコマンドの option 等々を覚えるのが苦手だったのもあり、Warp に実装されてる「やりたいことを説明するとコマンドを生成して提案してくれる、いわゆる生成系的な振る舞い」が思いの外便利ということにも気づきました。引数の option とか毎回ググってますからね。。。
生成系AI、本当にエンジニアリングの作業効率に寄与しすぎててすごいです(語彙力)
まとめ
まだ使い始めたばかりですが、特段凝った設定なしにかなり自分のやりたいことができますし、何よりブラウザでググらずとも良い、という体験が一層自分のターミナル体験を良くしてくれている実感があります。
使いながら色々探してみたいと思います。