Topic: compdir (1 of 4), Read 50 times
Conf: VEDIT Macro Language Support
From: Fritz Heberlein
Date: Saturday, July 08, 2000 02:44 PM

I run the compdir macro from my user menu using the following lines:

getinput(10,"first directory? ",nocr+statline)
getinput(11,"second directory? ", nocr+statline)
sys("compdir |@(10) |@(11) ")

Could i modify this macro so that there would be a choice
between (a) comparison of two directories x and y (the present solution), and (b) comparison of the *current* directory to an other one?


BTW, the intro to compdir.vdm says
"To run: COMPDIR dir1 dir2 or COMPDIR dir1 (dir2 = current directory)",
but if I try "compdir dir1" it compares dir1 to c:\vedit and not to my current directory.


Regards,
Fritz

 


Topic: compdir (2 of 4), Read 52 times
Conf: VEDIT Macro Language Support
From: Scott Lambert
Date: Sunday, July 09, 2000 10:18 AM

On 7/8/2000 2:44:00 PM, Fritz Heberlein wrote:
>I run the compdir macro from
>my user menu using the
>following lines:
>
>getinput(10,"first directory?
>",nocr+statline)
>getinput(11,"second directory?
>", nocr+statline)
>sys("compdir |@(10) |@(11) ")
>

You are using sys instead of call_file, so you must be running the batch file instead of the macro directly. Perhaps there is a cd\vedit in the batch file that causes it to default to c:\vedit. I for some reason have lost the batch file that runs compdir, so I can't check this on my system.

As to choice, if you want to compare dir1 to current, just press enter when asked for second directory. It seems to me that either the batch file, or the macro would be written so it used the current dir as a default in case one of the two dirs was missing from the input line.

The Problem I have with compdir is it chokes on really large directories. Filenames are not being assigned to it's working buffers, so it can't auto buffer, and generates the Out of Memory error.

Scott

 


Topic: Re: compdir (4 of 4), Read 52 times
Conf: VEDIT Macro Language Support
From: Ted Green
Date: Monday, July 10, 2000 12:36 PM

At 11:32 AM 7/9/2000 -0400, you wrote:
>The Problem I have with compdir is it chokes on really large directories. Filenames are not being assigned to it's working buffers, so it can't auto buffer, and generates the Out of Memory error.

Sorry about that oversight. We use COMPDIR every day, but don't have directories with more than a few hundred files. I'll add it to the bug list, but its a low priority now. The real goal is to make compdir work without having to shell out to the "DIR" command. This will require some new macro commands to get a file's time, date and size parameters.

Ted.

 


Topic: Re: compdir (3 of 4), Read 47 times
Conf: VEDIT Macro Language Support
From: Ted Green
Date: Monday, July 10, 2000 12:30 PM

At 09:41 AM 7/9/2000 -0400, you wrote:
>getinput(10,"first directory? ",nocr+statline)
>getinput(11,"second directory? ", nocr+statline)
>sys("compdir |@(10) |@(11) ")

Compdir is designed to be run from the COMPDIR.BAT file. We hope to integrate it better into VEDIT soon. I never would have guessed that it could even be run from a Sys() command. But if it works, you might try changing the first line to:

getinput(10,"first directory? ",CURDIR,nocr+statline)

This will make the first prompt default to the current directory.

Ted.