mIRC Home    About    Download    Register    News    Help

Print Thread
Sort Ignore List by Host #254764 31/08/15 02:16 PM
Joined: Apr 2013
Posts: 3
M
mrkorb Offline OP
Self-satisified door
OP Offline
Self-satisified door
M
Joined: Apr 2013
Posts: 3
Currently the sort function on the ignore list just does it alphabetically by the first character it sees in the entry, which isn't really practical when you have annoying people who change their nick and user entries on a regular basis and their IP changes slightly on a less regular basis. Eventually you wind up with an ignore list that looks something like this:

*!*bob@192.168.1.1
*!*bob@a192-168-1-2.hostmask.com
*!*frank@192.168.1.1
*!*joe@192.168.1.20
*!*steve@192.168.1.1
*!*steve@a192-168-1-1.hostmask.com

Etc etc and so on, but imagine that in a bigger list with lots more variation, most of which are added by triggering an anti-spam script. Eventually you might end up with a list 50+ entries long, but with some pretty obvious patterns in the offending party's host portion of the address. The annoying issue comes when you do have multiple entries for one person sprinkled through out the list that is sorted by the first character only, which is typically an asterisk, so you have to scroll up and down, trying to spot patterns, which inevitably you can't keep track of. If the sort function could sort by what comes following the '@' of the mask, it would be so much easier to spot those multiple entries with matching hosts so you could then consolidate them into a single entry that would account for the variations in address while still being specific to that person, e.g. *!*@192.168.1.*

tl;dr option to sort by host would be wonderful

Re: Sort Ignore List by Host [Re: mrkorb] #254766 31/08/15 05:29 PM
Joined: Dec 2002
Posts: 87
Zmodem Offline
Babel fish
Offline
Babel fish
Joined: Dec 2002
Posts: 87
Well, unfortunately I'm at work right now, but I whipped up this quick and dirty alias to do just that for you:

Code:
alias ignores {
  var %w = $+(@temp,$ctime), %m = $ignore(0), %i = 1, %l = $+(,$color(quit)), %e = echo -a, %n
  if (!%m) { ignore -l | return }
  window -lsh %w
  while (%i <= %m) {
    aline %w $+($gettok($ignore(%i),2,64),^,%i)
    inc %i
  }
  %i = 1
  %e $+(%l,* Ignore List:)
  while (%i <= %m) {
    %e $+(%l,$ignore($gettok($line(%w,%i),2,94)))
    inc %i
  }
  window -c %w
}


Just type: /ignores

The alias will do the rest, and output the list by the hostmask, rather than sorting by the first characters before the address.

Last edited by Zmodem; 31/08/15 05:29 PM.

-Zmodem
Re: Sort Ignore List by Host [Re: Zmodem] #254772 01/09/15 11:27 AM
Joined: Apr 2013
Posts: 3
M
mrkorb Offline OP
Self-satisified door
OP Offline
Self-satisified door
M
Joined: Apr 2013
Posts: 3
I could kiss you. I won't, but I could.