mhonarc-users

Re: How to work with other RE:-prefixes?

1996-04-16 15:32:22
There is one thing that I can not figure out: How do I make Mhonarc
recognise for instance "Sv:" (Danish for "Re:") as "Re:" so that
sv-subjects will be subject-sorted along with re-subjects? Searching
for "Re:" in the code files did not do the trick and I am not fluent
in Perl.

Currently, you will have to modify the increase_subject and
decrease_subject sort routines in mhutil to recognize "Sv:".
Below are the modified versions of the routines for your needs:

sub increase_subject {
    local($A, $B) = ($Subject{$a}, $Subject{$b});
    local($at, $bt) = ((split(/$'X/o, $a))[0], (split(/$'X/o, $b))[0]);
    $A =~ tr/A-Z/a-z/;  $B =~ tr/A-Z/a-z/; 
    1 while $A =~ s/^\s*(re|fwd|fw|sv)[:>-]+\s*//i;
    1 while $B =~ s/^\s*(re|fwd|fw|sv)[:>-]+\s*//i;
    $A =~ s/^(the|a|an)\s+//i;  $B =~ s/^(the|a|an)\s+//i;
    local($sret) = ($A cmp $B);
    ($sret == 0 ? $at <=> $bt : $sret);
}
sub decrease_subject {
    local($A, $B) = ($Subject{$a}, $Subject{$b});
    local($at, $bt) = ((split(/$'X/o, $a))[0], (split(/$'X/o, $b))[0]);
    $A =~ tr/A-Z/a-z/;  $B =~ tr/A-Z/a-z/; 
    1 while $A =~ s/^\s*(re|fwd|fw|sv)[:>-]+\s*//i;
    1 while $B =~ s/^\s*(re|fwd|fw|sv)[:>-]+\s*//i;
    $A =~ s/^(the|a|an)\s+//i;  $B =~ s/^(the|a|an)\s+//i;
    local($sret) = ($B cmp $A);
    ($sret == 0 ? $bt <=> $at : $sret);
}

Just replace the existing increase_subject and decrease_subject
routines in mhutil.pl with the ones above.

I'll see if a resource can be added to help modify the subject sorting
method.  Until then, you'll have to rely on changing the code.

        --ewh

<Prev in Thread] Current Thread [Next in Thread>