年明けくらいから常用するターミナルエミュレータをGhostty
に切り替えたので、その導入メモ
Ghosttyとは?
- ミッチェル・ハシモト氏による軽量・高機能なターミナルエミュレータ
- クロスプラットフォーム(macOS、Linux)
- 各プラットフォームのGUIの挙動に最適化
- 高い拡張性、シンプルな設定ファイルフォーマット(キーとバリューのペアを記述するだけ)
- シェル統合や、画像の表示など、現代的なターミナルエミュレータで必要とされる機能を網羅
公式サイト
設定ファイル
デフォルトでは下記のパスのファイルを編集する
メニューの「Settings...」を選択すると、このファイルが開かれる
$HOME/Library/Application Support/com.mitchellh.ghostty/config
ただし、下記の設定ファイルの場所もサポートされている
$HOME/.config/ghostty/config
非公式設定サイト
設定できる項目が多いので、非公式の設定ファイル編集ツールで設定可能な項目をチェックすることをお勧めする
主な設定項目
font-family
利用できるフォントは、ghostty +list-fonts
で確認できる、モノスペースフォントのみが対象
指定しない場合は、Jetbrains Mono
が利用される
自分の環境では、ターミナルではちょっとクセのある文字が好みなので、0xProto Nerd Font Mono
を使っている
font-feature
リガチャの設定が効き過ぎているので、必ずfont-feature = -dlig
を設定することをお勧めする
勝手に「ます」が「〼」に変換されて、「文字化けか?」と驚くことになる(「株式会社」を「㍿」に変換するのは、もはや改変では?と思えるし)
デフォルトでリガチャが有効なのは嬉しいけど、ちょっとやり過ぎ感
font-size
モニタとウインドウのサイズに合わせて設定する
theme
ghostty +list-themes
で、非常に分かりやすいプレビュー表示が出てくるので、好みの設定に
最近は、tokyonight
を使っている
cursor-style
、cursor-style-blink
カーソルのスタイルと、ブリンクの設定
mouse-hide-while-typing
キーボードからの入力中に、マウスカーソルを表示するか否か
term
デフォルトでは、xterm-ghostty
が設定されているが、リモートログイン先などでterminfo
が無いことで表示が崩れる場合に明示的に設定する
開発版のncurses
には既にxterm-ghostty
がマージされているが、リリースされて普及するにはまだ時間がかかりそうなので、当面はxterm-256color
などを設定しておくのが良さそう
また、その場合、以下の設定を追加することで、sudo
実行時に環境変数がリセットされ、term=xterm-ghostty
に戻ることを防ぐことができる
shell-integration-features = sudo
window-width
、window-height
初期のカラム数、行数を指定する
フォント周りと、テーマ、カラム数、term
以外はほとんど設定する必要も無さそうな項目が多く、設定ファイルが大きくならないのは良い