索引のノンブル修正 | 3倍早くなるためのDTP講座

3倍早くなるためのDTP講座

DTPの作業を早くするためのテクニックを綴っていこうと思っています。

ノンブル修正が大変なのは目次よりも索引です。書籍によって項目の数はバラバラですが、数字は飛ぶし、数は多いし字は小さいし、これが500ページ立ての50ページ以降に2を足すとなると、考えただけでも恐ろしい……。
3倍早くなるためのDTP講座
こんなのが20ページくらいあったら……。

で、方法を考えてみました。せうぞーさんに教えてもらったスクリプトも使えそうですが、まだ未検証ですのでせうぞーさんの正規表現連続置換スクリプト「regex_continuous_substitution.jsx」でいきましょう。

単純にページが送られただけならば、連続置換をうまくつかえば手動よりも早く正確にできるはずです。

連続置換は確認しながらの作業はできません(だからこそ自動化なのですが)。これは命令を間違えるとどこがどう置換されたかわからないため、後からの確認は困難です。

まずは連続置換のポイントを押さえて確実に置換しましょう。

●確実に拾う
数字はノンブルだけとは限りませんし索引の場合は行末とも限りません。。そこでノンブルに文字スタイルを当てて、「文字スタイルの当たっている数字」のみを検索させます(※部分的にスタイル当てているようなものはスタイルが上書きされてしまうので使えません)。


●再置換しないようにする
連続置換は一つずつ検索置換しているので、例えば1→2、2→3にする設定だと1が3になってしまいます。
最初に文字スタイルに置き換えるので、置換後は別の文字スタイルにして再置換を防ぎます。


●拾い間違いを防ぐ
11→12の置換だと、111を121にしてしまったり、1111を1212にしてしまいます。正規表現の単語の境界を使い、正確な連番の数字を選択するようにします。


下ごしらえとして、InDesign書類に「修正前」と「修正後」の文字スタイルをつくり、ノンブルを「修正前」文字スタイルにしておきます(下線などでマーキングをしておくと見た目で置換がわかります。ここでは前を赤、後を青にしています)。

今回は500ページ立ての50ページに2ページ追加になったけど、200ページで2ページ削除して以降は変更なしとします。

項目とノンブルの間には基本は全角スペースですが、改行や強制改行など不特定のキャラクタが入っている場合もあります。
3倍早くなるためのDTP講座
こんな感じで。

連続するノンブルの境界は必ず半角カンマ+半角スペースで区切っているとします。この場合、
3倍早くなるためのDTP講座

検索側
[0-9, ]+$
詳細置換
文字スタイル:修正前

とすれば、行末からノンブルと半角カンマ、半角スペースのみにスタイルを当てられます。実際に置換するのは数字のみなのでスペースとカンマにスタイルが当たっても問題ありません。
3倍早くなるためのDTP講座
赤いのが文字スタイルの当たったところ。


次に設定ファイルを作ります。

Excelでファイルを開き、A列に1から1ずつ500行まで連続フィルコピーします。

それをB列にコピーし、C列の50行目に変更分SUM式(A列+2)を作り199行までコピーします。

D列にc:修正前、E列にc:修正後として最後の行までフィルコピーします。

※このファイルはC列を変更すれば他にも使い回しができます。

B列の数字の前後に\b(単語の境界)を追加し、B~E列の実際に使う行の0~199行のみを抜き出し、設定ファイルとしてテキスト形式で保存します。
3倍早くなるためのDTP講座
Excelのファイル。

3倍早くなるためのDTP講座
抜き出したテキスト。

これで「regex_continuous_substitution.jsx」をかければ設定部分のみ置換され、修正後の文字スタイルが適用されます。

3倍早くなるためのDTP講座
青い部分が置換されたところ。

下線のマーキングはスタイル設定でカンタンに消せます。