Ночь, что-то скучно стало: устал, наверное... Даже палец не дотягивается до веселой кнопки ")"... Но другим не зачем знать, что настроение у меня не веселое. Пусть думают, что я все так же благодушно улыбаюсь, не обижаюсь на их глупости... Пусть мои фразы тоже воспринимают с улыбкой!)
И надо же - правду говорят - если сделать вид, что улыбаешься, то и настроение поднимается!!!)))
Полуночникам и добрякам посвящается.
event(OnTextInput,улыбка)
{
%messagePatterns = $array("^!","\\($","\\\\$","/$","\\.$");
%messagePatterns <+ "(http|https|ftp|file|irc|ircs)://(\\S)*$"
%excludedTargets = $array("chanserv", "nickserv", "#test")
%tosmile = $true
%target = $target
# экранируем символ | - а то он воспринимается как ИЛИ
%target =~ s/"\\|"/\\|/g
if (!$str.grep("^%target$", %excludedTargets, r))
{
foreach(%pattern, %messagePatterns)
{
if ($str.match(%pattern, $0, r))
{
%tosmile = $false
break
}
}
if (%tosmile)
{
say $0)
halt
}
}
}
Сначала был скрипт из двух строчек: say $0) и halt.
Но потом нужно было пообщаться с сервисами IRC - появились исключения на chanserv и nickserv.
Потом заметил, что ссылкам не нравится моя улыбка - появились исключения на ссылки в конце строки.
Потом мне все же захотелось выразить огорчение, недоумение, сказать что-то без окраски - появились исключения на смайлики и точку в конце.
Я даже встретил один канал, на котором стоял ~T:block:*)* - люди там сидели донельзя серьезные

- появилось исключение и на канал.
И надоело мне дописывать очередной ... && if(!бла-бла-бла) - решил как-то переработать код.
Если у вас возникнет затруднение добавить определенное исключение - напишите его сюда)