ブロックと入力行
tTerm のターミナルは、ブロックが並ぶフィードです。実行したコマンドは、出力と一緒にそれぞれ 1 つのブロックになります。コマンドは、フィードの下にある tTerm 独自の入力行に入力します。ブロックは、あとから検索で見つけられます。
ブロックには、コマンドとその終了状態が表示されます。緑の点か、終了コードの付いた赤いバツ印(終了コード 1 など)です。その横には、かかった時間、実行したディレクトリ、git のブランチ、開始時刻が並びます。その下が出力です。長い出力は最後の 400 行が表示され、その上のボタン、前の 120 行を表示 か 出力全体を表示 で残りも表示できます。
実行中のコマンドは、普通のターミナルと同じようにリアルタイムで描画されます。色も、プログレスバーも、パスワードの入力も使え、入力した内容はそのコマンドに送られます。vim や htop のような全画面のプログラムは、動いているあいだウィンドウ全体を使い、終了するとフィードに戻ります。コマンドが終わると、その画面は選択、検索、コピーができるテキストになります。
実行中のコマンドを止めるには、ブロックの 停止 を押すか、Ctrl+C を押します。閉じていない引用符やヒアドキュメントのあとで、シェルがコマンドの続きを待っているときは、ブロックに 未開始 と表示されます。続きをブロックに入力するか、停止 を押してください。
ブロックのボタン
Section titled “ブロックのボタン”終了したブロックにポインターを合わせると、ボタンが表示されます。ツールチップに出るボタンの名前は次のとおりです。
- コマンドと出力をコピー と 出力のみコピー。コピーされると、ボタンにチェックマークが付きます。
- 再実行 は、同じコマンドをこのターミナルでもう一度実行します。新しいブロックは、始まるときに琥珀色の枠で囲まれます。
- このブロックへのリンクをコピー は、フィードをこのブロックの位置で開いてブロックを強調表示するリンクをコピーします。リンクはサインインしているところならどこでも開けますが、使えるのはあなただけです。
- このコマンドにノートを追加 を押すとコマンドの下に入力欄が開き、Enter でノートが保存されます。ノートはマシンのログにも入り、書いたときのまま残ります。ノートには 返信 で返事ができます。
- ブロックを折りたたむ は、出力を折りたたみます。折りたたんだブロックには、隠れている量が 12 行が非表示 のように表示され、クリックすると展開します。
入力行は、シェルのものではなく tTerm 独自のものです。入力した内容は Enter を押すまで入力行に残り、押すとコマンド全体がシェルに渡されます。
- Shift+Enter で改行します。コマンドは複数行にできます。
- ↑ と ↓ で、使っているすべてのデバイスの履歴をたどれます。まずこのマシンで実行したコマンド、次に同じプロジェクトのほかのマシンのコマンドが出てきます。コマンドの先頭を入力すると、そこから始まるものだけが出てきます。Ctrl+R を押すと履歴が検索欄付きの一覧で表示され、選んだコマンドが入力行に入ります。
- 入力中は、履歴にあるコマンドの続きがグレーで表示されます。Tab か → で確定します。
- 続きが表示されていないときは、Tab でその語が何になり得るか(コマンド、ファイル、ディレクトリ、git のブランチ)をマシンに問い合わせます。候補が 1 つならそのまま入り、複数あれば一覧が開きます。この問い合わせはターミナルを通らないので、ターミナルにもシェルの履歴にも何も残りません。
- Ctrl+L は、
clearと同じようにフィードをクリアします。
入力行の左には、いまいるディレクトリと、あれば git のブランチが表示され、どちらもボタンになっています。ディレクトリを押すと、ここにあるディレクトリの一覧が開きます。.. で 1 つ上の階層に移れ、パスを入力することもできます。ブランチを押すとブランチの一覧が開き、現在 と リモート の印が付いています。選んだものは普通の cd や git switch として実行され、ブロックとしてフィードに入ります。
コマンドの実行中、入力行には キー入力は実行中のコマンドに送られます。次のコマンドを入力するには、ここをクリックします。 と表示されます。そこで次のコマンドを入力しておけますが、Enter が効くのは今のコマンドが終わってからです。それまでは コマンドがまだ実行中です。終わるまで待つか、ブロック内で Ctrl+C を押して停止してください。 と表示されます。入力行で Ctrl+C を押すと、入力した内容が消えます。入力行が空のときは、シェルに送られます。
危険なコマンド
Section titled “危険なコマンド”いくつかのコマンドは、何かを取り返しのつかない形で壊します。tTerm はそうしたコマンドをいったん止め、入力行の上のバーで、そのコマンドが何をするのか、どのマシンでか、何が戻らないのかを示して確認します。「このコマンドを実行すると、web-01 で次の操作が行われます:ディレクトリとその中身をすべて削除。元に戻す方法はなく、ゴミ箱にも残りません。」実行する でコマンドが実行され、キャンセル でコマンドは入力行に戻ります。
確認の対象は次のコマンドです。
-rと-fを付けたrm– ディレクトリとその中身をすべて削除するmkfs、fdisk、parted、wipefs– ディスクのファイルシステムを上書きするof=/dev/…を指定したdd– デバイスに直接書き込むDROP DATABASE、DROP TABLE、TRUNCATE TABLE– データベースまたはテーブルを削除するshutdown、poweroff、halt、init 0– マシンをシャットダウンするreboot、init 6– マシンを再起動するsshまたはsshdに対するsystemctl stop、disable、mask– SSH サービスを停止するufw deny、ufw reject、DROPを指定したiptables– ファイアウォールを変更するuserdel、deluser– ユーザーアカウントを削除する
/ や ~ を対象にした rm -rf では、このコマンドはマシン全体を対象にしています。マシン上のものは何も残りません。 という警告が加わります。コマンドを自分で入力した場合も、履歴から取り出した場合も、再実行 を押した場合も、tTerm は同じように確認します。
クラシックモード
Section titled “クラシックモード”クラシックモードでは、ターミナルは普通のターミナルになります。すべてのキーがそのままシェルに送られ、Tab も履歴もシェル自身のものが使われます。プロンプトも含めて、画面はすべてシェルが描きます。ブロックはなく、コマンドの確認も行われません。ターミナルの下には このモードでは、危険なコマンドの実行前に確認が行われません。 と表示されます。
モードは、入力行の右にある 入力行 と クラシック で切り替えます。クラシックモードでは、この切り替えはターミナルの下にあります。シェルはそのまま動き続け、選んだモードはこのブラウザーがすべてのターミナルについて覚えておきます。
4.4 より古い bash のように、コマンドの開始位置を示せないシェルは、クラシックモードでしか動きません。その場合は 入力行 がグレー表示になり、切り替えのツールチップに理由が表示されます。
クリアと折りたたみ
Section titled “クリアと折りたたみ”clear(または reset)と Ctrl+L は、フィードを画面から消すだけで、削除はしません。上部の ブロック 3 個を画面から消去しました:表示する で元に戻せます。折りたたんだブロックとクリアしたフィードは、このブラウザーでは、ページを再読み込みしても、クラシックモードに切り替えて戻しても、そのままです。上部の 前のコマンドを表示 で、さらに前のブロックが表示されます。ブロックは 30 日間保存されます。
ターミナルに名前を付ける
Section titled “ターミナルに名前を付ける”ターミナルのタブか、サイドバーやプロジェクトのページにあるターミナルをダブルクリックして、名前を入力します。40 文字までで、数字だけの名前は使えません。Enter で保存、Esc でキャンセルです。名前は、サイドバー、タブ、プロジェクトのページに表示されます。