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"」とすると、ウインドウで入力した置換後の文字がファイル名になります。