From:	MX%"MadGoat-Bugs@MadGoat.com",MX%"plugge@BIV7.SR.FH-MANNHEIM.DE"  2-APR-1997 08:25:38.84
To:	MX%"MadGoat-Bugs@MadGoat.com"
CC:	MX%"plugge@biv7.sr.fh-mannheim.de"
Subj:	enhancement for mgsd V2.0-1  [24-MAR-1997]

Return-Path: <goathunter@MadGoat.COM>
Received: from alpha.wku.edu (161.6.18.4) by GOAT.PROCESS.COM (MX T4.4 Alpha)
          with SMTP; Wed, 2 Apr 1997 08:25:34 -0600
Received: by ALPHA.WKU.EDU (MX V4.3 Alpha) id 36; Wed, 02 Apr 1997 08:26:03 EST
Sender: goathunter@MadGoat.COM
Message-ID: <009B22C7.F6B8E0C6.36@ALPHA.WKU.EDU>
Return-Path: <owner-madgoat-bugs@ALPHA.WKU.EDU>
X-ListName: MadGoat Software Bug Reports <MadGoat-Bugs@ALPHA.WKU.EDU>
Warnings-To: <>
Errors-To: owner-madgoat-bugs@ALPHA.WKU.EDU
Sender: owner-madgoat-bugs@ALPHA.WKU.EDU
Date: Wed, 02 Apr 1997 15:58:20 EST
From: Michel <plugge@biv7.sr.fh-mannheim.de>
Reply-To: MadGoat-Bugs@MadGoat.com, plugge@BIV7.SR.FH-MANNHEIM.DE
To: MadGoat-Bugs@MadGoat.com
CC: plugge@biv7.sr.fh-mannheim.de
Subject: enhancement for mgsd V2.0-1  [24-MAR-1997]

Hunter,
today I hacked the sd a little. I introduced a new command (sd ..) to go up 
one directory level (same as in dos/Unix), and another little enhancement that 
I used frequently in my previous cd.com: I use often the fileview to mark a 
file and paste the file into the terminal winow as argument for a cd command. 
Example:

	cd BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.RNH

I modified the code so that only the directory part of the specification is 
used (if in an argument a `]' is found, the rest is ignored.

I append the diff file to this mail.

Best regards

Michel

************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;47
  155       char *ptr, *ptr1, *cmd;
  156       unsigned long len, len1, skip_rangle;
  157   
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  155       char *ptr, *cmd;
  156       unsigned long len, skip_rangle;
  157   
************
************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;47
  272         (*ptr == '.' && ptr==cmd+1 && *cmd!='.') || 
  273         (*ptr == '.' && ptr!=cmd+1) ||
  274         (*ptr == '~') ||
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  272         (*ptr == '.') ||
  273         (*ptr == '~') ||
************
************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;47
  277         if(*cmd == '.' && *ptr == '.' && ptr==cmd+1){   /* special case: sd.. -> go up one dir */
  278             *++cmd='^';   /* this is a bad hack, but it works... */
  279             ptr++;
  280             break;
  281         }
  282         len++;
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  276         len++;
************
************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;47
  294         /* check, if the given argument contains a file name; if yes, use only 
  295          * the directory part.
  296          */
  297      for(ptr1=cmd,len1=1;*ptr1!=']' && ptr1<cmd+len;ptr1++,len1++);
  298      if(*ptr1==']' && *(ptr1+1)!=0){
  299          for(ptr1=cmd+len;*ptr1;ptr1++,len++,p_len--);
  300          p_addr = ++ptr1;
  301       }
  302   
  303   #ifdef DEBUG
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  288   #ifdef DEBUG
************
************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;47
  317          case '.' : { if(len1<len)down (cmd, len1); else down (cmd, len); break;}
  318          case '%' : { update_stack (&original_default, 1); break;}
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  302          case '.' : { down (cmd, len); break;}
  303          case '%' : { update_stack (&original_default, 1); break;}
************

Number of difference sections found: 5
Number of difference records found: 19

DIFFERENCES /IGNORE=()/MERGED=1/OUTPUT=BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD_C.DIFF;2-
    BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;47-
    BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2


-------------------------------------------------------------------------
Michael Plugge              _      Fachhochschule Mannheim
Institute for Statistics   / \     Hochschule fuer Technik und Gestaltung
and Image Processing      /   \    Email:  m.plugge@fh-mannheim.de
Windeckstr. 110          /     \   Tel:    0621 2926208
68163 Mannheim          /       \                  --o        /\
Germany                /         --              - \<,-      /  \/\
pgp key available     /            \            (_)/ (_)    /      \/\
-------------------------------------------------------------------------

From:	MX%"plugge@biv7.sr.fh-mannheim.de"  "Michel"  1-MAR-1998 02:06:36.62
To:	MX%"goathunter@MadGoat.COM"
CC:	MX%"plugge@biv7.sr.fh-mannheim.de"
Subj:	RE: enhancement for mgsd V2.0-1  [24-MAR-1997]

Return-Path: <goathunter@MadGoat.com>
Received: from alpha.wku.edu (161.6.18.4) by goat.process.com (MX V5.0) with
          ESMTP; Sun, 1 Mar 1998 02:06:33 -0600
Received: by ALPHA.WKU.EDU (MX V5.0) id 1; Sun, 1 Mar 1998 02:06:27 -0600
Sender: goathunter@MadGoat.com
Message-ID: <009C283F.1B577D87.1@ALPHA.WKU.EDU>
Return-Path: <plugge@biv7.sr.fht-mannheim.de>
Received: from axp3.sr.fh-mannheim.de by alpha.wku.edu (MX V4.3 Alpha) with
          SMTP; Thu, 03 Apr 1997 02:20:26 EST
Received: by biv7.sr.fh-mannheim.de (MX V4.1 AXP) id 1;
          Thu, 03 Apr 1997 10:19:25 EST
Sender: plugge@biv7.sr.fht-mannheim.de
Date: Thu, 03 Apr 1997 10:19:21 EST
From: Michel <plugge@biv7.sr.fh-mannheim.de>
To: goathunter@MadGoat.COM
CC: plugge@biv7.sr.fh-mannheim.de
Subject: RE: enhancement for mgsd V2.0-1  [24-MAR-1997]

Hunter,
> Thanks!  Let me know if you have any other suggestions or if you find
> any problems.

yesterday I was too much in hurry, and introduced an error in the new test. 
The test for ..directory should be

	if(isalnum(*(ptr+1)) || *(ptr+1)=='_'|| *(ptr+1)=='$')break;

instead of

	if(isalnum(*(ptr+1)) || *(ptr+1)!='_')break;

(test must be for *eqality* of '_', otherwise the code fails for sd ..; also
I forgot the case of a directory name starting with '$')

I have added another special case: for sd ... the grouping is sd . .. to
change the default to the [user] directory. The other grouping sd .. . would
be without real sense, because it is the same as sd . I append the part of the
diff file again to this mail.

Best regards

Michel

************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;71
  273         (*ptr == '~') ||
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  272         (*ptr == '.') ||
  273         (*ptr == '~') ||
************
************
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]XSD.C;71
  276         if(*ptr =='.'){
  277             if(ptr!=cmd+1)break;   /* found directory name */
  278                /* now `Hunter's special': sd ..subdir */
  279             if(isalnum(*(ptr+1)) || *(ptr+1)=='$' || *(ptr+1)=='_')break;
  280                /* special case: sd.. -> go up one dir */
  281             if(*(ptr-1)=='.'){
  282                  /* first handle another special case: sd ... -> sd . .. */
  283                if(*(ptr+1)=='.')break;   
  284                *++cmd='^';   /* this is a bad hack, but it works... */
  285                ptr++;
  286                break;
  287             }
  288         }
  289         len++;
******
File BIV9$DKA300:[USER.VAX.MGSD.SOURCE]SD.C;2
  276         len++;
************



-------------------------------------------------------------------------
Michael Plugge              _      Fachhochschule Mannheim
Institute for Statistics   / \     Hochschule fuer Technik und Gestaltung
and Image Processing      /   \    Email:  m.plugge@fh-mannheim.de
Windeckstr. 110          /     \   Tel:    0621 2926208
68163 Mannheim          /       \                  --o        /\
Germany                /         --              - \<,-      /  \/\
pgp key available     /            \            (_)/ (_)    /      \/\
-------------------------------------------------------------------------