InDesignでパーレンの起こしと受けのペアを一括変換

前処理としてテキストエディタで処理できれば問題はないのですが、組み込んでから半角パーレンを全角に変換しなければならないケースは結構あります。
文字種変換ではパーレン類は変換対象ではないので<http://wp.me/p1Cs3W-8L>、選択対象を一括で変換するという方法はないようです。
となると検索/置換するしかないのですが、パーレンは起こしと受けのペアとなるので面倒です。
そこで、2回が1回になるだけでも有り難いということで、スクリプトを書いてみました。

tell application "Adobe InDesign CC"
	activate
	set SelectedStrngs to the selection
	if SelectedStrngs is not {} then
		set {find grep preferences, change grep preferences} to {nothing, nothing}
		set find_replaceStrList to {{"[ ]?\\(", "("}, {"\\)[ ]?", ")"}, {"[ ]?\\[", "["}, {"\\][ ]?", "]"}}
		set case sensitive of find change text options to false
		set include footnotes of find change text options to false
		set include hidden layers of find change text options to false
		set include locked layers for find of find change text options to false
		set include locked stories for find of find change text options to false
		set include master pages of find change text options to false
		set whole word of find change text options to false
		repeat with i in find_replaceStrList
			set find what of find grep preference 1 to (item 1 of i) as string
			set change to of change grep preferences to (item 2 of i) as string
			--set FoundChar to find grep SelectedStrngs
			change grep SelectedStrngs
		end repeat
		--
		set {find grep preferences, change grep preferences} to {nothing, nothing}
		display notification "終わりました。" with title "完了"
	else
		display notification "文字列を選択してから実行しましょう。" with title "注意!"
	end if
end tell

単純にループしているだけですから、‘find_replaceStrList’リストに付け加えれば何種類でも一括変換できます。

注記)エラーがでることがありますが、同じスクリプトを繰り返し動作させるとエラーなしで処理できてしまいます。なんなんでしょうか?
今回、エラーダイアログのキャプチャーを載せたいと思って試したところ、何度やってもエラーがでないので諦めましたが、これも謎です。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中