[Mew-dist 06087] Re: Selection of Maildir and NewsDir by Config
SHIMADA Nobutaka
shimada at example.com
1998年 8月 21日 (金) 18:52:59 JST
島田@阪大です.
> > それで、immv や imrm が上記の仕様に従わないのは、expand_path を利用し
> > 忘れているからです。誰とは言いませんが、あるプログラマ(仮に nom さんと
>
> これうそです。immv や imrm が呼び出している関数が expand_path を呼んで
> いるので問題ありませんでした。結局 "~/" は展開できるけど、"~user/" が
> 展開できないのが問題なので、UNIX 環境での挙動は修正しました。他の環境
> は知りません。
どうもありがとうございます.こちらでも少し自前でいじってみました.
Config.pmの中,
set_value(),set_value_case()中の
if ($desc =~ /F/) { # xxx how about f
my ($i, $N) = (0, scalar(@val));
while ($i < $N) {
* $val[$i] = "+$val[$i]" unless $val =~ /^[+\-=%~]/;
$i++;
}
}
} elsif ($desc =~ /F/) { # xxx how about f
# +inbox -> + inbox -> --src +inbox
** if ($val =~ /^[+\-=%~]/) {
${$vnam} = $val;
} else {
${$vnam} = "+$val";
}
という部分のうち*の行をそれぞれ
* $val[$i] = "+$val[$i]" unless $val =~ /^([+\-=%~\/])|([a-zA-Z]:)/;
** if ($val =~ /^([+\-=%~\/])|([a-zA-Z]:)/) {
と書き換え,
read_opt()中の
} elsif (/^[+\-=%.\/~])/ && $O_FOPT) {
も
} elsif (/^([+\-=%.\/~]|([a-zA-Z]:))/ && $O_FOPT) {
と直して,winのa:などにも対応してフルパスを認識させています.
ただ,imlsをみると
if (/^[+=.\/~]/) {
require IM::Folder && import IM::Folder qw(get_message_paths);
local_files($_, @ARGV);
という部分があって,これはwinで使うには
if (/^([+=.\/~])|([a-zA-Z]:)/) {
require IM::Folder && import IM::Folder qw(get_message_paths);
local_files($_, @ARGV);
などに直す必要があり,imcatにも同様の部分があります.
IMに関してはさし当たってこれで用が足りるようになりました.mewのほうは
次のバージョンを待ちます.
---------------------------------------------------------------------
島田 伸敬@制機.工.阪大 06-879-7333 白井研
機械系D棟4F E-mail shimada at example.com
---------------------------------------------------------------------
Mew-dist メーリングリストの案内