LoginSignup
43
42

AI搭載Rust製ターミナルWarpを使ってみた

Last updated at Posted at 2024-02-04

Warpとは

Rust製のTerminal代替アプリ。現状、Macのみ対応となる。(Windows, Linuxは対応中)
軽くて、高速。そして、AIが搭載されている。個人利用/5人以下のチームの場合は、無料で使用可能。

Warpの特徴

Warp AI

Warp内で簡単に生成AIを使用することができる。
プロンプト入力時に#を入力すると使用できる。

image.png

カスタマイズが楽

いちいちスクリプトを触らんなくても、設定で見た目のカスタマイズができる。
テーマやフォントもデフォルトで複数入っている。

image.png

補完機能が優秀

ディレクトリ名などの補完機能はもちろん、git pushした後にPRの作成画面をopenするコマンドまで予測してくれるのが、便利すぎる。

Warp Drive

Warp Drive は、コマンドをワークフローとして安全に保存および共有できる機能。
以下のようによく使うコマンドをワークフローとして登録できる。(個人的にはあんまり使ってない)

image.png

使い方

インストール

brewでインストールする。

brew install --cask warp

ダウンロードできたら、アプリを起動してサインアップする。

アップデート

アップデートは、上に通知がくるので、それをクリックするだけで、アップデートができる。

スクリーンショット 2024-02-02 10.03.49.png

テーマ

settings > appearance > Themesでテーマを変えられる。
もしくは、cmd+control+T でテーマの変更ができる。

カスタムテーマ

自分の画像から自動作成する

cmd+control+Tから以下の左上の+を押すと、

image.png

好きな写真を選択すると、

image.png

bgグラウンドカラーとテーマ名を変更するだけで独自のカスタムテーマを作成できる。

Yamlで独自のカスタムテーマを作成する

$ mkdir -p ~/.warp/themes/
$ cp ~/Downloads/sample_theme.yaml ~/.warp/themes/

warpに反映されるまで少々時間がかかるらしい

sample_theme.yml
accent: '#268bd2' # WarpのUIハイライトの色
background: '#002b36' # 背景色
details: darker # ライトカラーかダークカラーか
foreground: '#839496' # foregroundの色
terminal_colors: # ANSIエスケープシーケンス
  bright:
    black: '#002b36'
    blue: '#839496'
    cyan: '#93a1a1'
    green: '#586e75'
    magenta: '#6c71c4'
    red: '#cb4b16'
    white: '#fdf6e3'
    yellow: '#657b83'
  normal:
    black: '#073642'
    blue: '#268bd2'
    cyan: '#2aa198'
    green: '#859900'
    magenta: '#d33682'
    red: '#dc322f'
    white: '#eee8d5'
    yellow: '#b58900'

以下のサイトはterminalのrgbカラーを作成するツールである。

先ほどのyamlファイルに以下を追記すると背景画像の設定や透過ができるようになる。

現状jpg形式しか対応していない

sample_theme.yml
############################################################### SEE BELOW
background_image:
  # 背景画像のパスの設定(jpgのみ)
  path: warp.jpg
  # 背景の透過率の設定
  opacity: 60
############################################################### SEE ABOVE

accentにグラデーションカラーを使用する場合は以下のようにすると、上から下にグラデーションになる。

sample-theme.yml
accent:
  top: '#abcdef'
  bottom: '#fedcba'

また、横にグラデーションをかけることもできる。

sample-theme.yml
accent:
   left: '#abcdef'
   right: '#fedcba'

背景のグラデーションは以下のようにする。

sample-theme.yml
background:
  top: '#474747'
  bottom: '#ffffff'

様々なテーマのyamlファイルは以下のリポジトリに載っている。

カスタムプロンプト

WarpにはWarp promptShell promptの2つのプロンプトを選択できる。
Settings > Appearance > Promptで選択できる。

image.png

Warp prompt

Warp promptを使うとドラッグだけで簡単にプロンプトを設定できる。
gitのブランチなど表示させたいが、色などに特にこだわりがない場合はこちらがオススメ。

image.png

Shell prompt

shell promptとは 環境変数PS1で定義されたプロンプトである。
以下の場合はshell promptを使う。

  • 他のTerminalと設定を統一したいとき
  • よりプロンプトをカスタムしたいとき
  • StarshipOh My Zsh

Warpの唯一の欠点なのだが、shell promptを使用して、純正のterminalで以下のようなプロンプトが表示されているとき、

~/workspace $ echo "abcd"

Warpでは、以下のようになぜか改行が入ってしまう問題がある。

~/workspace $
echo "abcd"

現在、以下のissueで対応中である。
Prompt in one line

フォント

Settings > Appearance > Textで変更できる。
デフォルトで複数のフォントが入っている。個人的にオススメのフォントは Hack
フォントの指定だけでなく、行間やフォントサイズの指定も可能。

image.png

また、Macで使えるフォントがあれば、検知して選択できるようになる。

例えば、NerdFontsであれば、以下のようにbrewでダウンロードするだけで、Warpで使えるようになる。

brew tap homebrew/cask-fonts
brew install --cask {フォント名}

カーソル

Settings > Appearance > Cusorでカーソルを点滅させるかどうかを設定できる。

image.png

入力位置の指定

Settings > Appearance > Inputで変更できる。

  • Pin to the bottom (Warp default mode) : 一番下に固定する
  • Start at the top (Classic mode) : 最初だけ一番上で、コマンドを叩くごとに下に行く(標準のTerminalと同じ)
  • Pin to the top (Reverse mode) : 一番上に固定する

image.png

コマンドパレット

cmd + pでコマンドパレットが開く

image.png

おわりに

WindowsやLinuxの方やもっとカスタマイズをしたい人は 同じくRust製の WezTermがおすすめです。

43
42
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
43
42