重い表示だけを減らす!テキストエディタの巨大ファイル、巨大ファイルでも使える検索・置換

巨大ファイルを検索・置換しながら原稿を守るアイキャッチ

巨大ファイルで検索・置換するなら、最初から「すべて置換」を押さないでください。一つの原稿内で旧表記の全件数を数え、意図的に残す例を除き、対象範囲を小さくしてから置換します。置換後は旧語が想定件数だけ残り、新語が想定件数だけ増えたかを逆方向に検索します。

この記事の対象は一つの45万字原稿です。複数ファイルを横断する一括置換や、大容量で残る機能から一ファイル運用を選ぶ方法は扱いません。バイナリファイル、正規表現の網羅解説、速度比較も対象外です。

置換前に「変える10件」と「残す2件」を分ける

説明用の複製には、旧表記コンピュータを12件置きます。そのうち10件は本文の現代表記コンピューターへ変え、2件は作中の古い新聞記事を引用した箇所として残します。検索結果が12件だったからといって、置換対象も12件とは限りません。

最初の検索では件数だけでなく、前後一文を読みます。対象なら行頭にCHANGE、残すならKEEPと作業メモへ記録します。原稿本文へ目印を直接入れる必要はありません。章ID、行の冒頭、前後数語をメモすれば戻れます。

検索結果が想定より多い場合は、派生語や引用、資料欄が混ざっていないかを確認します。少ない場合は全角半角、送り仮名、別の文字コードで似て見える文字を疑います。件数が合わないまま置換へ進むと、完了後に漏れと過剰変更を区別できません。

巨大原稿では置換範囲を章単位に小さくする

45万字を一度に全置換すると、結果の確認範囲も45万字になります。対象10件を章ごとに分け、まず2〜3件のある一章だけで試します。置換前に元原稿を読み取り専用の退避コピーとして残し、作業用複製には日付と目的が分かる名前を付けます。

一章でコンピュータをコンピューターへ変えたら、その章だけで旧語を再検索します。対象0、引用のKEEPがその章にあれば残数1、という期待を先に書きます。新語も検索し、元からあった新表記と今回増えた件数を分けます。

一章の期待が合った後、次の章へ進みます。途中で対象外の引用が変わった場合は、置換を続けず、元に戻して範囲指定を見直します。失敗した一章を直してから進むため、最後に原稿全体の異常を探すより戻り先が明確です。

置換後は旧語と新語を逆向きに照合する

全10件を処理した後の期待は、旧語2件、新語は元の件数に10件を加えた数です。旧語検索で2件の引用が残り、それぞれKEEPメモと一致するかを確認します。新語検索では、変更した10件が正しい文脈にあり、単語の一部やファイル名まで変えていないかを読みます。

次に原稿を別名保存して閉じ、開き直します。再読込後も旧語2件と新語の増分10件が同じなら、編集画面だけの一時状態ではありません。元原稿と作業用複製のファイルサイズや更新日時だけで合否を決めず、検索結果の文脈を見ます。

大量置換でよくある失敗は、件数が0になったことを成功とすることです。旧語0は、残すべき引用まで壊した可能性があります。成功は「変える10件が変わり、残す2件が残る」です。

Rune Studioで一ファイルを検索・置換する範囲

Rune Studioの現行Mac版では、Cmd+Fでファイル内検索を開き、再度の検索操作で置換欄へ進めます。30万文字以上で一部の重い表示処理が止まる場合も、ファイル内検索・置換、保存、自動保存は残る機能として公開資料に記載されています。

ワークスペースを横断する検索・置換は別機能で、選択したファイルやフォルダへ対象を限定し、置換前に確認できます。本記事ではその複数ファイル操作を扱いません。巨大な一ファイルの内部で件数と例外を管理することが中心です。

ここで挙げた検索・置換機能は現行Mac版の公開資料で確認できる範囲です。45万字標本の12件を実際に分類して置換した結果ではないため、手元では必ず識別できる複製を使って10件変更・2件保持を確認してください。正規表現の対応範囲、処理時間、無制限な全置換の安全性は保証しません。

30万字以上のため一部の表示機能を停止しているという通知が出たRune Studioの編集画面
372,013文字の試験原稿を開いた画面。30万字以上のため一部の表示機能を停止しているという通知が出ています。停止後にどの操作が残るかは、自分の原稿で確かめてください。

複数ファイルの一括置換と分ける

複数ファイルを横断する一括置換では、章ファイルや資料フォルダから対象外フォルダを除く必要があります。本記事はファイルをまたぎません。一つの巨大原稿で検索結果の文脈を読み、例外を残しながら章単位で置換することだけを答えます。

向くのは長編を一ファイルで管理し、引用や旧表記を意図的に残す人です。何百ファイルもの名称変更、コードベースの置換、複雑な正規表現が必要なら別の専門ツールを選んでください。

件数が合わないときは置換せず原因表を作る

検索結果が11件しかない場合、すぐ「一件は見落とし」と決めません。旧表記の一部が全角、英字、送り仮名違いになっていないか、改行をまたいでいないか、引用内で別の字形を使っていないかを確認します。検索条件を変えるたび、前の件数と条件を残します。

13件以上なら、章題、作業メモ、注釈、参考資料に同じ語がないかを読みます。対象外の一件を見つけたら、除外理由と前後語をKEEPへ追加します。期待件数のほうが誤っていた場合は、置換前に10件という計画を修正し、誰が見ても同じ対象集合になるよう一覧を更新します。

新語の件数が10増えない場合は、元から存在した新語の数を数え忘れていないかを確認します。置換前の旧語数だけでなく、新語数も控える理由はここにあります。旧語と新語の前後差が、承認した変更数と一致するときだけ次の章へ進みます。

保存後に件数が違う場合は、同じ作業用複製を開いたか、未保存タブを閉じたか、別名保存の出力先を取り違えていないかを調べます。もう一度置換する前に、現在開いているファイルの名前と更新時刻を確定します。

置換対象に似た長い語がある場合は、単語の一部だけを変えないよう前後境界を読みます。たとえば旧表記が人名や固有名詞の一部に含まれるなら、その一致は別分類です。検索結果一覧へ「単独語」「複合語の一部」「引用」の種別を付けると、例外を感覚で残さずに済みます。

共同作業中の原稿では、置換を始める前に他の編集を止める必要があります。本記事は単独で管理する複製を前提とし、リアルタイム共同編集の競合解決は扱いません。作業中に原稿が外部変更された場合は、現在の置換を中断し、新しい正本から件数を取り直します。

結論:旧語2件を正しく残せたら完了

45万字の複製で旧語12件を検索し、変える10件と残す2件へ分類します。一章の2〜3件から始め、章ごとに旧語と新語を検索してから次へ進みます。最後に別名保存・再読込し、旧語2件が意図した引用、新語の増分10件が対象文脈にあることを確認します。

Rune Studioのファイル内検索・置換と大容量時に残る機能は、Rune Studioの商品ページで現行Mac版の範囲を確認できます。最初の一歩は全置換ではなく、旧表記12件の文脈を読み、残す2件へ先に印を付けることです。