3 #===============================================================================
9 @configs[:ACCOUNTS] = []
10 #---------------------------------------------------------------
15 account[:NAME] = 'Main' # アカウント名(必須)
16 account[:ENABLE] = true # 有効/無効(必須)
18 account[:USER_NAME] = '山田 太郎' # 送信者名
19 account[:USER_ADDRESS] = 't-yamada@example.com' # メールアドレス(必須)
21 account[:POP_SERVER] = 'pop.example.com' # メール受信(POP)サーバ
22 account[:POP_ACCOUNT] = 't-yamada' # 受信アカウント
23 account[:POP_PASSWORD] = 'password' # 受信パスワード
24 account[:POP_KEEP_TIME] = 24 * 60 * 60 # サーバに残す時間(秒)
26 account[:SMTP_SERVER] = 'smtp.example.com' # メール送信(SMTP)サーバ
28 @configs[:ACCOUNTS] << account
30 #---------------------------------------------------------------
35 account[:NAME] = 'Sub' # アカウント名(必須)
36 account[:ENABLE] = false # 有効/無効(必須)
38 account[:USER_ADDRESS] = 'taro-yamada@yahoo.com' # メールアドレス(必須)
40 account[:POP_SERVER] = 'pop.yahoo.com' # メール受信(POP)サーバ
41 account[:POP_ACCOUNT] = 'taro-yamada' # 受信アカウント
42 account[:POP_PASSWORD] = 'password' # 受信パスワード
44 account[:SMTP_SERVER] = 'smtp.yahoo.com' # メール送信(SMTP)サーバ
45 account[:SMTP_ACCOUNT] = account['pop_account'] # 送信アカウント
46 account[:SMTP_PASSWORD] = account['pop_password'] # 送信パスワード
47 account[:SMTP_AUTHTYPE] = :plain
49 @configs[:ACCOUNTS] << account
51 #---------------------------------------------------------------
53 # 各メールアカウントの設定をデフォルト値で補う
55 @configs[:ACCOUNTS].each {|v|
60 v[:SMTP_HELO] ||= 'localhost.localdomain'
61 v[:SMTP_ACCOUNT] ||= nil
62 v[:SMTP_PASSWORD] ||= nil
63 v[:SMTP_AUTHTYPE] ||= :plain
65 v[:GREETING] ||= "Hi,\n\n"
67 v[:FROM] ||= "#{(it = v[:USER_NAME]) !~ /[\x80-\xFF]/ ? \
68 %|"#{it}"| : "=?ISO-2022-JP?B?#{[it.kconv(Kconv::JIS, Kconv::UTF8)].pack('m*').gsub(/\n/, '')}?="} <#{v[:USER_ADDRESS]}>"
69 v[:SIGNATURE] ||= "\nThanks,\n\n-- \n#{v[:USER_NAME]}\n"
71 v[:FROM] ||= v[:USER_ADDRESS]
72 v[:SIGNATURE] ||= "\nThanks,\n\n-- \n#{v[:USER_ADDRESS]}\n"
75 v[:INBOX_FOLDER] ||= 'Inbox'
76 v[:DRAFT_FOLDER] ||= 'Drafts'
77 v[:OUTBOX_FOLDER] ||= 'Outbox'
78 v[:SENT_FOLDER] ||= 'Sent'
79 v[:TRASH_FOLDER] ||= 'Trash'
82 #---------------------------------------------------------------
86 @configs[:ROOT_DIRECTORY] = "#{ENV['HOME']}/mave.mails"
87 #@configs[:ROOT_DIRECTORY] = 'c:/Documents and Settings/username/My Documents/mails'
88 @configs[:POP_DIRECTORY] = @configs[:ROOT_DIRECTORY] + '/_pop'
90 revision = '$Revision: 3.92 $' =~ /:\s+(\d+)(\.\d+)/
91 version = ($1.to_i - 1).to_s + $2
92 sys_sig = (it = RUBY_PLATFORM) =~ /i.86-mswin32/ ? it : `uname -n -r -o`.chomp
93 @configs[:MAILER] = "Mave version #{version} (#{$?.to_i == 0 ? sys_sig : 'unknown'})"
94 @configs[:APLNAME] = "Textbase Mailer 'Mave' version #{version}"
95 hostname = `hostname`.chomp
96 @configs[:HOSTNAME] = "#{$?.to_i == 0 ? hostname : 'unknown'}"
98 Intl.bind_text_domain('mave-tokyo-utf8')
99 Intl.bind_text_domain('mave-osaka-euc')
100 Intl.set_text_domain('mave-tokyo-utf8')
102 @configs[:TERMINAL_CHARSET] = 'UTF-8'
103 #@configs[:TERMINAL_CHARSET] = 'EUC-JP'
104 #@configs[:TERMINAL_CHARSET] = 'SHIFT_JIS'
105 @configs[:EDITOR_CHARSET] = 'UTF-8'
106 @configs[:FILENAME_CHARSET] = 'UTF-8'
108 @configs[:CLUSTER_DIRS] = 5
109 @configs[:CLUSTER_EXT] = 'mails'
112 @configs[:EDITOR_TYPE] = 'system' # 端末上で起動するエディタの場合
113 @configs[:EDITOR] = '/usr/bin/vi %s'
114 #@configs[:EDITOR] = 'c:\windows\system32\notepad.exe %s'
115 #@configs[:EDITOR] = 'c:\winnt\system32\notepad.exe %s'
116 #@configs[:EDITOR] = 'c:\Program Files\sakura\sakura.exe %s'
117 #@configs[:EDITOR_TYPE] = 'forkexec' # 別ウィンドウで起動するエディタの場合
118 #@configs[:EDITOR] = '/usr/bin/emacs %s >/dev/null 2>&1'
120 #===============================================================================
126 @@mystrftime_len = nil
128 def self.mystrftime_len
129 @@mystrftime_len || @@mystrftime_len = self.now.mystrftime.size
133 '%3s, %2d %3s %2d:%02d' % [ # 'Sun, 1 Jan 0:00'
134 ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'][wday], day,
135 ['', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'][mon], hour, min,
137 # '%2s/%2d %2s %2d:%02d' % [ # ' 1/ 1 日 0:00'
138 # mon, day, ['日', '月', '火', '水', '木', '金', '土'][wday], hour, min,