texの一部を置換する
tex本体のファイルはテキストなので、Cなどの言語で簡単に特定文字の検索・置換ができます。
たとえばwindows script host(WSH)を使う場合は次のようになります。
REM Copyright(C) 2009 Issei Kurahashi
REM All Rights Reserved
'**Start Encode**
Option Explicit
Dim strRepl, strWith, AfterRep
strRepl = "検索・置換対象文字列"
strWith = InputBox("置換後の文字を入れて下さい") 'inputboxに入力した文字に置換する
Dim objFso
Set objFso = CreateObject("Scripting.FileSystemObject")
Dim objFile
Set objFile = objFso.OpenTextFile("texファイルのフルパス", 1) '読み込み対象texファイル
AfterRep = Replace(objFile.ReadAll, strRepl, strWith) '検索、置換を行う
Set objFile = objFso.CreateTextFile("置換後texのフルパス") 'ファイル作成
objFile.Close
Set objFile = objFso.OpenTextFile("置換後texのフルパス", 8) '置換後のtexファイルを作成
objFile.WriteLine AfterRep
Set objFile = Nothing
Set objFso = Nothing
このプログラムで修正する必要があるのは、「検索・置換対象文字列」、「texファイルのフルパス」、「置換後texのフルパス」の三箇所。
このスクリプトを拡張子「.vbs」で保存し、ダブルクリックするとプログラムが実行されます。
”置換後の文字を入れて下さい”と書かれたウインドウが開き、そこに文字を入力すると、置換が行われます。
これを何回も繰り返せば、もとのtexファイルは触らずに、置換後のtexファイルがいくつもできることになりますね。
また、「置換後のtexのフルパス」のところにもパラメータを入れて、置換後texファイルの名前を変えていくこともできます。
その場合は「"フォルダのパス" & strWith & ".tex"」とすると、ウインドウで入力した置換後の文字がファイル名になります。