kitty
Kitty はスクリプトを組める OpenGL ベースのターミナルエミュレータです。タイル機能、TrueColor、合字、キーボード入力と画像レンダリングのプロトコル拡張があります。また、 GNU Screen や tmux のようなタイリング機能も提供します。
kitty は比較的新しく、最初のリリース (v0.1.0) は 2017年2月でした。ただし、まだ時期尚早であるという意味ではありません。
目次
インストール
使用方法
新しいタブやウィンドウを ctrl+shift
ショートカットで作成・リサイズすることができます。レイアウトは ctrl+shift+l
で切り替えて保存・復元することが可能です。
フルキーボードモードでは ctrl+i
と tab
などのキーを区別します。さらに、アプリケーションによっては波線などのエフェクトを使うことができます。
Kitten
Kitty はサブプログラムを作成するためのフレームワークが備わっておりサブプログラムは kitten と呼ばれます。以下のような kitten が存在します。
たとえば、ターミナルに画像を表示するには (imagemagick が必要です。)
$ kitty +kitten icat image.jpeg
2つのファイルの差分を表示するには:
$ kitty +kitten diff file1 file2
ssh 上でクリップボードを操作するには:
$ kitty +kitten clipboard
設定
Kitty は ~/.config/kitty/kitty.conf
で設定できます。フォント・カラー・カーソル・スクロールバックバッファなどを設定することが可能です。利用可能なオプションは 公式ドキュメント を参照してください。デフォルトで使用される 設定ファイル も確認できます。
ヒントとテクニック
IME サポートを有効にする
IBus IME フレームワークの Kitty サポートは、既定で無効になっています。これを有効にするには、環境変数 GLFW_IM_MODULE=ibus
を設定します。互換性のある IBus インターフェースが提供されているので、 Fcitx5 でも動作します。
トラブルシューティング
SSH のターミナルの問題
kitty を使用して、terminfo を持たないリモートに ssh 接続すると、さまざまな問題が発生する可能性があります。解決策は通常 terminfo にコピーすることです。kitty には、まさにこれを自動化するための ssh kitten があります。
kitty +kitten ssh user@host
ssh のエイリアスとして設定したい場合、そのための一つの方法として、ユーザーが Kitty を使っているかどうかを検出し、もしそうなら、ssh コマンドのエイリアスを設定することです。これを行うには(Bashで)~/.bashrcファイルに次の行を追加します。
~/.bashrc
[[ "$TERM" == "xterm-kitty" ]] && alias ssh="kitty +kitten ssh"
何らかの理由でリモートに terminfo をインストールできない場合、 TERM
をより存在しやすいものに設定してみてください。この場合、端末の機能のいくつかが使えなくなる可能性があることに注意してください。OpenSSH#適切な terminfo エントリがないリモートに接続する場合 を参照してください。