InDesign(インデザイン)における検索・置換のコツ
大量の修正に便利な検索・置換
DTPには修正が付き物です。最近は著者が原稿を自分でテキスト・データに入力することが多くなったため、きちんとした原稿が入稿されればそのまま印刷まで無修正でいってもおかしくないように思いますが、実際にはレイアウトした後で大幅な修正が発生することも少なくありません。
修正は制作作業の中で大きなウエイトを占めています。組版作業は自動化などによって省力化を図ることも可能ですが、修正だけは手作業で一つ一つこなしていかなければならず、赤字個所が多いと手間も馬鹿になりません。しかも、修正個所が多ければ多いほど修正ミスの可能性も高くなるのです。
ただ、修正がそれぞれまったく異なるものであれば、一つずつ直していく以外方法はありませんが、複数の個所で同じ修正をするような場合は、検索・置換機能を使うと便利です。特にInDesignの検索・置換機能は、選択されているひとつながりの文章だけでなく、ドキュメント全体や開いている全てのドキュメントに対して一括で検索・置換することができ、うまく利用すれば効率的かつ確実な修正作業が可能になります。
さまざまな検索機能
InDesignの検索・置換機能の大きな特徴は、単なる文字列以外に文字の属性など多彩な検索や置換ができるという点でしょう。検索・置換機能というと、ある文字列を検索し、それを別の文字列に置き換えるというのが一般的なイメージです。しかし、実際の仕事では、単純な文字列の置換以外にもさまざまな処理が必要になってきます。
たとえば、特定のアルファベットを全てイタリックにするとか、特定条件の文字列を全て太字にするなど、複雑な条件による文字の特定を絡めた修正も求められるわけです。CS3以降のInDesignは「正規表現」に対応しており、こういった処理も比較的簡単にできます。
ここでは正規表現以外の複雑な検索・置換処理について考えてみます。
正規表現が使えなかったころからInDesignに用意されていたのが「特殊文字」です。特殊文字とは、通常では検索・置換に指定できない文字などを検索・置換するための記号。たとえば、著作権記号や登録商標記号といった特殊な文字の他、各種スペースや引用符、ハイフン・ダッシュ各種、タブ、改行、アンカー付きオブジェクトのマーカーなど、そのままでは入力できないものを指定することが可能です。
特殊な文字だけではなく、漢字やアルファベット、数字など文字種を指定することもできます。InDesignにはワイルドカードとして「文字」「数字」「欧文アルファベット」「漢字」といった文字種を検索する特殊文字が用意されています。
また、字形を特定した(異体字)検索・置換や文字種の変換(カタカナ、英数字の全角・半角など)もサポートしています。
検索・置換でInDesign 2020からサポートされたのがカラーです。オブジェクトの塗りや線のカラーを検索・置換するという機能で、基本は指定されたスウォッチの色を検索・置換するものですが、カラーパネルで濃度が指定されている場合はその濃度での絞り込み検索・置換もできます。
さらに、スウォッチを使わずカラーパネルで色を指定したオブジェクトについては、「名称未設定カラー」としてそのカラーが検索リストに現れるので、その色および濃淡色で検索・置換することができます。
なお、スウォッチに登録した色については、スウォッチパネルで色を右クリックすれば直接検索・置換ダイアログに移行でき、迅速な処理が可能です。
そのほか、塗りや線、テキストフレームの各オプション、角の形状など、属性を指定することによるオブジェクトの検索・置換機能もあります。
属性の検索置換
ここまで見てきただけでも検索・置換機能としてはかなり強力ですが、InDesignの検索・置換をさらに便利にしているのが検索形式・置換形式です。これは検索・置換する際にさまざまな属性を条件に加えて検索・置換するというもので、文字であれば書体や文字サイズ、カーニング、行送り、文字揃え、変形率、文字ツメなどの文字や段落の属性、禁則や文字組みなど日本語文字組版の各設定、文字スタイル・段落スタイルなど、文字に関してInDesignで指定できるあらゆる属性が検索・置換の条件として指定できます。
この検索形式・置換形式は、単なるテキスト文字列にだけでなく、正規表現や文字種変換においても利用することができ、うまく活用できればきわめて強力な機能として作業効率の向上に貢献するはずです。
たとえば、テキスト上で2桁以上の数字に続くアルファベットを検索して、パーレンで囲んだイタリックの上付きにするといった処理を考えてみましょう。
検索と置換ダイアログで正規表現タブを選び、検索文字列欄に肯定後読み+数字2桁を入力「(?<=\d\d)」し、さらに欧文アルファベットの特殊文字である「[\l\u]」を入れます。続いて「置換文字列」に検索結果の「見つかったテキスト」をパーレンで挟んだ「($0)」を入力し、「「置換形式」で上付きのイタリック書体を指定して、置換を実行すれば簡単に置換処理を行えます。なお、検索・置換形式には、文字そのものの属性だけでなく、文字スタイルや段落スタイルを指定することも可能です。
一度に目的の検索・置換処理ができない場合は、検索置換で文字色など新たな属性をいったんあて、それをさらに検索置換していくといったように、検索置換を複数の工程に分けることで検索する対象を絞り込んでいく方法も有効でしょう。もちろん、データに変更を加える場合は十分注意する必要があります。
(田村 2006.7.31)
(田村 2024.2.13更新)