我想写一个像这样的筛选器:
require "fileinto";
require "imap4flags";
require "variables";
set "adresses" ["foo.com", "bar.com", "baz.com"];
if address :domain ["to", "from"] ${addresses} {
addflag "\Seen";
fileinto "Spam";
}
问题是,RFC和实现(ProtonMail的)都只允许字符串:
Usage: set [MODIFIER] <name: string> <value: string>
有什么合适的或hack的方法来做这样的事情吗?
您可以使用字符串作为带分隔符的伪数组,如:
,这显然不是域名的一部分。
require "variables";
set "addresses" ":foo.com:bar.com:baz.com:";
if address :domain :matches "to" "*" { set "domain_to" "${1}"; }
if address :domain :matches "from" "*" { set "domain_from" "${1}"; }
if string :contains "${addresses}" [":${domain_to}:", ":${domain_from}:"] {
addflag "\Seen";
fileinto "Spam";
}