guishell ver.1.39.1 の起動時の挙動

名前: 山本和義
日時: 2009-03-05 00:19:01
IPアドレス: 218.226.119.*

guishell.exe ver.1.39.1 の起動時の仕様に関して,チェックした結果を書き記して おきます.チェックは完全なものではありません.これは,問題解決法を伝えるもの ではありません.状況結果のまとめです.また,ver.1.39.1 よりも前のものについて は知りません. 1) 環境変数 TEXMF, TEXMFMAIN がどちらも設定されていない場合 a) guishell.exe の存在する場所を基点として,..\texmf\,..\share\texmf\ が この順に探される(一つ親に移って下を探す).見つからない場合には error を出して guishell自身が終了.再帰的な検索はなされない.つまり, ..\share\share\texmf\ はマッチしない.texmf はディレクトリでなければ ならず,ファイルであった場合はマッチしない.なお,guishell.exe がドライブ のルートディレクトリにあった場合は,ルート直下にある \texmf\, \share\texmf\ がマッチする.これは,cd 等の標準コマンドでの動作と同様 である. b) texmfディレクトリが見つかったとして,それが E:\home\texmf\ であったと しよう.このとき,guishell はチャイルドプロセスに対して TEXMF=E:/home/texmf TEXMFMAIN=E:/home/texmf TEXMFCNF=E:/home/texmf/web2c のように環境変数の設定を行う(あるいは guishell自身のプロセスにおいて 環境変数の設定が行われるというべきかも知れない). 2) 環境変数 TEXMF, TEXMFMAIN の少なくとも一方が設定されている場合, guishell はともかく起動する.そして,1-b) の環境変数の自動設定はなされない. 3) 環境変数 TEXMF, TEXMFMAIN に関してはその存在だけを見ているようである. 例えば,TEX... の環境変数として TEXMF="Hello \TeX" のみを設定してやると, guishell は何の問題もなく起動する.これは,2) の場合に相当するので, 1-b) の環境変数の自動設定はなされない.(無論,このあとTeXはまともに動作は しない) 4) 環境変数 TEXMFCNF が定義されているかどうかに関しては,1)2)の起動および 環境変数の自動設定とは無関係である.ただし,TEXMFCNF のみが設定されていた 場合には 1) の状況となり,TEXMFCNF の内容が書き換えられる可能性があること には注意が必要である. 5) 環境変数 TEXMFCNF の設定の必要性については以下の状況である.これは, guishell の [オプション]->[フォーマットファイルの登録] に関わる問題である. a) guishell は,このフォーマットファイルの登録に関して,環境変数 TEXMFCNF が指し示すディレクトリの直下に各種 .fmt が存在することを仮定している. b) TEXMFCNF 設定されていない場合には,[オプション]->[フォーマットファイルの登録] と進むと,「Emergency STOP!」から始まる error となる. c) 現状では各種 .fmt はサブディレクトリ分割されて置かれており,上記の仮定は 満たされていない.このことにより,TEXMFCNF が設定されていたとしても やはり error となる.この場合には「There is no format file on your computer」から始まる error message となる.b) に比べると穏やかな表現で ある.しかしいずれにせよ "フォーマットファイルの登録" なる作業は行う ことはできない. d) この "フォーマットファイルの登録" という作業は,guishell.cfg の編集を 行うものである.guishell を使い続けてきた人ならば,うまく設定された guishell.cfg をもっているはずであり,この作業はほぼ必要が無い. guishell.cfg はテキストファイルであり,内容を見れば設定方法も予想できる ので,書き換えたければテキストエディタで編集すればよい(必要がある人は そのようにしているようである). e) guishell が再配布禁止のものである以上,上記の作業を gui で行わなければ ならないのは相当にレアなケースである(ほとんどの場合昔から使い続けている はずなのだから).それでもやりたいのであるならば,TEXMFCNF を設定しておき, 各種 .fmt を一時的にかき集めて copy して,guishell を起動すればよい.

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)