エディターとビューアー
エージェントが変更を完了したら、その内容を読み、正しいかどうかを判断したいものです。そのためにわざわざ作業環境を離れてVS Codeに移る必要はありません。TermTreeのエディター/ビューアーパネルは、まさにそのためにターミナルの横に開きます。ファイルツリーがないのは、ターミナル自体がその役割を果たすからです。また、LSP、オートコンプリート、デバッガーがないのは、エージェントの出力をレビューする作業は、ゼロからコードを書く作業とは異なるからです。
ターミナルがファイルエクスプローラーになる
TermTreeにはファイルツリーがありません。代わりに、ターミナル上で指定したファイルがエディター/ビューアーパネルに開きます。
- ターミナル出力に表示されたファイルパスを**⌘/Ctrlを押しながらクリック**すると、そのファイルが開きます。
- OSC 8ハイパーリンクとして記述されたパス(一部のツールやシェルで使用されます)も、同じようにクリックできます。
- パスを右クリックしてファイルを開く/フォルダーを開くを選択できます。詳しくはターミナルを参照してください。
アプリ全体で共有されるグローバルなエディター/ビューアーパネルは1つだけです。どのターミナルからファイルを開いても、同じパネルに表示されます。
編集と保存
テキストファイルは、構文ハイライト用の言語検出機能を備えたCodeMirrorエディターで開きます。通常どおり編集し、Cmd+S/Ctrl+Sで保存します。未保存のファイルでは、ファイル名の横に変更済みインジケーターが表示されます。
未保存状態にできるファイルは、一度に1つだけです。 未保存の変更があるファイルから別のファイルへ切り替えようとした場合、またはそのファイルを閉じようとした場合、TermTreeは処理を続行する前に、保存、破棄、キャンセルのいずれかを選ぶよう求めます。
ディスク上のファイルが変更された場合
開いているファイルがディスク上で変更され(たとえば、エージェントがターミナルで編集した場合)、バッファーに未保存の変更がなければ、TermTreeは確認なしで自動的に再読み込みします。
ディスク上のファイルが変更された時点でバッファーが未保存状態の場合、TermTreeが編集内容を上書きすることはありません。代わりに「ディスク上で変更されました — 再読み込み」と表示されるため、外部で行われた変更を確認し、自分の編集内容を処理してから明示的に再読み込みできます。
アウトラインペイン
Markdownファイルでは、アウトラインペインを切り替えると、現在のファイルの見出しツリーを表示できます。見出しをクリックするとその位置へ移動し、ブランチを折りたたんだり展開したりしながら長いドキュメント内を移動できます。
差分表示の切り替え
変更を表示をクリックすると、開いているファイルと最後のコミット(git HEAD)との差分が読み取り専用で表示されます。エージェントによる変更のうち、何を残すか決める前にすばやくレビューできます。差分表示の切り替えは、ファイルが実際にHEADと異なる場合にのみ表示されます。非常に大きなファイルは対象外となり、差分の代わりにサイズ制限の通知が表示されます。
PDFと画像の表示
.pdfファイルと一般的な画像形式は、テキストエディターではなく専用の読み取り専用ビューアーで開きます。
戻る/進むナビゲーション
ファイルを開くたびに、エディターがナビゲーション履歴を記録します。Cmd+[/Cmd+]で前または次のファイルへ移動できます(Ctrl+[/Ctrl+]。Windows/Linuxでは、ネイティブメニューからCtrl+Alt+Left/Ctrl+Alt+Rightも使用できます)。
最近使ったファイル
Cmd+Shift+O/Ctrl+Shift+Oを押すと、最近使ったファイルダイアログが開きます。これは、これまでに開いたファイルを重複なく最大15件まで表示するリストです。ダイアログを開くたびに、ディスク上にまだ存在するファイルだけが残され、アプリを再起動してもリストは保持されます。
ファイルごとの表示状態の記憶
TermTreeはファイルパスごとに、最後に使用した表示モード(エディターまたはプレビュー)と、それぞれのスクロール位置を記憶します。そのため、ファイルに戻ると前回離れた位置から再開できます。Markdownファイルのデフォルトはプレビューで、それ以外のファイル形式のデフォルトはエディターです。この記憶の上限は50ファイルで、現在のセッション中のみ保持されます。再起動すると消去されます。再起動後も保持されるものと保持されないものについては、セッションの永続化を参照してください。
ローカル画像、ファイル間リンク、Mermaidダイアグラム、HTMLのライブレンダリング、エクスポートなど、MarkdownおよびHTML固有のプレビュー動作については、プレビューとエクスポートを参照してください。