atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
QMAIL3 まとめサイト
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
QMAIL3 まとめサイト
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
QMAIL3 まとめサイト
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • QMAIL3 まとめサイト
  • メール作成

メール作成

最終更新:2009年10月28日 10:18

Bot(ページ名リンク)

- view
だれでも歓迎! 編集
トップ > メール作成
  • 件名・宛先・添付ファイルなしの場合に警告を出す
  • 指定ドメイン以外へのメール送付に警告を出す
  • 返信メールの名前に自動で"様"を付ける
  • BCCの付加をアカウント毎に する・しない を設定したい。
  • 新規メールを常に署名を記載した状態で開く
  • 返信時に名前を削除
  • 送信者/宛先をアドレス帳にある名前で表示
  • HTMLのタグを取るテンプレート
  • HTMLメールをHTMLメールで返信する
  • 返信メールの引用をOE風にする
  • スペルチェックはできますか?

件名・宛先・添付ファイルなしの場合に警告を出す

次のルールをrules.xmlで指定してください。
<ruleSet folder="送信箱">
<rule match="@True()" use="active" description="To,Subjecの空白、添付ファイルなし、の警告">
<apply>@Progn(@If(@Not(To),@Set('a','- To\n'),1),@If(@Not(@Subject(@True(),@True())),@Set('a',@Concat($a,'- Subject\n')),1),@If(@Not(@Body()),@Set('a',@Concat($a,'- 本文\n')),1),@If(@And(@RegexMatch(@Body(),/添付|attached|attachment/i),@Not(@Attachment())),@Set('a',@Concat($a,'- 添付\n')),1),@If($a,@Progn(@Draft(@True()),@If(@Equal(6,@MessageBox(@Concat($a,'\nがないけど送信する?\n----------------------------------------\n はい(Y) - そのまま送信\n いいえ(N)- 再編集'),68)),@Draft(@False()),@InvokeAction('MessageCreate','edit','',@URI()))),@Exit()))</apply>
</rule>
</ruleSet>
下記の状況で警告を出すようにしました
  • Toが空白のとき
  • Subjectが空白のとき(Re:だけのときなども空白とみなす)
  • 本文に「添付」「attached」「attachment」の単語があるにもかかわらず添付ファイルがないとき
警告が出たら?
  • はい(Y)-そのまま送信する
  • いいえ(N)-送信せず、メール編集画面に戻る

※ 下記のように4を68にすると警告音もでます
,@MessageBox(@Concat($a,' がないけど送信する?\n-------------------------\n はい(Y) - そのまま送信\n いいえ(N)- 再編集'),68))
※ IMAP4アカウントでは機能しません。IMAP4ではスクリプトで対応します。→ スクリプト集
■本家メモ参照
http://snak.tdiary.net/20070213.html#p02

指定ドメイン以外へのメール送付に警告を出す

次のルールをrule.xmlで指定してください。
<ruleSet folder="送信箱">
<rule match="@True()" use="active" description="To,Subjecの空白、添付ファイルなし、の警告">
<apply>@Progn(@Set('tgt',@If(@And(Cc,Bcc),@Concat(To,', ',Cc,', ',Bcc),@If(Cc,@Concat(To,', ',Cc),To))),@While($tgt,@Progn(@Set('mail',@If(@SubstringBefore($tgt,', '),@SubstringBefore($tgt,', '),$tgt)),@Set('tgt',@SubstringAfter($tgt,', ')),@If(@RegexMatch($mail,/@hogehoge\.com|@hogera/i),1,@Set('msg',@Concat($msg,'- ',$mail,'\n'))))),@If($msg,@Progn(@Draft(@True()),@If(@Equal(6,@MessageBox(@Concat($msg,'\nが指定外メールだけど送信する?\n----------------------------------------\n はい(Y) - そのまま送信\n いいえ(N)- 再編集'),68)),@Draft(@False()),@InvokeAction('MessageCreate','edit','',@URI()))),@Exit()))</apply>
</rule>
</ruleSet>

許可するドメイン、アドレスの一部を正規表現で指定します。
上記のマクロの @hogehoge\.com|@hogera の部分を変更します。この場合では
  • @hogehoge.com
  • @hogera
のどちらかを含むメール以外で警告を出します。
この部分を
  • @hogera\.com
とすればこのドメイン以外で警告を出します。.は\.とエスケープすることに注意してください。

返信メールの名前に自動で"様"を付ける

■reply.templateの中を下記に変更
元
To: {@If(@Exist('Reply-To'), Reply-To, From)}
変更後
To: {@Progn(@Set('to', @If(Reply-To, Reply-To, From)), @RegexReplace($to, /(?!様)("?) </, '様$1 <', :GLOBAL))}

■reply_all.templateを下記に変更(二箇所)
元
$from,
変更後
@Progn(@Set('to', @If(Reply-To, Reply-To, From)), @RegexReplace($to, /(?!様)("?) </, '様$1 <', :GLOBAL)),
元
@Concat('Cc: ', $val, '\n'),
変更後
@Progn(@Set('val1',@RegexReplace($val, /(?!様)("?) </, '様$1 <', :GLOBAL)),@Concat('Cc: ', $val1, '\n')),

BCCの付加をアカウント毎に する・しない を設定したい。

設定はQMAILを終了してから行うこと。
[変更点]
■account.xml Globalセクションに追加
<key name="Bcc">1</key>
※ キーを作らなければBCCにならない。ならないようにキーを作る場合は値を0にする。
■reply_all.template、reply.template
@Equal(@Profile('', 'Global', 'Bcc', '1'), '0'), の前に下記を追加↓
@Equal(@Profile(@Concat('accounts/', @Account(), '/account.xml'), 'Global', 'Bcc','0'), '1'),
@Concat('Bcc: ', @I(@Account(), X-QMAIL-SubAccount), '\n'),
■new.template、forward.template
@Set('bcc', @Equal(@Profile('', 'Global', 'Bcc', '1'), '1')), を下記に入れ替え↓
@Set('bcc', @Or(@Equal(@Profile('', 'Global', 'Bcc', '1'), '1'),@Equal(@Profile(@Concat('accounts/', @Account(), '/account.xml'), 'Global', 'Bcc','0'), '1'))),
  • QMAILの設定にあるBCC付加オプションはBCCつけないにしてから、上記を必要なACCOUNTに対してKeyを付け加えればオケ。 この設定法をする場合、「オプション」-「その他2」のBCC付加のチェックははずしておく。ここをチェックすると、すべてのアカウントでBCC付加になります。

新規メールを常に署名を記載した状態で開く

下記のマクロをnew.templateの最後に空行を付けないように付け加える。
{@Progn(
@Set('acct',@Account()),
@If(
@Equal($acct,'_hogera'),
@Set('sig','hogera <hogera@hoge.com>\nTEL 123456\nFAX 9876543'),
@Equal($acct,'hogu.co.jp'),
@Set('sig','hogu.co.jp\nHogera Hogu'),
@Set('sig','デフォルトの署名\nほげほげ')
),
@Concat('X-QMAIL-Signature: ','\n\n\n--\n',$sig)
)}
注意点
  • このサンプルはサブアカウントは無視
  • 上記でhogera、hogu.co.jpというのがアカウント名。hogeraというアカウントならhogera <hoge以下の署名、hogu.co.jpというアカウントなら、hogu.co.jp[改行]Hogera Hoguという署名、それ以外ならすべての新規メールでデフォルトの署名[改行]ほげほげ という署名を付加。\nは改行を意味します。
  • わざわざX-QMAIL-Signature: というヘッダを付けているのは、オプションの設定で署名が付けられていたりした場合に強制的に「なし」の状態でエディット画面を開くようにするため。不要ならとってください。
  • 返信や転送でも同じようにできます。@Load()を使って署名を一件ずつファイルにしてファイル名をアカウント名で保存しておき、それを読み込むなどすれば署名を変えたいときに多少便利かも。

返信時に名前を削除

返信時の宛先が「ほげほげ <hogera@hoge.com>」となっている場合に、「ほげほげ」の部分を削除するに、テンプレートを変更します。
■reply_all.template
元)
$from,
'\n',
@If($val,
@Concat('Cc: ', $val, '\n'),
変更後)
@RegexReplace($from,/[^>,]+ </,'<',@True()),
'\n',
@If($val,
@Concat('Cc: ', @RegexReplace($val,/[^>,]+ </,'<',@True()), '\n'),
■reply.template
元)
To: {@If(@Exist('Reply-To'), Reply-To, From)}
変更後)
To: {@If(@Exist('Reply-To'), @RegexReplace(Reply-To,/[^>,]+ </,'<',@True()), @RegexReplace(From,/[^>,]+ </,'<',@True()))}

送信者/宛先をアドレス帳にある名前で表示

表示→カラムのカスタマイズ→送信者/宛先
@If(@Sent(),@Concat('⇒ ',@FormatAddress(To,:FORMAT-NAME,:LOOKUP-FORCE)),@FormatAddress(From,:FORMAT-NAME,:LOOKUP-FORCE))

HTMLのタグを取るテンプレート

@Bodyを表示する部分を下記に変更

{@If(
@RegexMatch(@Body('',1), /<HTML/i),
@Progn(
@Set('x',@Body('',1)),
@While(
@RegexMatch($x,/<PRE>((?:.|\n)+?\n(?:.|\n)+?)<\/PRE>/i),
@Progn(
@Set('dum',$_1),
@Set('x',@RegexReplace($dum,/\n/,'<BR>',@True())),
@RegexReplace($x,/<PRE>((?:.|\n)+?\n(?:.|\n)+?)<\/PRE>/i,$dum),
)
),
@Set('x',@RegexReplace($x, /<DIV[^>]*>(?!\n)/i, '¶', @True())),
@Set('x',@RegexReplace($x, /<DIV[^>]*>/i, '', @True())),
@Set('x',@RegexReplace($x, /\n/, ' ', @True())),
@If(@RegexMatch($x,/<BODY/i),
@Progn(
@Set('x',@RegexReplace($x, /(.*<BODY.*?>)(.*)/i, '$2', @True())),
@Set('x',@RegexReplace($x, /(<\/BODY>.*)(<\/BODY>)/i, '$2', @True()))
),
@Set('x',@Concat($x,'\n</BODY></HTML>'))
),
@Set('x',@RegexReplace($x, /<BR>/i, '¶', @True())),
@Set('x',@RegexReplace($x, /(<P[^>]*margin-bottom:1[0-9][^>]*>(?:(?!<\/P>).)*<\/P>)/i, '$0¶', @True())),
@Set('x',@RegexReplace($x, /<P[^>]*class=mso[^>]*>/i, '¶', @True())),
@Set('x',@RegexReplace($x, /<P[^>]*>/i, '¶¶', @True())),

@Set('x',@RegexReplace($x, /\r|\n/, '', @True())),
@Set('x',@RegexReplace($x, /<HEAD>.*<\/HEAD>/i, '', @True())),
@Set('x',@RegexReplace($x, /<HR[^>]*>/i, '¶∬¶', @True())),
@Set('x',@RegexReplace($x, /<[^>]*>/, '', @True())),
@Set('x',@RegexReplace($x, /<|</, '<', @True())),
@Set('x',@RegexReplace($x, />|>/, '>', @True())),
@Set('x',@RegexReplace($x, /&|&/, '&', @True())),
@Set('x',@RegexReplace($x, /"|"/, '"', @True())),
@Set('x',@RegexReplace($x, / | /, ' ', @True())),
@Set('x',@RegexReplace($x, /’/, '\'', @True())),
@Set('x',@RegexReplace($x, /¶[\s|¶]+¶/, '¶¶', @True())),
@Set('x',@RegexReplace($x, /¶+∬¶+/, '\n\n----------------------------------------------------------------------\n', @True())),
@Set('x',@RegexReplace($x, /\s+¶/, '¶', @True())),
@Set('x',@RegexReplace($x, /¶¶¶+/, '¶¶', @True())),
@Set('x',@RegexReplace($x, /¶/, '\n', @True())),
@If(@RegexMatch($x, /&#\d{{2,6}};/),
@Set('x',@Script('result.value =arguments(0).replace(/&#(\\d{{2,6}})\;/g,function($0,$1){{return(String.fromCharCode($1));}})','JScript',$x)),
@True()
),
@Concat($x)
),
@Body(@Profile('', 'Global', 'Quote', '> '), 1)
)
}

HTMLメールをHTMLメールで返信する

下記を create_HTML全員返信.template という名前でTemplates\mail フォルダに保存。返信したいHTMLメールを右クリックしてテンプレートからHTML全員返信を選ぶ。
自分でHTML書く必要あります。
あと、引用した元メールのHTMLを大幅にダイエットします。
{@Catch(@Exist('From'), @Exit())}
{
 @Progn(@Set('val',
             @Progn(@Set('from', @If(@Exist('Reply-To'), Reply-To, From)),
                    @Set('to', @Remove(To, @Address(@I(@Account(), X-QMAIL-SubAccount)), @Address($from))),
                    @Set('cc', @Remove(Cc, @Address(@I(@Account(), X-QMAIL-SubAccount)), @Address($from))),
                    @Concat($to, @If(@And($to, $cc), ', ', ''), $cc))),
        @Concat('To: ',
                $from,
                '\n',
                @If($val,
                    @Concat('Cc: ', $val, '\n'),
                    '')))
}Subject: Re: {@Subject(@True(), @True())}
{
 @If(@Equal(@Profile('', 'Global', 'Bcc', '1'), '0'),
     '',
     @And(@Equal(@Profile('', 'Global', 'NoBccForML', '1'), '1'),
          @Or(@Exist('X-ML-Name'), @BeginWith(Subject, '['))),
     '',
     @Concat('Bcc: ', @I(@Account(), X-QMAIL-SubAccount), '\n'))
}{
 @Progn(@Set('id', @MessageId()),
        @Set('ref', @References(4)),
        @Concat(@If($id,
                    @Concat('In-Reply-To: ', $id, '\n'),
                    ''),
                @If(@Or($ref, $id),
                    @Concat('References: ',
                            @If(@And($ref, $id),
                                @Concat($ref, ' ', $id),
                                $ref,
                                $ref,
                                $id),
                            '\n'),
                    '')))
}X-QMAIL-Account: {@Account()}{
 @If(X-QMAIL-SubAccount,
     @Concat('\nX-QMAIL-SubAccount: ', X-QMAIL-SubAccount),
     '')
}
X-QMAIL-Macro: @ForEach(@Messages('{@Concat('//', @Account(), '/', @Folder())}', {@Id()}), @Replied(@True()))
X-QMAIL-OriginalCharset: {@BodyCharset(1)}{
 @If(@Equal(@Profile('', 'Global', 'SaveSentInSameFolder', '0'), '1'),
     @Concat('\nX-QMAIL-Sentbox: ', @Folder()),
     '')
}
Content-Type: text/html;
charset={
@If(
@And(@Multipart(),@Catch(@If(@Part(0),@True(),@True()),@False())),
@If(
	@RegexMatch(@Body('',2,@Part(0)),/<HTML|<P>|<\/DIV>|<\/FONT>/i),
	@Progn(@Set('Body',@Body('',2,@Part(0)),:GLOBAL),@BodyCharset(2,@Part(0))),
	@RegexMatch(@Body('',2,@Part(1)),/<HTML|<P>|<\/DIV>|<\/FONT>/i),
	@Progn(@Set('Body',@Body('',2,@Part(1)),:GLOBAL),@BodyCharset(2,@Part(1))),
	@RegexMatch(@Body('',2,@Part(1,@Part(0))),/<HTML|<P>|<\/DIV>|<\/FONT>/i),
	@Progn(@Set('Body',@Body('',2,@Part(1,@Part(0))),:GLOBAL),@BodyCharset(1,@Part(0))),
	@Progn(@Set('Body',@Body('',1,@Part(1)),:GLOBAL),@BodyCharset(1,@Part(1))),
),
@Progn(@Set('Body',@Body('',1),:GLOBAL),@BodyCharset(1))
)}


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML><HEAD><TITLE></TITLE><STYLE><!--
BODY,P,PRE {{font-family:Arial}}
BLOCKQUOTE {{margin:0px;border-left:2px solid blue;padding:3pt}}
PRE {{font-size:100%}}
<PRE>

ここに返信メールを書く。HTMLタグを書くときはpreタグ取ってください。

</PRE>
<P>----- Original Message -----<BR>
<B>From:</B> {@Name(From)}<BR>
<B>Sent:</B> {
@Progn(
	@Set('x',@FormatDate(@Date(Date), '%W1, %M2 %D, %Y4 %h:%m %z', 2)),
	@Concat($x)
)
}<BR>
<B>To:</B> {@Name(To)}<BR>
{@If(@Exist('Cc'), @Concat('<B>Cc:</B> ',@Name(Cc),'<BR>\n'), '')}<B>Subject:</B> {Subject}
<P>
{@Progn(
@Set('x',$Body),
@Set('x',@RegexReplace($x, /^[-_=\.]+NextPart.*$/im, '', @True())),
@Set('x',@RegexReplace($x, /^--------------\w+-+$/m, '', @True())),
@While(
	@RegexMatch($x,/<PRE>((?:.|\n)+?\n(?:.|\n)+?)<\/PRE>/i),
	@Progn(
		@Set('dum',$_1),
		@Set('x',@RegexReplace($dum,/\n/,'<BR>',@True())),
		@RegexReplace($x,/<PRE>((?:.|\n)+?\n(?:.|\n)+?)<\/PRE>/i,$dum),
	)
),
@Set('x',@RegexReplace($x, /<DIV[^>]*>(?!\n)/i, '¶', @True())),
@Set('x',@RegexReplace($x, /<DIV[^>]*>/i, '', @True())),
@Set('x',@RegexReplace($x, /\n/, ' ', @True())),
@If(@RegexMatch($x,/<BODY/i),
	@Progn(
		@Set('x',@RegexReplace($x, /(.*<BODY.*?>)(.*)/i, '$2', @True())),
		@Set('x',@RegexReplace($x, /(<\/BODY>.*)(<\/BODY>)/i, '$2', @True()))
	),
	@Set('x',@Concat($x,'\n</BODY></HTML>'))
),
@Set('x',@RegexReplace($x, /<BR>/i, '¶', @True())),
@Set('x',@RegexReplace($x, /(<P[^>]*margin-bottom: *1[0-9][^>]*>(?:(?!<\/P>).)*<\/P>)/i, '$0¶', @True())),
@Set('x',@RegexReplace($x, /<P[^>]*class=mso[^>]*>/i, '¶', @True())),
@Set('x',@RegexReplace($x, /<P[^>]*>/i, '¶¶', @True())),

@Set('x',@RegexReplace($x, /<META[^>]*>/i, '', @True())),
@Set('x',@RegexReplace($x, /<!--.*?-->/i, '', @True())),
@Set('x',@RegexReplace($x, /<STYLE>(.*?)<\/STYLE>/i, '', @True())),
@Set('x',@RegexReplace($x, /<\/DIV>|<P.*?>|<\/P>/i, '', @True())),
@Set('x',@RegexReplace($x, /<FONT[^>]*>( |&nbsp;)*<\/FONT>/i, '', @True())),
@Set('x',@RegexReplace($x, /<HR([^>]*)>/i, '<HR>', @True())),
@Set('x',@RegexReplace($x, /<\?xml:[^>]+>/i, '', @True())),
@Set('x',@RegexReplace($x, /style="[^"]+(COLOR:[^"]+")/i, 'style="$1', @True())),
@Set('x',@RegexReplace($x, /(mso-|FONT-FAMILY:|FONT-SIZE:|FONT-WEIGHT:)[^>]+(["'])>/i, '$2>', @True())),
@Set('x',@RegexReplace($x, / face="[^"]+"/i, '', @True())),
@Set('x',@RegexReplace($x, / face=(,|\w)+/i, '', @True())),
@Set('x',@RegexReplace($x, / size="?\d"?/i, '', @True())),
@Set('x',@RegexReplace($x, / onclick=["'][^>]+["']/i, '', @True())),
@Set('x',@RegexReplace($x, / (class|id|lang)=[\w\-"]+/i, '', @True())),
@Set('x',@RegexReplace($x, / (src|background)="cid:[^>]*/i, '', @True())),
@Set('x',@RegexReplace($x, / style=(""|'')/i, '', @True())),
@Set('x',@RegexReplace($x, /(\s)+/, ' ', @True())),
@Set('x',@RegexReplace($x, / >/, '>', @True())),
@Set('x',@RegexReplace($x, /( |&nbsp;)+¶/, '¶', @True())),
@Set('x',@Script(<<END
	function foo($x){{
		$x=$x.replace(/<([a-zA-Z:]*)([^>]*)>(?:((?:&nbsp;| )*?)|(?:<([a-zA-Z:]*)([^>]*)>)((?:&nbsp;| )*?)(?:<\/\4>))<\/\1>/ig,'');
		$x=$x.replace(/<(FONT|SPAN)([^>]*)>([^<]*?)<\/\1><\1\2>([^<]*?)<\/\1>/ig,'<$1$2>$3$4<\/$1>');
		$x=$x.replace(/<(FONT|SPAN)([^>]*)>([^<]*?)<\/\1><\1\2>([^<]*?)<\/\1>/ig,'<$1$2>$3$4<\/$1>');
		$x=$x.replace(/<(FONT|SPAN)([^>]*)>([^<]*?)<\1\2>([^<]*?)<\/\1>([^<]*?)<\/\1>/ig,'<$1$2>$3$4$5<\/$1>');
		$x=$x.replace(/<(st1:[a-z\-]+)[^>]*>(.*?)<\/\1>/ig,'$2');
		$x=$x.replace(/<(o:p)>(.*?)<\/\1>/ig,'$2');
		$x=$x.replace(/<(FONT)>((?:(?!<\/?\1).)*)<\/\1>/ig,'$2');
		$x=$x.replace(/<(SPAN)>((?:(?!<\/?\1).)*)<\/\1>/ig,'$2');
		return $x;
	}}
	function foo1($x){{
		$x=$x.replace(/¶ (<\/?[^>]*>)/ig,'¶$1');
		return $x;
	}}
	$x = foo(arguments(0));
	$x = foo($x);
	$x = foo($x);
	$x = foo1($x);
	result.value = $x;
END
,'JScript',$x)),
@Set('x',@RegexReplace($x, /(\s|&nbsp;)+¶/, '¶', @True())),
@Set('x',@RegexReplace($x, /¶¶¶+/, '¶¶', @True())),
@Set('x',@RegexReplace($x, /^¶+/, '', @False())),
@Set('x',@RegexReplace($x, /¶/, '<BR>\n', @True())),
@Set('x',@RegexReplace($x, /<HR>(<BR>)*/i, '<HR>\n', @True())),
@Set('x',@RegexReplace($x, /(<BLOCKQUOTE[^>]*>)(<BR>)+/i, '$1\n', @True())),
@Set('x',@RegexReplace($x, /(<\/BLOCKQUOTE>)(<BR>)+/i, '$1\n', @True())),
@Set('x',@Script(<<END
	function foo2($x){{
		$n=$x.split(/\n/);
		str='';
		dum='';
		re=/^(<(FONT)([^>]+)>)(.*)(<\/FONT><BR>)$/i;
		for(key in $n){{
			r=re.exec($n[key]);
			if(r !=null){{
				if(dum==''){{
					str+= RegExp.$1 + '\n' + RegExp.$4;
					dum=RegExp.$3;
				}}else if(dum!=RegExp.$3){{
					str+='<\/FONT><BR>\n' + RegExp.$1 + '\n' + RegExp.$4 + RegExp.$5 +'\n';
					dum='';
				}}else{{
					str+='<BR>\n' + RegExp.$4;
					dum=RegExp.$3;
				}}
			}}else{{
				if(dum==''){{
					str+=$n[key]+'\n';
				}}else{{
					str+='<\/FONT><BR>\n' + $n[key]+'\n';
				}}
				dum='';
			}}
		}}
		return str;
	}}
	function foo3(str){{
		str=str.replace(/<BR>\n<BR>/ig,'\n<P>');
		return str;
	}}
	$x = foo2(arguments(0));
	$x = foo3($x);
	result.value = $x;
END
,'JScript',$x)),
@If(
	@RegexMatch($x, /&#\d{{2,6}};/),
	@Set('x',@Script('result.value =arguments(0).replace(/&#(\\d{{2,6}})\;/g,function($0,$1){{return(String.fromCharCode($1));}})','JScript',$x)),
	@True()
),
@Concat($x)
)
}

返信メールの引用をOE風にする

テンプレートの返信部分を下記に変更。
■元
At {@FormatDate(@Date(Date), '%D %M1 %Y4 %h:%m:%s %z', 2)} {@Name(From)} wrote:

■変更後
----- Original Message -----
From: {@Name(From)}
Sent: {@FormatDate(@Date(Date), '%W1, %M2 %D, %Y4 %h:%m %z', 2)}
To: {@Name(To)}
{@If(@Exist('Cc'), @Concat('Cc: ',@Name(Cc),'\n'), '')}Subject: {Subject}

スペルチェックはできますか?

■本家FAQ
http://q3.snak.org/doc/HowToCheckSpell.html

タグ:

+ タグ編集
  • タグ:
タグの更新に失敗しました
エラーが発生しました。ページを更新してください。
ページを更新
「メール作成」をウィキ内検索
LINE
シェア
Tweet
QMAIL3 まとめサイト
記事メニュー

メニュー

  • トップページ
  • 2ch過去ログ

パソコン版

  • 設定集
  • スクリプト集
  • アイコン集
  • FAQ

モバイル版

  • 設定集2
  • FAQ2

マクロ等

  • メール作成
  • メール管理
  • メール振り分け
  • メール検索

その他

  • 関連リンク
  • 関連情報
  • コメント

Count : -
記事メニュー2

サイト内検索

更新履歴

取得中です。

ツール

  • RSS
  • このページを編集
最近更新されたページ
  • 2735日前

    コメント
  • 3771日前

    2ch過去ログ
  • 5389日前

    メール検索
  • 5540日前

    FAQ
  • 5542日前

    関連リンク
  • 5594日前

    設定集2
  • 5732日前

    メール作成
  • 5941日前

    FAQ2
  • 6194日前

    メール管理
  • 6382日前

    設定集
もっと見る
最近更新されたページ
  • 2735日前

    コメント
  • 3771日前

    2ch過去ログ
  • 5389日前

    メール検索
  • 5540日前

    FAQ
  • 5542日前

    関連リンク
  • 5594日前

    設定集2
  • 5732日前

    メール作成
  • 5941日前

    FAQ2
  • 6194日前

    メール管理
  • 6382日前

    設定集
もっと見る
ウィキ募集バナー
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. MadTown GTA (Beta) まとめウィキ
  2. R.E.P.O. 日本語解説Wiki
  3. シュガードール情報まとめウィキ
  4. 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  5. SYNDUALITY Echo of Ada 攻略 ウィキ
  6. ソードランページ @ 非公式wiki
  7. シミュグラ2Wiki(Simulation Of Grand2)GTARP
  8. 星飼いの詩@ ウィキ
  9. ドラゴンボール Sparking! ZERO 攻略Wiki
  10. harosui_souko @ ウィキ
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ストグラ まとめ @ウィキ
  3. MadTown GTA (Beta) まとめウィキ
  4. ゲームカタログ@Wiki ~名作からクソゲーまで~
  5. 初音ミク Wiki
  6. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  7. 発車メロディーwiki
  8. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
  9. 検索してはいけない言葉 @ ウィキ
  10. オレカバトル アプリ版 @ ウィキ
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. 参加者一覧 - ストグラ まとめ @ウィキ
  2. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  3. ジロリアンコピペ - ラーメン二郎 wiki
  4. 五条新菜 - アニヲタWiki(仮)
  5. 羊宮妃那 - アニヲタWiki(仮)
  6. ギアス(コードギアス) - アニヲタWiki(仮)
  7. サーヴァント/一覧/クラス別 - Fate/Grand Order @wiki 【FGO】
  8. ロスサントス警察 - ストグラ まとめ @ウィキ
  9. anbrella(餡ブレラ) - ストグラ まとめ @ウィキ
  10. Wonda Darkness - ストグラ まとめ @ウィキ
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.