From Newsgroup: alt.comp.os.windows-11
using 40tude dialog to automatically "move" all unwanted/unimportant
article headers to the newsreader's "junk"/"troll" folders, that may
be reviewed before routine purging, to ensure filters are working as expected, also to add new "move" or "watch" filters, if desired, and
to provide a daily "troll-count", which if you're subscribed to more
than a dozen active newsgroups, is always dozens or hundreds per day,
or if sampling newsgroup headers, can easily number in the thousands
the first rule demotes all new articles in all subscribed newsgroups
to "-1", and sets the ignore flag on them, then "moves" all x-posted
articles to the "junk" folder (the hash sign "#" for blank lines and comments), and "moves" any articles with trollish text in headers to
the "troll" folder, leaving only articles that were not cross-posted,
now with the red "ignore" flag and red "-1" score set on all of them:
[*]
-1 From *
!ignore From *
!move(junk) Xpost %>1
#
!move(troll) From "troll001" "troll002" "troll..."
!move(troll) From "troll101" "troll102" "troll..."
#
!move(troll) Subject "cull001" "cull002" "cull..."
!move(troll) Message-ID "rogue001" "rogue002" ...
because the usenet chatbots obsessively cross-post, this one simple
rule "!move(junk) xpost %>1" automatically eliminates probably half
of all troll farm chatter, depending on the newsgroup and hierarchy,
but not all cross-posts are trolls, especially when browsing usenet
archives, so the "junk" folder accommodates all x-posts and generic
from headers that have not been otherwise whitelisted, watched, etc.
the "troll" folder is for your newsreader's blacklist, any overview
headers that contain unique strings of text (using wildcards */" to minimize length of entries without oversimplifying), that are known
to be chronic offenders (the troll farm "hall of fame" sockpuppets),
so your newsreader's killfile list can quickly expand into hundreds
of entries, but the result is worth the effort, for every kill-file
entry added, newsgroups become less cluttered by troll farm minions,
allowing ephemeral, uncommon troll aliases to be ignored, junkfiled,
and for troll aliases that become chronic, simply killfile them too
the second rule promotes "self" to the maximum "+9999", then unsets
the ignore flag, and highlights header colors to stand out from the
rest, then any whitelisted contributors, topics, servers, etc., are
also unignored, and promoted to "+1", or any number from 0 to +9998:
[*]
=+9999 From "self <name@server01>" "self <name@server02>" ... >=!unsetwatchignore,setcolor(red;yellow) From "self <name@server01>" ...
#
=!unsetwatchignore From "user001" "user002" "user003" "user..."
=+1 From "user001" "user002" "user003" "user004" "user..."
#
=!unsetwatchignore Subject "topic001" "topic002" "topic..."
=+1 Subject "topic001" "topic002" "topic003" "topic..."
#
=!unsetwatchignore Message-ID "@server001" "@server002" ...
=+1 Message-ID "@server001" "@server002" "@server003"...
lastly, the third rule "moves" remaining articles with the score of
"-1" directly to the "junk" folder, then, after cursory review, the
"troll" and "junk" folders are purged (recommend purges once daily):
#
!move(junk) Score "-1"
because the default score of "-1" was first applied to all articles,
any articles moved to the "junk" or "troll" folders retain the "-1",
so any remaining articles that weren't promoted are moved to "junk",
leaving only promoted article headers (if any) in your newsreader's
viewing window, encouraging users to whitelist helpful contributors,
and purge the unhelpful ... depending on the newsgroup, some groups
attract non-troll articles and discussions, but most newsgroups are predominantly if not 100% trollfarm "chatterbots", so caveat emptor
the complete example filter looks like this, but of course requires
actual header strings in order to demonstrate how this really works:
[*]
-1 From *
!ignore From *
!move(junk) Xpost %>1
#
!move(troll) From "troll001" "troll002" "troll..." >!move(troll) From "troll101" "troll102" "troll..."
#
!move(troll) Subject "cull001" "cull002" "cull..." >!move(troll) Message-ID "rogue001" "rogue002" ...
#
=+9999 From "self <name@server01>" "self <name@server02>" ... >=!unsetwatchignore,setcolor(red;yellow) From "self <name@server01>" ...
#
=!unsetwatchignore From "user001" "user002" "user003" "user..."
=+1 From "user001" "user002" "user003" "user004" "user..."
#
=!unsetwatchignore Subject "topic001" "topic002" "topic..."
=+1 Subject "topic001" "topic002" "topic003" "topic..."
#
=!unsetwatchignore Message-ID "@server001" "@server002" ...
=+1 Message-ID "@server001" "@server002" "@server003"...
#
!move(junk) Score "-1"
this uses simple syntax which should be modified to suit your needs,
and as your own newsreader filter becomes larger, more personalized,
recommend saving an occasional "progress" copy of your last working
filter, in case errors appear that may not be easily corrected, and
with practice, your usenet newsgroups will become a troll-free zone, where uninterrupted productivity will always be your first priority
--- Synchronet 3.21d-Linux NewsLink 1.2