Kitty(ターミナル)

Kittyとは

Kitty(キティ)は、PythonとCで開発されたGPUアクセラレーション対応の高速なターミナルエミュレータです。
タブやスプリットビュー(画面分割)機能を標準で備え、tmuxなしでも多くのウィンドウを効率的に管理できるのが特徴です。

Kittyの特徴

Kittyは、以下のような特徴を持つターミナルエミュレータです。

  • GPUアクセラレーション: 高速なレンダリングとスムーズなスクロールを実現。
  • タブ & スプリットビュー: 1つのウィンドウ内で複数のターミナルを整理して管理可能。
  • リモートコントロール機能: 他のKittyインスタンスと連携して操作可能。
  • カスタマイズ性が高い: フォント、配色、キーバインドなどを自由に設定可能。
  • 軽量で高速: PythonとCで開発され、動作が軽快。
  • クロスプラットフォーム対応: LinuxおよびmacOSで動作可能(WindowsはWSLを通じて利用可能)。

Kittyの基本的な操作

1. Kittyの起動

  • 以下のコマンドを実行してKittyを起動できます。
kitty
  • Alt + F2 を押して「kitty」と入力
  • 「アプリケーションメニュー」→「システム」→「Kitty」

2. ウィンドウ管理

  • Ctrl + Shift + Enter: 新しいKittyウィンドウを開く
  • Ctrl + Shift + W: ウィンドウを閉じる

3. タブ管理

  • Ctrl + Shift + T: 新しいタブを開く
  • Ctrl + Shift + >: 次のタブへ移動
  • Ctrl + Shift + <: 前のタブへ移動

4. スプリットビュー(画面分割)

  • Ctrl + Shift + D: 水平方向に分割
  • Ctrl + Shift + S: 垂直方向に分割
  • Ctrl + Shift + ↑: 上のペインへ移動
  • Ctrl + Shift + ↓: 下のペインへ移動
  • Ctrl + Shift + ←: 左のペインへ移動
  • Ctrl + Shift + →: 右のペインへ移動

5. スクロール

  • Shift + Page Up: 上にスクロール
  • Shift + Page Down: 下にスクロール

6. クリップボード操作

  • Ctrl + Shift + C: コピー
  • Ctrl + Shift + V: 貼り付け

Kittyのインストール方法

Debian/Ubuntu系

$ sudo apt update
$ sudo apt install kitty

Fedora

$ sudo dnf install kitty

Arch Linux

$ sudo pacman -S kitty

Gentoo

$ sudo emerge --ask x11-terms/kitty

Kittyのカスタマイズ

Kittyは、設定ファイル(kitty.conf)を利用してカスタマイズ可能です。

1. 設定ファイルの作成

  • 設定ファイルを作成するには、以下のコマンドを実行:
mkdir -p ~/.config/kitty
touch ~/.config/kitty/kitty.conf

2. フォントの変更

  • 設定ファイル(~/.config/kitty/kitty.conf)に以下を追加:
font_family Fira Code
font_size 12.0

3. 背景色の変更

  • 設定ファイルで背景色を変更:
background #1d1f21
foreground #c5c8c6

4. キーバインドの変更

  • 設定ファイルでカスタムキーバインドを設定可能:
map ctrl+shift+c copy_to_clipboard
map ctrl+shift+v paste_from_clipboard

Kittyのメリット

  • GPUアクセラレーション: 高速な描画とスムーズなスクロールを実現。
  • タブ & スプリットビュー対応: tmuxなしでも複数のセッションを整理可能。
  • リモートコントロール機能: 他のKittyインスタンスと連携して操作可能。
  • 軽量で高速: 低スペックPCでも快適に動作。

Kittyのデメリット

  • GUIの設定ツールなし: すべての設定は手動でkitty.confを編集する必要がある。
  • Windowsのネイティブサポートなし: WSLを通じてのみ利用可能。

まとめ

Kittyは、GPUアクセラレーションによる高速描画と、タブやスプリットビュー機能を標準搭載した強力なターミナルエミュレータです。カスタマイズ性が高く、特に開発者やシステム管理者にとって理想的なツールです。tmuxを使わずに複数のセッションを管理したい場合に最適です。