公開日:2014年1月30日
InDesignタグを使ったら、スタイル付けが格段に楽になり、日頃やっている書籍にかかる時間が1ページあたり1分削減できました。
・InDesign(ただしCS5には不具合があります:タグ付きテキストを配置すると強制終了する(InDesign CS5))
・正規表現、エンコーディング指定ができるテキストエディタ(私はMacであれば「mi」、Windowsであれば「サクラエディタ」です。)
・Excel(OpenOffice)
・段落と文字スタイル名のリストを取得.jsx(「InDesignerの悪あがき」さんの「グループ化された段落スタイルを取得」スクリプトを改造。テキストフレームに、使用しているスタイル名を書き出します。)
・テキストファイルの先頭に<SJIS-MAC>、<SJIS-WIN>などのエンコード指定をする。
・ファイル先頭で指定したエンコードでテキストファイルを保存する。改行コードはOSに合ったもの(WindowsはCR+LF、MacはCR)にしておく
・テキスト各行の先頭に<pstyle:(スタイルグループ名:)段落スタイル名>を入力する。その際、タグを使用した段落中に「<」があると、その箇所もタグの起こしカッコと認識されてしまうので、「¥<」のようにテキストファイル内でエスケープしておく必要がある
・スタイル名の取得(←スタイルグループを使っている場合、ひとつずつスタイル名をコピー&ペーストは面倒だし漏れがある…など)
・テキストへのタグ付け(←ひとつひとつ付けていては面倒)
1.inddテンプレートから、スタイル名を抽出し、Excel、テキストエディタを使ってタグを作成する(InDesign、Excel:作例ではOpenOffice)
まず、使用するテンプレートを開きます。この時点でスタイル等は作られています。
次に、スクリプト「段落と文字スタイル名のリストを取得.jsx」を使用して、スタイル名をテキストフレームに取得します。
書き出されたテキストフレームの内容を、「InDesignタグ生成用.xls」の「スタイル種類定義」の列にコピー&ペーストする。これでタグの大枠ができます。
alt=”スタイル名抽出>
2.タグ付けした行を全てテキストエディタの新規ファイルにコピー&ペースト(Excel、テキストエディタ)
Excelからテキストエディタにコピー&ペーストすると、列区切りはタブになってペーストされます。「検索/置換」(検索文字列:¥t、置換文字列:空白)でタブを削除して、使えるタグの形にします。この手順は、Excel内の設計を作り込むことで省略できます。リンク先で紹介しています。
3.支給テキストに対しタグ付けをする(テキストエディタ)
トリガーとなる文字(例えば、小見出しなら「●」、手順なら[1]など)がある場合は、検索/置換で一気にタグ付けができます。正規表現の「^(段落の始まり)」を併用すると、より確実な置換ができます。
タグを付け終わったテキストは、「tagテスト-after.txt」として別に保存します。
4.テキストフレームに該当のテキストファイルを「配置」する
テンプレートのテキストフレームを選択し、タグを付けたテキスト「●●-tag.txt」を[配置]します。
[配置]ダイアログでは[グリッドフォーマットの適用]のチェックを外します。チェックしていると、正しくスタイルが適用されません。
テキストの配置で、テキストがスタイル適用された状態で流し込まれました。
ひとつずつ手作業でスタイルを適用してもいいんですが、スタイルに設定できるショートカットの数も限られるし手首が疲れるので、タグのメリットは確かに大きかったです。先日の面談で、悔しい思いもしましたがつかめた物もあったので、ありがたい経験でした。
流星さんから方法をいただきました。
@youichi7imazeki 「=A1&B1&C1&D1」などにしておいて、その列だけコピペするように設計するとタブ消し作業無くなるとおもいまーす。知ってたらごめんなさい
— 流星光輝 (@ryusei3000) 2014, 1月 29