CVS freexp
CVS User mw
cvs-list at freexp.de
Son Dez 28 11:35:26 CET 2008
Update of /server/cvs/freexp
In directory m6s15:/tmp/cvs-serv28627
Modified Files:
maggi.pas
Log Message:
MW: - Es werden jetzt die langen Maus-IDs zur Verkettung verwendet.
--- /server/cvs/freexp/maggi.pas 2008/12/26 18:37:13 1.35
+++ /server/cvs/freexp/maggi.pas 2008/12/28 10:35:26 1.36
@@ -8,7 +8,7 @@
{ Die Nutzungsbedingungen fuer diesen Quelltext finden Sie in der }
{ Datei SLIZENZ.TXT oder auf www.crosspoint.de/oldlicense.html. }
{ --------------------------------------------------------------- }
-{ $Id: maggi.pas,v 1.35 2008/12/26 18:37:13 mw Exp $ }
+{ $Id: maggi.pas,v 1.36 2008/12/28 10:35:26 mw Exp $ }
{ ZConnect <-> Magic/Quick - Konvertierer }
{ PM 04/92 }
@@ -75,6 +75,7 @@
mausKF : boolean = true; { fb: Filter f?r Kommentare }
MausIT_files : boolean = false; { ITI/ITG -> Box.IT* }
OldXPComp : boolean = false; { XP 3.12 Kompatibilit„t: F-TO -> X-XP-FTO }
+ SmallMaus : boolean = false; { Kurze Maus-IDs verwenden }
{ attrCrash = $0002; } { header.attrib: Crashmail }
{ attrFile = $0010; } { File attached }
@@ -173,6 +174,7 @@
var f1,f2 : file;
bretter : integer;
brettp : array[1..maxbrett] of ^brett;
+ tstr : string;
{ 01/2000 oh : wird zum Einlesen der Customizable Headerlines ben”tigt }
@@ -187,6 +189,7 @@
writeln('MAGGI - Magic/Quick/Maus/ZConnect Converter (c) 1992-1999 Peter Mandrella');
writeln(xp_display,'-Version ',verstr,betastr,' ',x_copyright,
' by ',author_name,' <',author_mail,'>');
+ writeln ('NextGeneration Maggi for Maustausch and FreeXP');
writeln;
end;
@@ -197,14 +200,15 @@
writeln('QuickMail: MAGGI [-qz|zq] [-g] <Eingabe> <Ausgabe>');
writeln('MausTausch: MAGGI [-sz|zs] -bBox -hBretthierarchie [-i] <Eingabe> <Ausgabe>');
writeln;
- writeln(' -mz = MagicNET -> ZConnect -sz = MausTausch -> ZConnect');
- writeln(' -zm = ZConnect -> MagicNET -zs = ZConnect -> MausTausch');
- writeln(' -mn = MagicNET -> Netcall -i = Infofiles bestellen');
- writeln(' -m = Message-IDs erzeugen -o = Outfile erzeugen');
+ writeln(' -mz = MagicNET -> ZConnect -sz = MausTausch -> ZConnect');
+ writeln(' -zm = ZConnect -> MagicNET -zs = ZConnect -> MausTausch');
+ writeln(' -mn = MagicNET -> Netcall -i = Infofiles bestellen');
+ writeln(' -m = Message-IDs erzeugen -o = Outfile erzeugen');
writeln;
- writeln(' -qz = QuickNET -> ZConnect -pz = ProNET -> ZConnect');
- writeln(' -zq = ZConnect -> QuickNet -zp = ZConnect -> ProNet');
- writeln(' -g = GS-Mailbox -312 = Kompatibilit„tsmodus zu 3.12');
+ writeln(' -qz = QuickNET -> ZConnect -pz = ProNET -> ZConnect');
+ writeln(' -zq = ZConnect -> QuickNet -zp = ZConnect -> ProNet');
+ writeln(' -g = GS-Mailbox -312 = Kompatibilit„tsmodus zu 3.12');
+ writeln(' -sMaus = Kurze Maus MSGIDs verwenden');
halt(1);
end;
@@ -262,7 +266,12 @@
else if _is('on') then MausON:=false
else if _is('kf') then mausKF:=false
else if _is('it') then MausIT_Files:=true
- else if _is('312') then OldXPComp := true
+ else if _is('312') then
+ begin
+ OldXPComp := true;
+ SmallMaus := true;
+ end
+ else if _is('sMaus') then SmallMaus := true
else if (left(s,1)='/') or (left(s,1)='-') then parerr
else if infile='' then infile:=s
else if outfile='' then outfile:=s
@@ -1236,6 +1245,25 @@
writeln(t,':---');
end;
+ function INT2MAUS(a:string):string;
+ var f:text;
+ r,s,t:string;
+ begin
+ if exist('INT2MAUS.IDS') then begin
+ assign(f,'INT2MAUS.IDS');
+ reset(f);
+ readln(f,t); {Erstmal Kopf ueberlesen}
+ readln(f,t);
+ repeat
+ readln(f,r);
+ readln(f,s);
+ readln(f,t);
+ until ((r=a) or eof(f));
+ close (f);
+ if r=a then INT2MAUS:=s else INT2MAUS:='';
+ end else INT2MAUS:='';
+ end;
+
begin
new(buf);
reset(f1,1);
@@ -1317,11 +1345,43 @@
writeln(t,'DL')
else
writeln(t,'DN');
+ {ref = org_xref => INT2MAUS}
+ {MW 11/2003}
+ if ((ref<>'') and (ref=org_xref) and SmallMaus=false) then begin
+ if (length(ref)-pos('@',ref)<5) then org_xref:=INT2MAUS(ref) else
+ begin
+ ref:='';
+ org_xref:='';
+ end;
+ end;
+
if ref<>'' then begin
- if org_xref<>'' then
- writeln(t,'R',org_xref);
+ if SmallMaus then
+ begin
+ if org_xref<>'' then
+ writeln(t,'R',org_xref);
+ end
+ else
+ begin
+ if length(org_xref)>length(ref) then
+ begin
+ {Kompatbilitätsmodus mit altem Maggi}
+ tstr:=ref;
+ ref:=org_xref;
+ org_xref:=tstr;
+ {Swap Variable}
+ end;
+ writeln(t,'R',ref);
+ end;
if komzu then begin
- if org_xref='' then writeln(t,'R',ref);
+ if SmallMaus then
+ begin
+ if org_xref='' then writeln(t,'R',ref);
+ end
+ else
+ begin
+ if org_xref='' then writeln(t,'-',ref);
+ end;
{ fb: Wildwestverkettung nur bei G?K und PM. Ist nach
Maus-Specs. nicht n”tig, aber der Kompatiblit„t wegen }
if left(ustr(ReplyGroup),length(bretth))=bretth then
@@ -1329,9 +1389,16 @@
writeln(t,':Kommentar zu ',ref,' in der Gruppe ',
ustr(mid(ReplyGroup,length(bretth)+1)));
end
- else
- writeln(t,'-',ref);
+ else begin
+ if SmallMaus then
+ writeln(t,'-',ref)
+ else
+ begin
+ if org_xref<>'' then writeln(t,'-',org_xref) else
+ if (length(ref)-pos('@',ref)<5) then writeln(t,'-',ref);
+ end;
end;
+ end;
if AmReplyTo<>'' then
writeln(t,':Followup-To: ',mid(AmReplyTo,length(bretth)+1));
end;
@@ -1686,8 +1753,17 @@
nehmen }
'Y' : gate:=left(s,80);
{ /fb }
- 'I' : org_msgid:=left(s,120);
- 'R' : org_xref:=left(s,120);
+ 'I' : if SmallMaus then
+ org_msgid:=left(s,120)
+ else
+ begin
+ org_msgid:=msgid; {MW 11/2003}
+ msgid:=left(s,120);
+ end;
+ 'R' : if SmallMaus then
+ org_xref:=left(s,120)
+ else
+ ref:=left(s,120);
'N' : realname:=left(s,40);
'D' : if s<>'' then case s[1] of
'M' : distribution:='MausNet';
@@ -1711,7 +1787,10 @@
end;
end;
{/fb}
- '-' : ref:=left(s,120);
+ '-' : If SmallMaus then
+ ref:=left(s,120);
+ else
+ org_xref:=left(s,120); {MW 11/2003}
end;
s:=c+s;
end;
@@ -1722,7 +1801,18 @@
datum:=zdate; setzdate(hd); end;
if msgid='#LOG' then
for i:=1 to lines do
- writeln(log,tbuf^[i].s^)
+ if SmallMaus then
+ writeln(log,tbuf^[i].s^)
+ else
+ begin {MW 11/2003}
+ if tbuf^[i].s^[1]='=' then writeln(log,'!'+tbuf^[i].s^) else
+ if tbuf^[i].s^[1]+tbuf^[i].s^[2]='!=' then begin
+ tstr:=tbuf^[i].s^;
+ delete(tstr,1,1);
+ writeln(log,tstr);
+ end
+ else writeln(log,tbuf^[i].s^);
+ end
else begin
inc(nn);
write(#13,'Nachrichten: ',nn);
@@ -1839,7 +1929,10 @@
end.
{
$Log: maggi.pas,v $
- Revision 1.35 2008/12/26 18:37:13 mw
+ Revision 1.36 2008/12/28 10:35:26 mw
+ MW: - Es werden jetzt die langen Maus-IDs zur Verkettung verwendet.
+
+ Revision 1.35 2008-12-26 18:37:13 mw
- Aktualisierung auf Version 3.45
Revision 1.34 2008-01-01 20:59:24 mw
Mehr Informationen über die CVS-List Mailingliste