引用符を変換する (Illustrator CS2)

今回はIllustrator CS2で引用符である"〜"を“〜”のように変換するスクリプトです。(まあ、前回のIllustrator版です)
スクリプトは2種類あります。スクリプト1は、変換したい引用符があるテキストフレームを選択してから実行します(テキストフレーム/テキストエリア内の文字を選択しないでください)。テキストフレームは複数選択でき選択したテキストフレームのみ引用符が変換されます。
スクリプト2はスクリプト1の改良版で引用符が正しく閉じられていない場合、警告を表示します。
どちらのスクリプトも文字の色などを指定する前に実行してください。文字の色などを指定してしまった場合には文字のみ置換され色などは最初に置換された引用符の属性が反映されてしまいます。


【スクリプト1】
LQ = "“"; // 開始カッコ
RQ = "”"; // 閉じカッコ
function convertQ()
{
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
for (j=0; j<selObj[i].paragraphs.length; j++)
{
count = 0;
result = "";
try { len = selObj[i].paragraphs[j].contents.length; }
catch(e) { break; }
for (k=0; k<len; k++)
{
c = selObj[i].paragraphs[j].contents.charAt(k);
if (c == '"')
{
c = LQ;
if (count & 1) c = RQ;
count++;
}
result += c;
}
selObj[i].paragraphs[j].contents = result;
}
}
}
convertQ();


【スクリプト2】
LQ = "“"; // 開始カッコ
RQ = "”"; // 閉じカッコ
function convertQ()
{
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
for (j=0; j<selObj[i].paragraphs.length; j++)
{
count = 0;
result = "";
try { len = selObj[i].paragraphs[j].contents.length; }
catch(e) { break; }
for (k=0; k<len; k++)
{
c = selObj[i].paragraphs[j].contents.charAt(k);
if (c == '"')
{
c = LQ;
if (count & 1) c = RQ;
count++;
}
result += c;
}
selObj[i].paragraphs[j].contents = result;
}
if (count & 1)
{
alert("括弧が正しく閉じられていません");
}

}
}
convertQ();



[サンプルをダウンロード]