マクロ 公開データ (2000.10〜2008.01)

[1076] Mozilla-gumi BBSスレッド接続マクロ - tsune <> 03/12/31 22:25[1077] (修正版)Mozilla-gumi BBSスレッド接続マクロ - tsune <> 04/03/03 23:46[1078] 補足説明 - tsune <> 04/03/06 20:03[1079] 追加 - tsune <> 04/03/08 23:00[1082] re1:Mozilla-gumi BBSスレッド接続マクロ - tsune <> 04/08/23 01:28


Subject: [1076] Mozilla-gumi BBSスレッド接続マクロ Date: Wed, 31 Dec 2003 22:25:32 +0900 From: tsune <>
こんばんは。 tsuneです。  bbx投稿掲示板に別途投稿しました Mozilla-gumi BBS用bbxで取り込んだ書 き込みのスレッドを構築するための専用マクロです。  実行すると、選択中の書き込みのヘッダに In-Reply-To: を付加します。  スレッドは直ちには反映されませんが、別のフォルダを一旦アクティブにす るか、メールリスト欄の件名欄などを何回か繰り返してクリックすると、スレ ッドが繋がった状態になります。  「In-Reply-To:を探して番号を置き換え。」以下の行を有効にすると、既存 のIn-Reply-To:ヘッダを書き換えます。無効のままでは、繰り返し実行すると In-Reply-To:ヘッダが実行した数だけ追加されます。実害はなさそうですが。  デフォルトで無効にしてあるのは、In-Reply-To:が生成されない bbx の場合 に検索エラー音がうるさいからです。  私は、このマクロに Alt+Shift+C を割り付け、新着通知表示画面でメー ルを見るときに C を押すことでスレッドを繋いでいます(「メーラ部では1キ ーアクションを許可」が有効にしてあります。)。 // Start of EdMax Macro CHAR MacroComment[] = "Mozilla-gumi BBSのスレッド接続" // 末尾に親発言の番号が取り込まれていることが前提 // #----------------------* Prolog SaveMailEditHeaderEditMode( ) ; //保存:メール編集+ヘッダ編集 OnHeaderEdit( ) ; //ON:メール編集+ヘッダ編集 SaveCurrentAutoFormSwitch( ) ; //保存:自動整形ON/OFF OffAutoForm( ) ; //OFF:自動整形 SaveCurrentFindCondition( ) ; //保存:検索条件 // #----------------------* 参照番号を複写 SetFocusToView( ) ; //フォーカス:ビュー画面へ FindString( TRUE , FALSE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , "前の記事(元になった記事)" ) ; //文字列の検索(次を検索) IfStringNotFound( 10 ) ; //「前の記事(元になった記事)」が存在しない場合はEpilogへ FindString( TRUE , FALSE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , "mode=one&namber=" ) ; //文字列の検索(次を検索) IfStringNotFound( 8 ) ; //「mode=one&namber=」が存在しない場合はEpilogへ KeyDown( VK_RIGHT , 0 ) ; //→キー KeyDown( VK_END , 3 ) ; //Ctrl+Shift+Endキー CopyString( ) ; //コピー KeyDown( VK_HOME , 2 ) ; //Ctrl+Homeキー:メール先頭へ // #----------------------* In-Reply-To:を探して番号を置き換え。 // このブロックを有効にしたときは、「参照番号を複写」ブロックの2箇所の IfStringNotFound の数値を7ずつ増加して下さい。 //FindString( TRUE , FALSE , FALSE , TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , "^In-Reply-To: <mozgumi_@_bbs." ) ; //文字列の検索(次を検索) //IfStringNotFound( 5 ) ; //行頭から始まる「In-Reply-To: 」が存在しない場合は生成ステップへ //KeyDown( VK_RIGHT , 0 ) ; //→キー //KeyDown( VK_END , 1 ) ; //Shift+Endキー //KeyDown( VK_LEFT , 1 ) ; //Shift+←キー //PasteString( ) ; //貼り付け //IfStringFound( 4 ) ; //行頭から始まる「In-Reply-To: 」が存在した場合は生成ステップをスキップ // #----------------------* メールの先頭にIn-Reply-To:を生成、貼り付け InsertString( "In-Reply-To: <mozgumi_@_bbs." ) ; //文字入力 PasteString( ) ; //貼り付け InsertString( ">" ) ; //文字入力 InsertString( "\r\n" ) ; //改行 // #----------------------* Epilog SetFocusToList( ) ; //フォーカス:リスト画面へ DoRead( ) ; //既読にする JumpToNextMessage( ) ; //次のメールへ RestoreMailEditHeaderEditMode( ) ; //復元:メール編集+ヘッダ編集 RestoreAutoFormSwitch( ) ; //復元:自動整形ON/OFF RestoreCurrentFindCondition( ) ; //復元:検索条件 // End of EdMax Macro
Subject: [1077] (修正版)Mozilla-gumi BBSスレッド接続マクロ Date: Wed, 03 Mar 2004 23:46:02 +0900 From: tsune <>
こんばんは。 tsuneです。  少し修正しました。  修正点は、「操作する毎にいくつでも In-Reply-To:が追加される」ことの 解消です。但し、このマクロで処理する前にヘッダが既に存在する場合の検出 は、「置き換え」ブロックを有効にする必要があります。  また、「既読にする」の標準設定を無効に変更しました。  もし、おかしな点があれば、EdMax掲示板でお知らせ下さい。 // Start of EdMax Macro CHAR MacroComment[] = "Mozilla-gumi BBSのスレッド接続" // 末尾に親発言の番号が取り込まれていることが前提 // 作成:1.00(12/13/2003) // 変更:1.10(03/03/2004):操作する毎にいくつでも In-Reply-To:が追加されることの対策。 // #----------------------* Prolog SaveMailEditHeaderEditMode( ) ; //保存:メール編集+ヘッダ編集 OnHeaderEdit( ) ; //ON:メール編集+ヘッダ編集 SaveCurrentAutoFormSwitch( ) ; //保存:自動整形ON/OFF OffAutoForm( ) ; //OFF:自動整形 SaveCurrentFindCondition( ) ; //保存:検索条件 // #----------------------* 参照番号を複写 SetFocusToView( ) ; //フォーカス:ビュー画面へ FindString( TRUE , FALSE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , "前の記事(元になった記事)" ) ; //文字列の検索(次を検索) IfStringNotFound( 10 ) ; //「前の記事(元になった記事)」が存在しない場合はEpilogへ FindString( TRUE , FALSE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , "mode=one&namber=" ) ; //文字列の検索(次を検索) IfStringNotFound( 8 ) ; //「mode=one&namber=」が存在しない場合はEpilogへ DeleteString( ) ; //Deleteキー(「mode=one&namber=」を削除。)03/03/2004追加。 KeyDown( VK_END , 3 ) ; //Ctrl+Shift+Endキー CopyString( ) ; //コピー KeyDown( VK_HOME , 2 ) ; //Ctrl+Homeキー:メール先頭へ // #----------------------* In-Reply-To:を探して番号を置き換え。 // このブロックを有効にしたときは、「参照番号を複写」ブロックの2箇所の IfStringNotFound の数値を7ずつ増加して下さい。 //FindString( TRUE , FALSE , FALSE , TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , "^In-Reply-To: <mozgumi_@_bbs." ) ; //文字列の検索(次を検索) //IfStringNotFound( 5 ) ; //行頭から始まる「In-Reply-To: 」が存在しない場合は生成ステップへ //KeyDown( VK_RIGHT , 0 ) ; //→キー //KeyDown( VK_END , 1 ) ; //Shift+Endキー //KeyDown( VK_LEFT , 1 ) ; //Shift+←キー //PasteString( ) ; //貼り付け //IfStringFound( 4 ) ; //行頭から始まる「In-Reply-To: 」が存在した場合は生成ステップをスキップ // #----------------------* メールの先頭にIn-Reply-To:を生成、貼り付け InsertString( "In-Reply-To: <mozgumi_@_bbs." ) ; //文字入力 PasteString( ) ; //貼り付け InsertString( ">" ) ; //文字入力 InsertString( "\r\n" ) ; //改行 // #----------------------* Epilog SetFocusToList( ) ; //フォーカス:リスト画面へ //DoRead( ) ; //既読にする(03/03/2004無効化。) JumpToNextMessage( ) ; //次のメールへ RestoreMailEditHeaderEditMode( ) ; //復元:メール編集+ヘッダ編集 RestoreAutoFormSwitch( ) ; //復元:自動整形ON/OFF RestoreCurrentFindCondition( ) ; //復元:検索条件 // End of EdMax Macro
Subject: [1078] 補足説明 Date: Sat, 06 Mar 2004 20:03:22 +0900 From: tsune <>
こんばんは。 tsuneです。  投稿した #1076、#1077の「Mozilla-gumi BBSスレッド接続マクロ」に補足 説明が不足しておりました。  マクロにある程度詳しい方は、見ただけでお判りとは思いますが、念のため、 補足説明を投稿します。 //補足説明  マクロ内で「mozgumi_@_bbs.」という文字列が2箇所に記載されております。 この文字列は「掲示板グループ設定」)で Message-Id:用文字列(M) の欄に記 載したものを、それぞれの利用態様に応じて書き換えて下さい。  また、このマクロを他の掲示板(利用できるものがあるかどうか知りません が)に利用する場合には、「参照番号を複写」ブロックの検索文字列や参照番 号の取り込み方を適宜変更して下さい。
Subject: [1079] 追加 Date: Mon, 08 Mar 2004 23:00:22 +0900 From: tsune <>
こんばんは。 tsuneです。  どうやら、 // #----------------------* Epilog ブロックの JumpToNextMessage( ) ; //次のメールへ は、 JumpToNextUnreadMessage( ) ; //次の未読へ に変更した方が使い勝手が良さそうでした。
Subject: [1082] re1:Mozilla-gumi BBSスレッド接続マクロ Date: Mon, 23 Aug 2004 01:28:27 +0900 From: tsune <>
こんばんは。 tsuneです。 スレッド接続マクロを更に修正しましたので投稿します。 // Start of EdMax Macro CHAR MacroComment[] = "Mozilla-gumi BBSのスレッド接続" // 末尾に親発言の番号が取り込まれていることが前提 // 作成:1.00(12/13/2003) // 変更:1.10(03/03/2004):操作する毎にいくつでも In-Reply-To:が追加されることの対策。 // 1.20(03/06/2004):「次のメールへ」を「次の未読へ」に変更。 // 1.30(06/27/2004):未読メールで検索文字列が無くなるまで繰り返す仕様に変更。 //             「前の記事(元になった記事)」を削除することで無限ループを回避。 // #----------------------* Prolog SaveMailEditHeaderEditMode( ) ; //保存:メール編集+ヘッダ編集 OnHeaderEdit( ) ; //ON:メール編集+ヘッダ編集 SaveCurrentAutoFormSwitch( ) ; //保存:自動整形ON/OFF OffAutoForm( ) ; //OFF:自動整形 SaveCurrentFindCondition( ) ; //保存:検索条件 // #----------------------* 参照番号を複写 SetFocusToView( ) ; //フォーカス:ビュー画面へ FindString( TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , "前の記事(元になった記事)" ) ; //文字列の検索(次を検索) IfStringNotFound( 15 ) ; //「前の記事(元になった記事)」が存在しない場合はEpilogへ DeleteString( ) ; //Deleteキー(「前の記事(元になった記事)」を削除。)06/27/2004追加。 FindString( TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , "mode=one&namber=" ) ; //文字列の検索(次を検索) IfStringNotFound( 8 ) ; //「mode=one&namber=」が存在しない場合は「次のメールへ」へ DeleteString( ) ; //Deleteキー(「mode=one&namber=」を削除。)03/03/2004追加。 KeyDown( VK_END , 3 ) ; //Ctrl+Shift+Endキー CopyString( ) ; //コピー KeyDown( VK_HOME , 2 ) ; //Ctrl+Homeキー:メール先頭へ // #----------------------* In-Reply-To:を探して番号を置き換え。 // このブロックを有効にしたときは、「参照番号を複写」ブロックの2箇所の IfStringNotFound の数値を7ずつ増加して下さい。 //FindString( TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , "^In-Reply-To: <mozgumi_@_bbs." ) ; //文字列の検索(次を検索)( < の右の文字列(mozgumi_@_bbs.)は「掲示板グループ設定」)で Message-Id:用文字列(M) の欄に記載したもの)。 //IfStringNotFound( 5 ) ; //行頭から始まる「In-Reply-To: 」が存在しない場合は生成ステップへ //KeyDown( VK_RIGHT , 0 ) ; //→キー //KeyDown( VK_END , 1 ) ; //Shift+Endキー //KeyDown( VK_LEFT , 1 ) ; //Shift+←キー //PasteString( ) ; //貼り付け //IfStringFound( 4 ) ; //行頭から始まる「In-Reply-To: 」が存在した場合は生成ステップをスキップ // #----------------------* メールの先頭にIn-Reply-To:を生成、貼り付け InsertString( "In-Reply-To: <mozgumi_@_bbs." ) ; //文字入力( < の右の文字列(mozgumi_@_bbs.)は「掲示板グループ設定」)で Message-Id:用文字列(M) の欄に記載したもの)。 PasteString( ) ; //貼り付け InsertString( ">" ) ; //文字入力 InsertString( "\r\n" ) ; //改行 // #----------------------* スレッドを有効化 //SetFocusToFolder( ) ; //フォーカス:フォルダ画面へ //OpenThisFolder( "Account8\\受信.ctx" ) ; //このフォルダを開く //SetFocusToList( ) ; //フォーカス:リスト画面へ //KeyDown( VK_DOWN , 0 ) ; //↓キー //BackToPrevMessage( ) ; //前に戻る //ForwardToNextMessage( ) ; //次に進む // #次のメールへ JumpToNextUnreadMessage( ) ; //次の未読へ(03/06/2004上の行と変更。) SetFocusToView( ) ; //フォーカス:ビュー画面へ FindString( TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , TRUE , FALSE , FALSE , ":" ) ; //文字列の検索(次を検索):必ず存在する文字列を検索することでループ化。 IfStringFound( -17 ) ; //「複写・貼付け」へ戻る。 // #----------------------* Epilog RestoreMailEditHeaderEditMode( ) ; //復元:メール編集+ヘッダ編集 RestoreAutoFormSwitch( ) ; //復元:自動整形ON/OFF RestoreCurrentFindCondition( ) ; //復元:検索条件 // End of EdMax Macro