移動後の参照を切らさない!テキストエディタのリンク、リンク先削除前の警告

テキストエディタのリンク先を削除する前は、「使っていない気がする」ではなく、作品内の参照が0件になったことを削除条件にします。この記事でいう警告は、まず削除を止めて利用箇所を確認する判断ルールです。Rune Studioに削除警告の画面が実装されていることは資料に記載されていますが、今回その画面や発火条件は目で確認していません。

削除候補を一つのパスで特定する

例は images/figure.png です。四つの章から一度ずつ参照され、合計4件あります。別に refs/source-note.md への文書リンクが3件ありますが、画像削除とは別の参照なので混ぜません。

削除前の一覧は次の形にします。

参照元 旧対象 判断 差し替え例 最終条件
chapters/C1.md ../images/figure.png カラー図を維持 ../images/figure-v2.png 旧パス0件
chapters/C2.md ../images/figure.png カラー図を維持 ../images/figure-v2.png 旧パス0件
chapters/C3.md ../images/figure.png 白黒版へ変更 ../images/figure-bw.png 旧パス0件
chapters/C4.md ../images/figure.png 図を外し本文で説明 画像参照を削除 旧パス0件

この差し替え先名と判断は、読者が対応表を作るための具体例です。今回の操作記録に残っているのは、C1〜C4の各1件を置き換え、旧画像の利用が0件になったことまでです。二つの新画像名や文書リンク3件を、実際に確認した結果とは扱いません。

「参照0件」と「削除済み」を分ける

手順は、検索、差し替え、再検索、削除の順です。

  1. 削除候補の正確な相対パス ../images/figure.png を作品全体で検索する。
  2. 参照元ファイル数と出現件数を記録する。
  3. 各行について、別画像へ差し替えるか、文章へ置き換えるかを決める。
  4. 同じ旧パスを再検索し、ファイル数0・出現件数0を確認する。
  5. ここで初めて削除候補にする。

0件になった時点でも、画像はまだ削除していません。この区切りを残すと、差し替え内容を読み直してから削除でき、判断ミスがあれば元へ戻れます。

差し替え後の読み直しでは、単に画像が表示されるかだけでなく、本文との対応を見ます。C1とC2がカラー図、C3が白黒図、C4が文章説明なら、それぞれのキャプションと「次の図」「上図」といった指示語も直します。旧パスが0件でも、本文に「カラーで示す」と残っていれば差し替えは完成していません。

削除候補を確定したら、ファイル名、参照0件を確認した時刻、確認した章を一行にまとめます。同名の figure.png が別フォルダにある作品では、名前だけでなく images/figure.png という位置まで記録してください。これで、別作品や別章の画像を誤って削除する危険を減らせます。

文書リンク3件は別の一覧で守る

画像1枚の削除作業中に、文書リンクのパスまでまとめて置換すると別の事故が起きます。[出典](../refs/source-note.md) のようなリンクは、対象資料を削除しないなら変更不要です。

画像参照は ![]()、文書リンクは []() として別に一覧化します。二つの差し替え画像へ分岐するときも、旧画像4件の行だけを対象にします。最後に文書リンク3件の件数が変わっていないかを見ると、範囲外の置換を見つけやすくなります。

Rune Studioの警告機能と今回の到達点

Rune Studioの現行Mac版の公開機能説明には、Markdown画像・リンクの利用箇所を調べ、使用中の対象を削除する前に利用ファイル数と出現箇所数を警告する機能が記載されています。また、移動・名前変更後の相対パス書き換えも案内されています。

今回実際に得たのは、images/figure.png が4ファイル4件で使われていたこと、C1〜C4で各1件を置き換えたこと、再取得で0ファイル0件になったことです。実ファイルの削除、警告ダイアログ、警告文、削除操作による発火は試していません。警告画面を購入判断に使う場合は、複製作品で使用中画像を削除しようとし、画面とキャンセル後の状態を確認してください。

クラウド同期、共同編集、ワークスペース外の追跡も対象外です。

結論:0件になってから削除候補にする

リンク先削除前の警告で大切なのは、削除ボタンの直前に判断を止められることです。旧対象を4件から0件へし、差し替え後の章を読み、文書リンク3件が変わっていないことを確かめます。今回確認できたのは削除直前までなので、0件と削除完了を同じ結果にしないでください。

リンク利用箇所と相対パスを扱う現行Mac版は、Rune Studio公式サイトで確認できます。