Zenn
🔌

モダンなターミナルソフト「Tabby」の紹介

2021/09/20に公開

Tabbyとは?

公式の説明を引用すると下記のとおりです。(Google翻訳)

Tabby(以前のTerminus)は、Windows、macOS、およびLinux用の高度に構成可能なターミナルエミュレーター、SSH、およびシリアルクライアントです。

・統合されたSSHおよびTelnetクライアントと接続マネージャー
・統合シリアル端末
・テーマと配色
・完全に構成可能なショートカットとマルチコードショートカット
・分割ペイン
・あなたのタブを覚えています
・PowerShell(およびPS Core)、WSL、Git-Bash、Cygwin、MSYS2、Cmder、およびCMDのサポート
・Zmodemを介したSSHセッションとの間の直接ファイル転送
・倍幅文字を含む完全なUnicodeサポート
・流れの速い出力で窒息しません
・タブ補完を含むWindowsでの適切なシェルエクスペリエンス(Clink経由)
・SSHシークレットと構成用の統合暗号化コンテナ

詳しくはGitHubリポジトリ公式サイトをご覧ください。

色々書いていますが、要するに作業PC内で使用するターミナル、SSH・Telnet・シリアルによる接続先やターミナル、といったものを一つのアプリケーションで管理および利用できるようにしたものです。
接続先情報を保存するだけでなく、GUIのカスタマイズや通信オプションの設定などPutty・RLogin・TeraTermなどと類似の機能を持っています。

類似のターミナルソフトとの違い

類似のターミナルソフトとしてPutty・RLogin・TeraTermなどが挙げられます。
また、SSH接続などのカスタマイズ性を除いた純粋なターミナルソフトとしては、GitBash・Hyper・WindowsTerminalなどがあります。

私は上記に上げたソフトを全て実務で取り入れて使用してきました。
私が重視した要素は下記のとおりです。

  • GUIを用いた機能によって容易な設定が可能
  • SSHによる接続情報を管理できる
  • タブや画面分割などによって複数接続をシームレスに扱える
  • 各環境ごとに色分けが可能になっており、環境選択ミスを防止できる
  • UIがモダンであり、長時間使用していてストレスを感じない
  • プラットフォームに依存せず利用できる(マルチプラットフォーム)

これらの条件を現状一番実現していたのがTabbyでした。
ちなみにSSH接続しないで作業PC内でのみ利用の場合はWindowsTerminalからUbuntu(WSL2)やGitBashを起動しています。

Tabbyの良い(好きな)ところ

正直この手のソフトの選定理由は利用者の細かい用途や好みによるところが大きいです。
なぜなら最低限の機能は競合するソフトでもほとんど実現されているためです。
ですので主観的な理由も含めてTabbyの良い(好きな)点を列挙してみます。

GUIがモダンでかっこいい

いきなり頭悪そうな理由で申し訳ないですが、他のソフトとの一番の差別化ポイントはここです。
正直昔から支持を受けているソフトの多くは、機能としては申し分無いものの、見た目の印象は古臭い業務システムのようです。
UI/UXに対してこだわりを持って開発されているTabbyは非常に第一印象がよく、長く利用していても気持ちの良いものです。

SSH接続を伴わないPC内やWSLでの作業時にWindowsTerminalを利用している理由の一つも、同じくモダンでかっこよく使いやすいからです。
※その他の理由としては複数のターミナルを統合管理できる点もあります

UIの例

マルチプラットフォーム

私はWindowsをメインとしつつもmacOS・Linuxで作業することがあり、どれか一つのOSだけで使えるソフトというのはあまり好ましくありません。
その点Tabbyは上記3つのOS全てに対応しており、完璧です。

開発が活発

TabbyはOSSとして開発されています。
頻繁にアップデートがなされており、現在も開発中です。
まだ新しく知名度も低い方かもしれませんが、将来性は十分に思えます。

機能が十分

前提ではあるのですが、ターミナルソフト・クライアントソフトとして競合ソフトに匹敵もしくは上回る機能が備わっている必要があります。
Tabbyは十分な機能が備わっているように感じています。
私が主に気にしている要素は下記になります。

  • 基本UIのカスタマイズ
    • フォント
    • フォントカラー
    • フォントサイズ
    • 全体テーマ
  • ショートカットキーのカスタマイズ
  • SSH接続先プロファイルの設定・保存
  • 複数のターミナルを統合的に管理・設定・利用
  • ターミナルの挙動カスタマイズ
  • 全体設定の共有

ファイル送受信

SFTPに対応しているのでファイルのダウンロード・アップロードができます。
ターミナルソフトでこれはすごい!

インストール方法

  1. 公式サイトへアクセスする
  2. 画面上にあるDownloadをクリックする
  3. 下記画像の通りOSごとにインストーラーをダウンロードする
    ※バージョンの数値はタイミングによって変わります
  4. ダウンロードしたインストーラーを実行して、インストールを行う

機能紹介(一部)

全部の機能を紹介するのは無理なので、(私にとって)主要な箇所だけ紹介します。

デフォルトターミナルの起動

起動・接続する対象を選択


設定

初期画面のSettingsから全体設定画面へアクセスできます。

基本UIのカスタマイズ

フォント、ターミナル背景色、ターミナルカーソル、カスタムCSS

[ Settings > Appearance ]

カラースキーム

[ Settings > Color scheme ]

ターミナルのカラースキームをカスタム設定したり、既存のプリセットから選択することができます。

ホットキー(ショートカットキー)

[ Settings > Hotkeys ]

特定の処理を実行するためのホットキーを割り当て・変更できます。

プラグイン

[ Settings > Plugins ]
プラグイン(拡張機能)の追加・有効化/無効化・削除が行えます。
プラグインは標準機能にカスタムで機能追加できるものみたいです。
まだあんまり知らないので今後追記するかもです。

プロファイル

[ Settings > Profiles ]

各種ターミナル、SSH・Telnet・Serial・Socketの接続設定を保存、管理できます。

SSH connection profile

[ Settings > Profiles > + New profile > SSH connection ]

下記のような設定が可能です。

  • 接続先グループ名
  • 接続先名
  • アイコン
  • カラー(プロファイルおよび接続時のタブ表示に反映)
  • 接続先ホスト(ホスト名・IPアドレス)
  • ポート
  • ユーザー名
  • 認証方法(自動認識、パスワード、認証鍵暗号方式、エージェント、対話式)
  • パスワードの保存、秘密鍵のパス保存
  • タブの表示制御(接続先マシンからの動的制御 or 接続先名固定)
  • ポートフォワーディング
  • エージェントフォワーディング
  • 接続維持時間
  • ログインスクリプト(接続完了時にターミナル上の標準出力に対応して自動実行)

Tabby全体のGUI設定

[ Settings > Window ]

イジったら何がどう変わるのか分かります。

設定ファイル(全設定のコード)

[ Settings > Config file ]

Tabby内の全ての設定がコード化されていて、変更やコピーができます。
設定のバックアップや別端末への共有を行う場合は、この画面でコード全体をコピーして、反映する端末のTabbyで同じ箇所に貼り付けて保存(Save & apply)すると反映できます。

GitHubで編集を提案

Discussion

ログインするとコメントできます