Zazelさん、藤岡さん、こんばんは
Zazelさんwrote:
> | exit system map {m/ $your_gap [ ] /oxms ? qq{"$_"} : $_} $^X,
> | "$filename.e", @ARGV;
> この行だけ見ても、Unix系だとダブルクォートで囲んだら動かないなど、
> MS-DOS系OSに依存した書き方がされています。他にも多重起動時の対策とか、
> パーミッションとか、テスト用スクリプトがDOS依存など、幾つもあります。
if (...DOS-like system...) {
exit system map { } ...
}
else {
exec $^X, "$filename.e", @ARGV;
}
のようにして試してみます。
多重起動時の対策は、大崎 博基さんの
排他制御(ファイルロック)をする
http://www.din.or.jp/~ohzaki/perl.htm#File_Lock
を参考にして考えてみます。
パーミッションはエスケープ前のスクリプトと同一の値をエスケープ後の
スクリプトにも付加しようと思います。
my $mode = (stat($filename))[2] & 0777;
chmod $mode, "$filename.e";
のように。
稲葉wrote:
>> use re 'eval'; はもともとは m// や s/// の中で (?{$foo=1})
>> のように変数を使うために使っていたのですが、今の Sjis.pm では
>> このやり方をしなくなっています。
ここまでは本当ですが、
>> なので実は use re 'eval'; はもう要らないのでした。
これは間違いでした。(?{code}) の外側でも $foo や @foo が記述されて
いると、なぜか "use re 'eval';" が必要なようです...簡単にはいきま
せんでした。
藤岡さんwrote:
> もう忘れていましたけど^^;)、@niftyの@homepageにはまったくライブラリは
> 準備されておらず、必要なものは自分ですべて準備する必要があります。
>> いろいろとライブラリも置いていましたが・・・
>> reの行は削除して、Ejis.pm関連で必要なものも置いてみましたが、まだダメ、
>> あっ、だめだ。Solaris用のライブラリが必要ですね。auto\Fcntl関係。
>> dllが入ってる。
use して使っているのは、
(1) strict
(2) vars
(3) Fcntl
(4) Symbol
(5) Carp
(6) FindBin
です。これらがさらに use しているモジュールがあります。全部なくすのは結構
難しいです(無理かもしれません)。ということは @nifty で使うのは無理っぽい。
# UNIX 環境として ubuntu 9.10 を準備しました。茶色いデスクトップが気に
# 入っています。
# いつも「スレッドの最初の発言」になってしまってすみません。
稲葉 準
_________________________________________________________________
今年こそ節約しよう!まずはネット代から。
http://campaign.live.jp/eaccess/Top/