ワークスペース管理
VMark のワークスペースとは、プロジェクトのルートとして開かれたフォルダーです。ワークスペースを開くと、サイドバーにファイルツリーが表示され、クイックオープンがファイルツリーに表示されるすべてのファイルを検索できるようになり、ターミナルがプロジェクトルートで起動し、開いているタブが次回のために記憶されます。
ワークスペースなしでも個別のファイルを開けますが、ファイルエクスプローラー、プロジェクト内検索、セッションの復元が使えなくなります。
1 つのウィンドウで複数のワークスペース
実験的な ワークスペースレール を使うと、1 つのウィンドウに複数のワークスペースを保持して切り替えられます — それぞれが独自のタブ、ファイルツリー、レイアウトを持ちます。
ワークスペースを開く
| 方法 | 手順 |
|---|---|
| メニュー | ファイル > ワークスペースを開く |
| クイックオープン | Mod + O、次に下部の **参照... ** を選択 |
| ドラッグ&ドロップ | Finder から Markdown ファイルをウィンドウにドラッグ — VMark がプロジェクトルートを検出してワークスペースを自動的に開く |
| 最近使ったワークスペース | ファイル > 最近使ったワークスペース から以前のプロジェクトを選択 |
ワークスペースを開くと、VMark はファイルエクスプローラー付きのサイドバーを表示します。ワークスペースが以前に開かれていた場合、以前に開いていたタブが復元されます。
Windows と Linux では、コマンドラインで渡したフォルダー(vmark C:\notes や vmark ~/notes)は、macOS で Dock アイコンにフォルダーをドロップしたときと同じように、専用のウィンドウでワークスペースとして開きます。VMark がすでに起動している場合も同様です。
TIP
現在のウィンドウに未保存の変更がある場合、VMark は作業を置き換える代わりに新しいウィンドウでワークスペースを開くことを提案します。
ファイルエクスプローラー
ファイルエクスプローラーはワークスペースが開いているときにサイドバーに表示されます。ワークスペースフォルダーをルートとした Markdown ファイルのツリーを表示します。
ナビゲーション
- フォルダーを シングルクリック して展開または折りたたむ
- ファイルを シングルクリック してタブで開く
- 選択した項目で Enter(または
F2)を押すと、インラインで名前の変更を開始 - VMark 自体では編集しないファイル(すべてのファイルを表示 で表示される)は、システムのデフォルトアプリケーションで開く
- ワークスペースを最初に開いたとき、フォルダーは折りたたまれた状態で始まります。開閉状態は、ファイル、アウトライン、履歴の各ビューを切り替えている間も保持されます
クイックルック
ツリーでファイルを選択して Space を押すと、タブを開かずにウィンドウ全体のオーバーレイでプレビューできます — 画像、動画、音声はネイティブのコントロール付きでレンダリングされ、その他のファイルでは外部で開くボタンを備えた「プレビューできません」パネルが表示されます。←/↑ と →/↓ でツリーの表示中のファイルを順に移動し(端で折り返しません)、Space、Escape、または背景のクリックでプレビューを閉じます。インラインの名前変更フィールドでスペースを入力しても、クイックルックが起動することはありません。
ヘッダーボタン
ファイルビューのヘッダーには、ツリー全体に対するコントロールがあります:
- すべてのフォルダを展開 — ツリー内のすべてのフォルダーを開きます
- すべてのフォルダを折りたたむ — すべてのフォルダーを閉じてルートまで戻します
- すべてのファイルを表示 — トグルです。オン(ハイライト表示)のときは、VMark が開けるファイルだけでなく、すべてのファイルをツリーに一覧表示します
- 新しいファイル / 新しいフォルダ — 選択中のフォルダー内に、何も選択されていない場合はワークスペースのルートに作成します
ファイル操作
ファイル、フォルダー、またはツリーの下の空きスペースを右クリックしてコンテキストメニューにアクセスします:
| アクション | 表示対象 | 説明 |
|---|---|---|
| 開く | ファイル | ファイルを新しいタブで開く |
| 名前の変更 | ファイル、フォルダー | ファイルまたはフォルダーの名前をインラインで編集(F2でも可) |
| 複製 | ファイル | ファイルのコピーを作成 |
| 移動先... | ファイル | ダイアログ経由でファイルを別のフォルダーに移動 |
| 削除 | ファイル、フォルダー | ファイルまたはフォルダーをシステムのゴミ箱に移動 |
| パスをコピー | ファイル、フォルダー | 絶対パスをクリップボードにコピー |
| Finderで表示 | ファイル、フォルダー | ファイルマネージャーで項目を表示 — Windows では エクスプローラーで表示、Linux では ファイルマネージャーで表示 というラベルになります |
| 新規ファイル | フォルダー、空きスペース | この場所に新しい Markdown ファイルを作成 |
| 新規フォルダー | フォルダー、空きスペース | この場所に新しいフォルダーを作成 |
| ここでターミナルを開く | フォルダー | このフォルダーで新しいターミナルセッションを開始(5 セッション開いている場合は無効) — ターミナルを参照 |
ツリー内で直接 ドラッグ&ドロップ でフォルダー間でファイルを移動できます。
表示切り替え
デフォルトでエクスプローラーは VMark が開けるファイル形式のみを表示し、ドットファイルを非表示にします。フォルダーは表示対象の中身があるかどうかにかかわらず一覧表示される ため、サポート外のファイル形式ばかりのプロジェクトは空のフォルダーのツリーに見えます — これはフィルターが働いているのであって、ディレクトリの読み込みに失敗しているのではありません。2 つの切り替えでこれを変更できます:
| 切り替え | ショートカット | 動作 |
|---|---|---|
| 隠しファイルを表示 | Mod + Shift + .(macOS) / Ctrl + H(Win/Linux) | ドットファイルと隠しフォルダーを表示 |
| すべてのファイルを表示 | Mod + Shift + A | ドキュメントと並んで非 Markdown ファイルを表示 |
両方の設定はワークスペースごとに保存され、セッション間で持続します。
除外フォルダー
一部のディレクトリは、ワークスペースの設定にかかわらず、中身が一覧表示されることはありません — ワークスペース検索が適用するのと同じ最低限のルールです: .git、node_modules、.obsidian、.svn、__pycache__、.DS_Store、.vscode、.idea、target、.next、dist、.superpowers。存在がわかるようにフォルダーとしては表示されますが、中身は読み込まれません。独自の名前はワークスペース設定の 除外フォルダー に追加します(新しいワークスペースでは .git と node_modules が最初から入っています)。
ツリーは 1 回のパスで一覧表示され、ファイルが変更されると更新されます。変更が立て続けに起きた場合は、それが収まった少し後に 1 回だけ更新されます。変更が止まらないフォルダー(ダウンロード中、ビルド中、同期中など)は、継続的にではなく間隔を広げながら更新されるため、忙しいワークスペースを読み直すためにエクスプローラーが CPU コアを占有し続けることはありません。
クイックオープン
Mod + Oを押してクイックオープンオーバーレイを開きます。次の順序で並ぶ 3 つのソースにわたるファジー検索を提供します:
- 現在のウィンドウの 開いているタブ(ドットインジケーターでマーク)、最近使用した順
- 以前に開いた 最近のファイル
- ワークスペース内で ファイルエクスプローラーが現在表示しているすべてのファイル
入力する前は、リストには開いているタブと最近のファイルのみが表示されます。入力を始めると、3 つのソースすべての結果がこの順序でグループ化されて表示され、各グループ内ではマッチの質でランク付けされます。
いくつかの文字を入力してフィルタリングします — マッチングはファジーなので、rmeでREADME.mdが見つかります。矢印キーでナビゲートして Enter で開きます。下部に固定された **参照... ** 行でファイルダイアログが開きます。
3 番目のソースはファイルエクスプローラーに正確に従うため、両者の間で何が存在するかについて食い違うことはありません。隠しファイルを表示 をオンにすると、クイックオープンは .claude/、.github/workflows/ やその他のドットディレクトリ配下のドキュメントも見つけます。すべてのファイルを表示 をオンにすると非 Markdown ファイルも見つけ、それぞれをサイドバーでクリックしたときと同じ方法で開きます — VMark 自身のフォーマットはタブで、それ以外はシステムのデフォルトアプリケーションで開きます。常にスキップされるリストにあるフォルダー(.git、node_modules、.vscode など)は、どちらからも除外されたままです。
| アクション | ショートカット |
|---|---|
| クイックオープンを開く | Mod + O |
| 結果をナビゲート | Up / Down |
| 選択したファイルを開く | Enter |
| 閉じる | Escape |
TIP
ワークスペースなしでも、クイックオープンは動作します — 最近のファイルと開いているタブは表示されますが、ファイルツリーを検索できません。
ワークスペース内コンテンツ検索
ワークスペースが開いているとき、VMark は(ファイル名だけでなく)ファイルコンテンツを横断して検索できます。既定では、VMark が開けるファイル形式(Markdown、プレーンテキスト、YAML、およびフォーマット対応がオンのときは JSON/TOML/Mermaid/SVG/HTML)を検索します。.md トグル(対応するファイル形式のみ)をオフにすると、すべてのテキストファイルを検索します(バイナリは常にスキップされます)。
| アクション | ショートカット |
|---|---|
| コンテンツ検索パネルを開く | Mod + Shift + H(編集 → 検索 → ファイル内を検索... からも可) |
| 次の結果へジャンプ | Enter(または矢印キーで移動) |
| 結果を新しいタブで開く | マッチプレビューをクリック |
各結果はファイルパス、行番号、マッチしたテキストがハイライトされたスニペットを表示します。結果はランク付けされません。ファイルは、検索がワークスペースのフォルダーをたどる中で到達した順に一覧表示されます。検索は 50 件のマッチしたファイル、1,000 件のマッチ、または 5 秒で停止し、その時点までに見つかったものを表示します。
デフォルトで除外: VMark が決して降りていかないフォルダー(.git、node_modules、.obsidian、.svn、__pycache__、.DS_Store、.vscode、.idea、target、.next、dist、.superpowers)に加えて、ワークスペース設定の 除外フォルダー にある名前(新しいワークスペースでは .git と node_modules が最初から入っています)。
隠しファイル: ファイルエクスプローラーの 隠しファイルを表示 の設定にかかわらず、ドットファイルはコンテンツ検索で常にスキップされます。
これは クイックオープン(ファイル名のみ を検索)とは異なります — コンテンツ検索はマッチした行にカーソルを置いてマッチしたファイルを開きます。
最近使ったワークスペース
VMark は最近開いた最大 10 のワークスペースを記憶します。メニューバーの ファイル > 最近使ったワークスペース からアクセスします。
- ワークスペースは最後に開いた時刻順(最新順)でソートされます
- リストはすべての変更でネイティブメニューに同期されます
- 最近使ったワークスペースをクリア を選択してリストをリセット
ワークスペース設定
各ワークスペースはセッション間で持続する独自の設定を持ちます。設定は VMark のアプリケーションデータディレクトリに保存されます — プロジェクトフォルダー内ではありません — のでワークスペースはクリーンに保たれます。
以下の設定がワークスペースごとに保存されます:
| 設定 | 説明 |
|---|---|
| 除外フォルダー | ファイルエクスプローラーから非表示にされたフォルダー |
| 隠しファイルを表示 | ドットファイルが表示されているかどうか |
| すべてのファイルを表示 | 非 Markdown ファイルが表示されているかどうか |
| 最後に開いていたタブ | 次回起動時のセッション復元用ファイルパス |
TIP
ワークスペースの設定はフォルダーパスに関連付けられています。同じマシンで同じフォルダーを開くと、別のウィンドウからでも常に設定が復元されます。
空のワークスペースウィンドウ
最後に開いていたドキュメントを閉じても、ウィンドウは閉じなくなりました。代わりに、ウィンドウは ようこそ画面 を表示したまま開いており、ワークスペースが開いている場合はそのサイドバーとファイルツリーも表示されたままです。これは macOS、Windows、Linux で同じように動作します。
ようこそ画面には、作業に戻るためのクイックアクションがあります:
- 新規ファイル、ファイルを開く、ワークスペースを開く… ボタン
- 最近使用したファイル リストと 最近使用したワークスペース リスト — 任意の項目をクリックすると開き直せます。各リストは項目がある場合にのみ表示されます。
ファイルを開く と最近使用したリストは、今いるウィンドウをそのまま使います。ようこそ画面のウィンドウには置き換えられるタブがないため、2 つ目のウィンドウで開くことはありません — ただし、ウィンドウにまだワークスペースが開いている場合は例外で、そのワークスペース外のファイルは、サイドバーにまだ見えているファイルツリーを置き換えるのではなく、専用のウィンドウで開きます。
ようこそ画面のウィンドウのタイトルバーには VMark と表示されます: ドキュメントが開いていないため、表示するファイル名がないからです。
ウィンドウ自体を閉じるには、赤い信号機ボタン、Cmd/Ctrl + Q(終了)を使うか、ようこそ画面が表示されている状態でもう一度 Cmd/Ctrl + W を押します。
2 つのドキュメントを並べて表示
2 つの 異なる ドキュメントを同時に開きます。エディターを 2 つのペインに分割し、それぞれに別のドキュメントを表示します。対訳での読書や翻訳(片側に原文、もう片側に訳文)や、執筆中に参考資料を開いておくのに便利です。これは Markdown 分割ビュー(Shift + F6)とは異なります。そちらは 同じ ファイルのソースとプレビューです。
Alt + Mod + \またはコマンドパレット(エディタを分割 — 2つの文書)で分割を切り替えます。現在のドキュメントは一方のペインに残り、その前に最後に使用したドキュメント(ない場合は別の開いているドキュメント)がもう一方のペインに開きます。同じドキュメントが 2 回表示されることはないため、分割には 2 つのドキュメントが開いている必要があります。ペインにフォーカスがある状態でタブをクリックするとそのペインのドキュメントを変更できます。また、タブを右クリックして 横に開く を選ぶこともできます。- 仕切りをドラッグして(またはフォーカスして矢印キーで)ペインのサイズを変更します。
- 編集中のペインが フォーカスされた ペインです。ツールバー、検索バー、メニューコマンドはそのペインに作用します。
- 分割ペイン間でスクロールを同期(コマンドパレット)をオンにすると、両側が比例して一緒にスクロールします。翻訳の位置合わせに便利です。
セッションの復元
ワークスペースが開いているウィンドウを閉じると、VMark は開いているタブのリストをワークスペースの設定に保存します。次回同じワークスペースを開くと、これらのタブが自動的に復元されます。
- 保存済みファイルパスのあるタブのみが復元されます(無題のタブは保持されません)
- 最後のセッション以降にファイルが移動または削除された場合、静かにスキップされます
- セッションデータはウィンドウの閉じ時とワークスペースの閉じ時(ファイル > ワークスペースを閉じる)に保存されます
マルチウィンドウ
各 VMark ウィンドウは独自の独立したワークスペースを持てます。これにより複数のプロジェクトを同時に操作できます。
- ファイル > 新規ウィンドウ で新しいウィンドウが開きます
- 新しいウィンドウでワークスペースを開いても他のウィンドウに影響しません
- ウィンドウのサイズと位置はウィンドウごとに記憶されます
Finder から Markdown ファイルをドラッグし、現在のウィンドウに未保存の作業がある場合、VMark は自動的にファイルのプロジェクトを新しいウィンドウで開きます。
現在のワークスペース外のファイルを開く
ワークスペースが開いているウィンドウは、そのワークスペースを保持します。別の場所にあるファイルを開くと — Finder やエクスプローラーから、ファイル > 開く から、または最近使ったファイルから — そのファイル自身のフォルダーをルートとする 新しいウィンドウ で開くため、作業していたファイルツリーはそのまま残ります。ファイルをその場で受け取るのは、独自のワークスペースを持たないウィンドウだけです。
Windows と Linux では、VMark に関連付けられた種類のファイルをダブルクリックすると、2 つ目のインスタンスを起動するのではなく、すでに実行中の VMark にファイルが渡されるようになりました。macOS では以前からこの動作です。
タブを新しいウィンドウに分離
タブをウィンドウから引き出して新しいウィンドウを作成できます:
- タブをタブバーの外にドラッグ(タブバーの上下に約 40 px 以上)すると分離します。別の VMark ウィンドウの上で離すとタブがそのウィンドウに移動し、それ以外の場所で離すとポインターの位置に新しいウィンドウとして開きます
- タブを水平にドラッグ してタブバー内で他のタブの間を並べ替えます
- ピン留めされたタブはドラッグできません
トーストが移動を確認し、元に戻す を提示します。これを選ぶとタブが元に戻ります。ブラウザータブとメインウィンドウの最後のタブはドラッグして外に出せず、元の位置に戻ります。
ジェスチャーは方向がロックされます: 水平方向の移動は並べ替えを開始し、垂直方向の移動は分離をトリガーします。ドラッグ中にポインターをタブバーの外に移動することで、並べ替えから分離に切り替えることができます。
ウィンドウの状態パネル
複数のウィンドウで Claude Code を実行しているとき、表示 > ウィンドウの状態の表示切替(コマンドパレットからも実行でき、Ctrl + Shift + 5 でも可)を使うと、開いている他のすべてのウィンドウをリアルタイムの状態付きで一覧表示し、そのウィンドウへ直接移動できるパネルが開きます。
各行には、ウィンドウのドキュメント名と現在の状態が表示されます:
| 状態 | 意味 |
|---|---|
| 要対応 | その(フォーカスされていない)ウィンドウのターミナルがベルを鳴らした — Claude Code はターンが終わったときや入力を待っているときにベルを鳴らします |
| 実行中 | そのウィンドウで VMark の AI ジーニーが実行中 |
| エラー | 直前の AI ジーニーの実行が失敗した |
| アイドル | 何も実行されていない |
行は対応が必要なものから順に並ぶため、あなたを必要としているウィンドウが一番上に来ます。任意の行をクリックすると、そのウィンドウにフォーカスして前面に表示します。ウィンドウにフォーカスすると「要対応」のフラグはクリアされます。状態は 2 つの信頼できる信号 — VMark 自身の AI ジーニーの呼び出し状態とターミナルのベル — から取得しており、ターミナルの出力を解析しているわけではありません。
パネルをピン留め すると、常設の「ミッションコントロール」として使えます: ピン留め中は、行をクリックすると対象のウィンドウにフォーカスしますがパネルは開いたままなので、パネルを開き直さずに複数のウィンドウ間を行き来できます。ヘッダーのピンボタンを押すと、2 つの範囲を選べる小さなメニューが開きます:
- このウィンドウをピン留め — 現在のウィンドウだけでパネルをピン留めします。開閉状態とピン留め状態はウィンドウごとに再起動後も記憶されるため、ダッシュボードとして設定したウィンドウはその状態のまま保たれます。
- すべてのウィンドウをピン留め — グローバルなピン留めです: すべてのウィンドウが自動的にパネルを開き、ピン留めされた状態として動作します。後から開くウィンドウも含まれる ため、各ウィンドウを手作業で設定する代わりに、ミッションコントロールのレイアウトを 1 回で選択できます。オフにすると、すべてのウィンドウがそれぞれのウィンドウごとのピン留め状態に戻ります。
外部変更
VMark はワークスペースを他のプログラム(Git、外部エディタ、ビルドツールなど)による変更を監視し、開いているドキュメントを同期します。
- 未変更のファイル はディスク上の内容が変更されると自動的にリロードされます。短いトースト通知がリロードを確認します。
- 未保存の変更があるファイル は 3 つのオプションを持つダイアログが表示されます: 名前を付けて保存(あなたのバージョンを新しい場所に保存)、リロード(変更を破棄してディスクから読み込む)、または 保持(編集内容を保持してファイルを分岐状態としてマーク)。
- 削除されたファイル はタブで欠落としてマークされますが、閉じられません — コンテンツを新しい場所に保存できます。
- 複数の変更済みファイルが同時に変更された場合(例:
git checkout後)、VMark はそれらを 1 つのダイアログにまとめ、すべてリロード、すべて保持、または各ファイルを個別に確認できます。 - 分岐ファイルのディスク上のコンテンツが後でエディタ内のものと一致した場合(例:
git checkoutが同じテキストを復元した場合)、VMark は自動的に分岐状態をクリアし、通常の自動保存が再開されます。
VMark は自身の保存をフィルタリングするため、アプリ内で行った変更によってプロンプトが表示されることはありません。
macOS Dock 最近使った書類
VMark で開いたドキュメントは macOS に登録されるため、Dock の VMark アイコンを右クリックすると 最近使った項目 サブメニューに表示されます。
ターミナル統合
統合ターミナルは作業ディレクトリとしてワークスペースルートを自動的に使用します。ワークスペースを開くまたは切り替えると、アイドル状態のターミナルセッションが新しいルートにcdします。コマンドを実行中のセッションはそのままにされ、コマンドが終了した時点でディレクトリを変更します(実行中かどうかを判別するにはシェル統合が必要です)。ワークスペースレールがオンの場合、1 つのワークスペースに属するセッションは独自のディレクトリを保持します。
VMARK_WORKSPACE環境変数はすべてのターミナルセッションでワークスペースパスに設定されるため、スクリプトからプロジェクトルートを参照できます。
シェル CLI コマンド
VMark は vmark シェルコマンドをインストールして、ターミナルからファイルやフォルダーを開けるようにできます。
インストールと削除
ヘルプ → シェルコマンド: 'vmark' をPATHにインストール... は切り替え式の単一の項目です。vmark コマンドがインストールされていない場合は、/usr/local/bin/vmark に小さなランチャースクリプトを書き込み、管理者パスワードを求めます(VS Code が code コマンドに使用するのと同じ方法です)。VMark 自身のスクリプトがすでにある場合は、同じ項目でそれを削除します。どちらの場合も、結果はダイアログで知らせます。macOS のみです。
使用方法
# ファイルを開く
vmark README.md
# フォルダーをワークスペースとして開く
vmark ~/projects/my-blog
# 複数のファイルを開く
vmark chapter1.md chapter2.mdコマンドは open -b app.vmark に委任されるため、macOS がシングルインスタンスの動作を処理します — ファイルは新しいプロセスを起動するのではなく、既存の VMark ウィンドウで開かれます。
/usr/local/bin/vmark のファイルが VMark によって書き込まれたものでない場合、この項目は何も変更せず、手動で削除するよう求めます。