Windows版TeXポータブル化(改良版)

WinShellを起動するときのバッチファイルを工夫すれば、ランチャーを使わなくても PATH の設定ができることがわかった。ポイントは、%~d0% によりバッチファイルが起動されたときのディスクが参照できること。うちの環境だと %~d0% には “H:” という文字列が入る。これ以外にも、ファイル自体のフルパスなど、いろいろと参照できるようだ。ふーん、Windowsってダメダメだと思っていたけど、UNIXの真似事が少しはできるんだ。

ということで、StartWinShell.bat とか適当にバッチファイルを作り、次のように記述。

@echo off
set PATH=%~d0\App\Win32TeX\bin;%~d0\App\FoxitReader23;%PATH%
start WinShell.exe

一行目の @echo off は、単にこれらのコマンドをターミナルで表示させないものだから、本質的ではない。2行目でパスの設定をしている。ここではTeX関係のプログラム類が入っているディレクトリーと PDF リーダーである FoxitReader にパスを通した。よく使うプログラムはUNIXみたいに \bin ディレクトリーにまとめて放り込む方が効率が良いかもね。パスを通したあとで、WinShell.exe を起動して終了。

これでランチャー不要のポータブル化ができた。WinShellでのプログラム類の設定では、プログラム名を書くだけで良い。忘れてならないのは、WinShellを直接起動させずに StartWinShell.bat の方を起動させること。

書いていて気づいたのだが、%~dp0% という、起動プログラムまでのフルパスを表す変数を使えば、完全にリロケータブルな (つまり、どのディレクトリーに配置しても作動する) パッケージを作ることも可能だと思う。それには、Win32TeXパッケージとWinShell、FoxitReaderなどをひとまとめにする必要があるが。

“Windows版TeXポータブル化(改良版)” への1件の返信

  1. ピンバック: Nyangoのブログ

コメントを残す

メールアドレスが公開されることはありません。