Beartooth posted on Wed, 04 Dec 2013 17:53:36 +0000 as excerpted: > On another list, I have concluded that a certain poster (call him P) is > posting unmitigated trollery to a thread I value (and have told Pan to > watch). > > When I right-click on his latest and tell Pan "Ignore author," I > get a weird error message which seems to amount to a declaration of > inability, even though I am asking it to score an author this time. > > Is Pan confused, or am I?
Well, if you'd have posted the error message... In general, it's possible to do, but the ordering of the rules makes a difference, and you may have to hand-edit the scorefile to get it to do what you want. I'm unsure if you're up to taking on that challenge, or perhaps I should say, no offense intended, but I'm not sure I'm up to explaining it in the detail it sometimes takes to talk you through complex issues. But I/you/we could try, and you can save a backup copy of your scorefile somewhere, to copy over the one we're working on if we screw it up too badly. =:^] At a high level the situation is this: 1) Normal scoring is incremental: Each matching incremental score condition that applies to a message will increase or decrease the score for that message by some number of points, based on the score assigned to that condition. Unscored posts start at zero, with scores going up or down from there. So for example you might have a score that gives all messages in a particular group a +500, because you're interested in that group. Then there's a particular subject keyword you're interested in, which gets another +1000, but some other keyword that's scored -300. Then there's a particular author that you don't like (but not by enough to killfile), so you score anything by that author at -1200. And you have pan set to auto- mark-read anything with negative points so you don't have to see it. Now say this author (-1200) posts to this group (+500), with a subject matching both of the keywords scored above (+1000)(-300). 0-1200+500+1000-300=0: The sum of all applying incremental scores for that message would be zero, so it's as if none apply at all. The message will be treated as an ordinary unscored message. BUT: 2) Absolute scoring is also possible. As pan applies its scores, it adds and subtracts incremental scores as it comes to them, but if it ever sees an absolute assignment score, it sets that score regardless of the incremental scores it might have previously applied, and stops further score processing for that message. AND: 3) Watched and ignored work with absolute scores: =9999 and =-9999 respectively. So now let's change our example to add some absolute scores. Let's say instead of that +1000 for subject keyword, you decided to watch anything with that keyword. In the scorefile, that's set as =9999. But we'll also say that you REALLY didn't like that particular author, and set him to ignore: =-9999. Now what happens to that message depends on the scoring rules order: Regardless of the incremental rules, if pan reaches the =-9999/ignored rule before it reaches the =9999/watched rule, that will match and it'll stop processing further scoring rules for that message, so the message will be =-9999/ignored because pan won't ever reach the =9999/watched rule further down. But if pan reaches the =9999/watched rule first, pan will set that and stop processing further scoring rules for that message, so it'll be =9999 regardless of the =-9999/ignored rule further down. So what I suspect pan was telling you was exactly that: Since the new rule you were creating would be added below the existing watch-thread rule, pan would never get to the ignore-author rule as the =9999/watched would stop further processing, because it *IS* an absolute =9999, NOT an incremental +9999, which would let other rules apply as well. So to get what you want, you can do one of two things, depending on the exact result you're actually looking for. 1) If you want to ignore that author REGARDLESS, you can create the ignore rule and edit the scorefile to ensure it appears BEFORE any watch rules. (Conversely, if you want watch rules to override ignore rules, they must come first.) 2) If instead you still want other scores to be able to affect watches/ ignores, then you can edit the scorefile to make them +9999/-9999 respectively, instead of =9999/=-9999. Of course if you do this, you might want to actually use an even stronger value than 9999, depending on how strongly you /actually/ want to watch /everything/ in that thread and/or /actually/ want to ignore that author /totally/. If you want to be SURE to ignore that author, you might set -20000 or even -30000 so that even a couple ordinary incremental watches (+9999) will still leave the score below -9999, so it'll still be ignored. Alternatively, if you only /almost/ want to ignore that author, then you might set an incremental -9998, so it'll be negative scored but not /quite/ ignored, unless some other negative scoring brings the score down even further. Personally, I'd probably do the former, still using absolutes, but just order them the way I wanted, which would most likely be to ignore the author at top priority, and only if a message isn't ignored, watch it based on the thread. So I'd edit my scorefile to ensure that the ignore came before the watch. Hope that explanation helps. =:^) -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman _______________________________________________ Pan-users mailing list Pan-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/pan-users