情報アイテムの保存時振り分けNo.28934
nishi さん 06/10/20 09:32
 
秀丸メールをいつも便利に使わせていただいております.
ありがとうございます.

情報アイテムについてですが,
一つ確認と要望があります.
最近,情報アイテムを良く使うのですが,保存先を振り分けるために,
情報アイテムのあて先で***@.itemと書く場合の***の文字列で振り分け設定し
ております.
しかし,保存時には,必ず作成したフォルダに保存しますか?という確認ダイアログ
がでます.
一端,作成時のフォルダに保存して,後から振り分けを手動で行う,というのも2度
手間のような感じがしておりました.
保存時にフォルダを一つ一つしていするのも,同様,せっかくの振り分け設定が活か
されないように思われました.

この保存フォルダを,振り分け設定を反映したフォルダにする設定がないか,調べて
みたのですが,見つかりませんでした.
このようなことは可能でしょうか?
あるいは,このような機能を追加することは可能でしょうか?

[ ]
RE:28934 情報アイテムの保存時振り分けNo.28935
秀まるお2 さん 06/10/20 09:43
 
 情報アイテムの保存先と振り分けを関係づける機能は無いのですが…。

 1つ、それに近い目的をする用の関数は用意しています。SetInfoItemFolder
という関数があります。たしか似たようなご要望があって、仕方なく(?)その
関数を追加して、それでがまんして欲しいみたいな話で作った物ですけど。

 それでどうでしょ?。一回ヘルプ見て欲しいです。テンプレートの中に入れて
使うことも一応出来ると思います。

 あるいは、しいて、うまくマクロを工夫すれば「保存してすぐ振り分け」って
ことも出来るかもしれませんが。

[ ]
RE:28935 情報アイテムの保存時振り分けNo.28973
nishi さん 06/10/23 17:52
 
ご連絡遅くなりすみません.

SetInfoItemFolderですと,特定のフォルダを指定することになるので,振り分けす
るあて先ごとにテンプレートを作ることになりそうですね.

受信したメールを編集して情報アイテムとして保存するようなことがよくあり,この
場合は,受信メールを情報アイテム宛に転送するように処理してます.テンプレート
にSetInfoItemFolderを埋め込むやり方の場合,このような保存には対応できないよ
うに思いますが,どうでしょうか.

以前同様の要望が出たときに,SetInfoItemFolderの関数を作られたとのことですが,
それは,保存時に振り分け,という動作を秀丸メール本体で実現することに問題があ
るからでしょうか.
そのような事情であれば仕方ないとは思いますが,可能であるなら機能追加の検討の
一つに入れていただけると,うれしいです.

それと,保存してすぐ振り分ける,というマクロを作るという案ですが,
この場合は,新規作成画面にマクロのボタンなどを登録したいのですが,今,ツール
バーに登録できるマクロが8までしか選べないようです.それ以上のマクロのアイコ
ンはツールバーのアイコン追加に出てこないようですが,8以上を追加することは可
能でしょうか?
マクロの11までは,既に秀丸エディタで使っており,新規メール作成では,これが
反映されているようで,12以降に登録することになります.

また,保存してすぐ振り分け,というマクロも実はどう書いてよいかわかりません.
新機能として追加の検討が難しく,マクロの8以上を新規メール作成のツールバーに
表示可能であるならば,マクロを
マクロの内容について教えていただけるとうれしいです.

お手数ばかりおかけしてしまいすみません.

[ ]
RE:28973 情報アイテムの保存時振り分けNo.28974
K'zawa さん 06/10/23 22:11
 
nishiさんこんにちは、
K'zawa/ユーザーです。

>SetInfoItemFolderですと,特定のフォルダを指定することになるので,振り分けす
>るあて先ごとにテンプレートを作ることになりそうですね.

下記のマクロで複数の保存先に対応することは可能です。

手順
・To:に、"AAA"又は"BBB"等と記入する。
 ("@.item"は書いても書かなくても可)
・マクロを実行する。
・保存する。

また、このマクロを呼び出すテンプレートを用意しておけば、
To:に記入〜テンプレートの切り替え〜保存
とゆう風に1つのテンプレートで出来ます。
どうでしょうか?

XXX.mac
---------- マクロ始まり ----------
loaddll "tkinfo.dll";
$s=dllfuncstr("CurrentHeader","To");
#n=strstr($s,"@.item");
if(#n==-1){
    $a=dllfuncstr("SetHeader","To",$s+"@.item");
}else{
    $s=leftstr($s,#n);
    }

if($s=="AAA"){
    $Account="";
    $folder="受信\\YYY";
}else if($s=="BBB"){
    $Account="";
    $folder="User\\ZZZ";
}else{
    $Account="";
    $folder="受信";
}
#n=dllfunc("SetInfoItemFolder",$Account,$folder);
if(!#n) message "フォルダがないかも";
freedll;
---------- マクロ終わり ----------

--- テンプレート始まり ---
$(ExecMacro,"XXX.mac")$-
--- テンプレート終わり ---


秀まるおさん
SetInfoItemFolder関数のヘルプで、
パラメータ3に1か2が指定できる旨の説明のあと、
数行下で0と1と書かれていますが、
誤記でしょうか?それとも省略=0も含めて3つあるのでしょうか?

[ ]
RE:28974 情報アイテムの保存時振り分けNo.28980
秀まるお2 さん 06/10/24 09:14
 
> パラメータ3に1か2が指定できる旨の説明のあと、
> 数行下で0と1と書かれていますが、
> 誤記でしょうか?それとも省略=0も含めて3つあるのでしょうか?

 3つあるってことになります。

 省略するか、または数値の0を指定すると、情報アイテム保存時の確認メッ
セージについては「全般的な設定・上級者向け・その他」の「情報アイテムを保
存する時に保存先の確認メッセージを表示しない」ってオプションのON/OFFに従
った動作になります。

 一応ヘルプに追加します。

[ ]
RE:28973 情報アイテムの保存時振り分けNo.28981
秀まるお2 さん 06/10/24 09:38
 
 マクロでやることが出来るかどうか、出来るとしたらどういうマクロになるの
かは、僕の方で考えてみます。

 K'zawaさんのマクロの例は、あくまで「振り分けを使って」というのじゃなく
て、マクロの中で振り分け相当の処理を書いてしまうようなイメージだと思いま
す。それでよければそうして欲しいですが。

[ ]
RE:28981 情報アイテムの保存時振り分けNo.28983
秀まるお2 さん 06/10/24 10:30
 
 ってことで考えてみたら、マクロとしては、

    loaddll "tkinfo.dll";
    #n = dllfunc("SaveDraft");
    #n = sendmessage( hidemaruhandle(0), 0x0111, 40105, 0);
    exit;

 ってマクロでいけるようですけど、これはこれで、「ファイル・草稿に保存」
を実行する代わりにマクロ実行しないといけないことにはなります。マクロ用の
ツールバーのボタンは8つしか表示出来ないです。なので、その辺はユーザー様
の方で工夫してもらうしか無いです。

 情報アイテム保存と同時に振り分け実行って案は以前にも要望されたことがあ
るんですが、情報アイテムごときのために設定がまた増えるのもなんだかなぁと
思って追加してないです。また考えてみますが。

[ ]
RE:28974 情報アイテムの保存時振り分けNo.28988
nishi さん 06/10/24 12:03
 
K'zawaさん,こんにちわ.
コメントありがとうございます.

>下記のマクロで複数の保存先に対応することは可能です。

マクロありがとうございます.
テンプレートに埋め込んで,試してみました.
あて先が,***@.item
のときはうまく動作しました.
しかし,あて先の挿入のときに,
○○○<***@.item>
という風に挿入されると,
***での場合わけがうまくできず,全部「受信」になってしまいました.

これを回避することは可能でしょうか?

少なくとも,今のままでも少し試してみようと思います.
コメント,マクロ,ほんとにありがとうございます.

[ ]
RE:28983 情報アイテムの保存時振り分けNo.28990
nishi さん 06/10/24 12:54
 
秀まるお2さん,マクロありがとうございます.

> ってことで考えてみたら、マクロとしては、
>
>    loaddll "tkinfo.dll";
>    #n = dllfunc("SaveDraft");
>    #n = sendmessage( hidemaruhandle(0), 0x0111, 40105, 0);
>    exit;

とりあえず,秀丸エディタのマクロを維持的に解除して,
上記のマクロを試してみました.

マクロ実行時,「受信フォルダに保存します」というメッセージが出るのは,致し方
ないとすれば,私が希望した動作そのものです.

問題は,秀丸エディタで設定したマクロで8つ埋まっていることなんですね...
秀丸メールと,秀丸エディタで,マクロの登録を切り替えるなんて技,ないですよ
ね....

とりあえず,しばらくは,秀丸エディタのマクロを解除して,試してみます.ありが
とうございます.

[ ]
RE:28990 情報アイテムの保存時振り分けNo.28991
nishi さん 06/10/24 12:56
 
nishiです.

自己フォローです.
上記コメントで誤字がありました.

>とりあえず,秀丸エディタのマクロを維持的に解除して,

維持的に解除して → 一時的に解除して

です.すみません...

[ ]
RE:28990 情報アイテムの保存時振り分けNo.28992
秀まるお2 さん 06/10/24 13:22
 
> マクロ実行時,「受信フォルダに保存します」というメッセージが出るのは,致し方
> ないとすれば,私が希望した動作そのものです.

 「全般的な設定・上級者向け・その他」の「情報アイテムを保存する時に保存
先の確認メッセージを表示しない」をONにするか、または、

    #n = dllfunc("SetInfoItemFolder", "", "", 1);

 って行をSaveDraftの前に入れればいいです。

> 秀丸メールと,秀丸エディタで,マクロの登録を切り替えるなんて技,ないですよ
> ね....

 秀丸メール本体での「マクロ・マクロ登録...」の「エディタ側」で、「秀丸
メール側で指定する」にすればいいと思いますけど。

[ ]
RE:28988 情報アイテムの保存時振り分けNo.28993
K'zawa さん 06/10/24 13:37
 
K'zawaです。

秀まるおさんのマクロで間に合ったようですが、

>○○○<***@.item>
>という風に挿入されると,
>***での場合わけがうまくできず,全部「受信」になってしまいました.
>
>これを回避することは可能でしょうか?

その形式は想定外でした。
とりあえず、

loaddll "tkinfo.dll";
$s=dllfuncstr("CurrentHeader","To");
#n=strstr($s,"@.item");

の部分を、

loaddll "tkinfo.dll";
$s=dllfuncstr("CurrentHeader","To");
$s=dllfuncstr("SetEmailOnly",$s);
#n=strstr($s,"@.item");

にすればいけると思います。
(テストしてない汗)

では。

[ ]
RE:28992 情報アイテムの保存時振り分けNo.28995
nishi さん 06/10/24 15:05
 
秀まるお2さん,ありがとうございます.

>    #n = dllfunc("SetInfoItemFolder", "", "", 1);
> って行をSaveDraftの前に入れればいいです。
>
>> 秀丸メールと,秀丸エディタで,マクロの登録を切り替えるなんて技,ないですよ
>> ね....
>
> 秀丸メール本体での「マクロ・マクロ登録...」の「エディタ側」で、「秀丸
>メール側で指定する」にすればいいと思いますけど。

二つとも試して,希望通りの動作ができました.
ありがとうございます.

秀丸メールの奥は深いですね...まさか,ここまで設定できるとは.

[ ]
RE:28993 情報アイテムの保存時振り分けNo.28996
nishi さん 06/10/24 15:08
 
K'zawaさん,ありがとうございます.

>とりあえず、
>
>loaddll "tkinfo.dll";
>$s=dllfuncstr("CurrentHeader","To");
>#n=strstr($s,"@.item");
>
>の部分を、
>
>loaddll "tkinfo.dll";
>$s=dllfuncstr("CurrentHeader","To");
>$s=dllfuncstr("SetEmailOnly",$s);
>#n=strstr($s,"@.item");
>
>にすればいけると思います。

秀まるお2さんのマクロで動作を実現できましたが,
K'zawaさんのコメントにも大感謝です.

さっそく上記の修正を試してみようと思います.
今後,ちょっと違う用途に転用できるかもしれないですからね.

ほんとにありがとうございました.

[ ]